├── website ├── .eslintignore ├── modules │ ├── logo.png │ ├── basename.js │ ├── Theme.js │ ├── index.js │ ├── components │ │ ├── SmallScreen.js │ │ ├── Loading.js │ │ ├── Bundle.js │ │ ├── Home │ │ │ ├── index.js │ │ │ └── Video.js │ │ ├── MarkdownViewer.js │ │ ├── SourceViewer.js │ │ ├── App.js │ │ ├── Logo.js │ │ ├── SandboxExample.js │ │ ├── DelegateMarkdownLinks.js │ │ ├── API.js │ │ ├── Guide.js │ │ ├── Example.js │ │ ├── APISmall.js │ │ ├── Footer.js │ │ └── Environment.js │ ├── .babelrc │ ├── LoadServiceWorker.js │ ├── utils │ │ └── subscribeToMailingList.js │ └── docs │ │ └── Core.js ├── static │ ├── favicon.ico │ ├── favicon-16x16.png │ ├── favicon-32x32.png │ ├── react-square.png │ ├── apple-touch-icon.png │ ├── mstile-150x150.png │ ├── android-chrome-144x144.png │ ├── browserconfig.xml │ ├── manifest.json │ └── safari-pinned-tab.svg ├── .eslintrc ├── webpack │ └── prismjs-loader.js └── index.html.ejs ├── .prettierrc ├── packages ├── react-router │ ├── docs │ │ ├── .prettierrc │ │ ├── guides │ │ │ ├── quick-start.md │ │ │ ├── static-routes.md │ │ │ ├── redux.md │ │ │ └── Installation.md │ │ └── api │ │ │ ├── generatePath.md │ │ │ ├── Prompt.md │ │ │ ├── matchPath.md │ │ │ ├── Router.md │ │ │ └── MemoryRouter.md │ ├── jest.config.js │ ├── modules │ │ ├── .eslintrc │ │ ├── __tests__ │ │ │ ├── .eslintrc │ │ │ ├── utils │ │ │ │ ├── waitForRedirects.js │ │ │ │ └── renderStrict.js │ │ │ ├── MemoryRouter-test.js │ │ │ ├── useHistory-test.js │ │ │ ├── useRouteMatch-test.js │ │ │ ├── useLocation-test.js │ │ │ ├── SwitchMount-test.js │ │ │ ├── Router-test.js │ │ │ ├── Route-context-test.js │ │ │ ├── Prompt-test.js │ │ │ ├── integration-test.js │ │ │ ├── Router-context-test.js │ │ │ └── generatePath-test.js │ │ ├── RouterContext.js │ │ ├── Lifecycle.js │ │ ├── generatePath.js │ │ ├── MemoryRouter.js │ │ ├── withRouter.js │ │ ├── hooks.js │ │ ├── Prompt.js │ │ ├── index.js │ │ ├── matchPath.js │ │ └── Redirect.js │ ├── Prompt.js │ ├── Route.js │ ├── Router.js │ ├── Switch.js │ ├── Redirect.js │ ├── matchPath.js │ ├── withRouter.js │ ├── MemoryRouter.js │ ├── StaticRouter.js │ ├── generatePath.js │ ├── .eslintrc │ ├── es │ │ ├── Route.js │ │ ├── Prompt.js │ │ ├── Router.js │ │ ├── Switch.js │ │ ├── Redirect.js │ │ ├── matchPath.js │ │ ├── withRouter.js │ │ ├── MemoryRouter.js │ │ ├── StaticRouter.js │ │ ├── generatePath.js │ │ └── warnAboutDeprecatedESMImport.js │ ├── index.js │ ├── warnAboutDeprecatedCJSRequire.js │ ├── README.md │ └── package.json ├── react-router-dom │ ├── docs │ │ ├── .prettierrc │ │ └── api │ │ │ ├── Route.md │ │ │ ├── Prompt.md │ │ │ ├── Router.md │ │ │ ├── Switch.md │ │ │ ├── matchPath.md │ │ │ ├── Redirect.md │ │ │ ├── withRouter.md │ │ │ ├── MemoryRouter.md │ │ │ ├── StaticRouter.md │ │ │ ├── BrowserRouter.md │ │ │ └── HashRouter.md │ ├── examples │ │ ├── .prettierrc │ │ ├── Animation │ │ │ └── styles.css │ │ ├── URLParams.js │ │ ├── CustomLink.js │ │ ├── QueryParams.js │ │ ├── NoMatch.js │ │ ├── PreventingTransitions.js │ │ ├── Basic.js │ │ ├── StaticRouter.js │ │ └── Recursive.js │ ├── jest.config.js │ ├── modules │ │ ├── .eslintrc │ │ ├── __tests__ │ │ │ ├── .eslintrc │ │ │ ├── utils │ │ │ │ ├── StrictMode.js │ │ │ │ └── renderStrict.js │ │ │ ├── HashRouter-test.js │ │ │ └── BrowserRouter-test.js │ │ ├── utils │ │ │ └── locationUtils.js │ │ ├── index.js │ │ ├── HashRouter.js │ │ └── BrowserRouter.js │ ├── Link.js │ ├── Prompt.js │ ├── Route.js │ ├── Router.js │ ├── Switch.js │ ├── NavLink.js │ ├── Redirect.js │ ├── matchPath.js │ ├── HashRouter.js │ ├── withRouter.js │ ├── BrowserRouter.js │ ├── MemoryRouter.js │ ├── StaticRouter.js │ ├── generatePath.js │ ├── .eslintrc │ ├── es │ │ ├── Link.js │ │ ├── Prompt.js │ │ ├── Route.js │ │ ├── Router.js │ │ ├── Switch.js │ │ ├── NavLink.js │ │ ├── Redirect.js │ │ ├── matchPath.js │ │ ├── HashRouter.js │ │ ├── withRouter.js │ │ ├── MemoryRouter.js │ │ ├── StaticRouter.js │ │ ├── generatePath.js │ │ ├── BrowserRouter.js │ │ └── warnAboutDeprecatedESMImport.js │ ├── index.js │ ├── warnAboutDeprecatedCJSRequire.js │ ├── README.md │ └── package.json ├── react-router-native │ ├── .gitattributes │ ├── docs │ │ ├── .prettierrc │ │ ├── api │ │ │ ├── Route.md │ │ │ ├── Prompt.md │ │ │ ├── Router.md │ │ │ ├── Switch.md │ │ │ ├── Redirect.md │ │ │ ├── matchPath.md │ │ │ ├── withRouter.md │ │ │ ├── MemoryRouter.md │ │ │ ├── StaticRouter.md │ │ │ ├── DeepLinking.md │ │ │ ├── BackButton.md │ │ │ ├── NativeRouter.md │ │ │ └── Link.md │ │ └── guides │ │ │ └── deep-linking.md │ ├── __tests__ │ │ ├── .eslintrc │ │ ├── index.ios.js │ │ └── index.android.js │ ├── .eslintrc │ ├── android │ │ ├── settings.gradle │ │ ├── app │ │ │ ├── src │ │ │ │ └── main │ │ │ │ │ ├── res │ │ │ │ │ ├── values │ │ │ │ │ │ ├── strings.xml │ │ │ │ │ │ └── styles.xml │ │ │ │ │ ├── mipmap-hdpi │ │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ ├── mipmap-mdpi │ │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ ├── mipmap-xhdpi │ │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ └── mipmap-xxhdpi │ │ │ │ │ │ └── ic_launcher.png │ │ │ │ │ ├── java │ │ │ │ │ └── com │ │ │ │ │ │ └── reactrouternative │ │ │ │ │ │ ├── MainActivity.java │ │ │ │ │ │ └── MainApplication.java │ │ │ │ │ └── AndroidManifest.xml │ │ │ └── BUCK │ │ ├── keystores │ │ │ ├── debug.keystore.properties │ │ │ └── BUCK │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── build.gradle │ │ └── gradle.properties │ ├── ios │ │ ├── main.jsbundle.meta │ │ ├── ReactRouterNative │ │ │ ├── AppDelegate.h │ │ │ ├── main.m │ │ │ ├── Images.xcassets │ │ │ │ └── AppIcon.appiconset │ │ │ │ │ └── Contents.json │ │ │ ├── AppDelegate.m │ │ │ └── Info.plist │ │ └── ReactRouterNativeTests │ │ │ └── Info.plist │ ├── .buckconfig │ ├── index.ios.js │ ├── main.js │ ├── package.json │ ├── .gitignore │ ├── README.md │ ├── BackButton.js │ ├── NativeRouter.js │ ├── DeepLinking.js │ ├── rn-cli.config.js │ ├── jest.config.js │ ├── experimental │ │ └── TabRoutes.js │ ├── Link.js │ ├── examples │ │ ├── Recursive.js │ │ ├── Params.js │ │ ├── BoringExample.js │ │ ├── CustomLink.js │ │ └── NoMatch.js │ ├── .flowconfig │ └── index.android.js └── react-router-config │ ├── jest.config.js │ ├── modules │ ├── .eslintrc │ ├── __tests__ │ │ ├── .eslintrc │ │ └── utils │ │ │ ├── StrictMode.js │ │ │ ├── renderStrict.js │ │ │ └── renderToStringStrict.js │ ├── index.js │ ├── matchRoutes.js │ └── renderRoutes.js │ ├── .eslintrc │ ├── matchRoutes.js │ ├── renderRoutes.js │ ├── index.js │ ├── es │ ├── matchRoutes.js │ ├── renderRoutes.js │ └── warnAboutDeprecatedESMImport.js │ ├── warnAboutDeprecatedCJSRequire.js │ └── package.json ├── .eslintignore ├── .eslintrc ├── website-deploy-key.enc ├── .huskyrc.js ├── .browserslistrc ├── CHANGELOG.md ├── .gitignore ├── scripts ├── start.js ├── build.js └── deploy-website.sh ├── .prettierignore ├── lerna.json ├── .github ├── ISSUE_TEMPLATE │ ├── Custom.md │ └── Bug_report.md ├── FUNDING.yml ├── lock.yml ├── stale.yml └── support.yml ├── babel.config.js ├── jest-preset.js ├── LICENSE ├── package.json └── .travis.yml /website/.eslintignore: -------------------------------------------------------------------------------- 1 | /build 2 | /webpack 3 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "singleQuote": false 3 | } 4 | -------------------------------------------------------------------------------- /packages/react-router/docs/.prettierrc: -------------------------------------------------------------------------------- 1 | printWidth: 70 2 | -------------------------------------------------------------------------------- /packages/react-router-dom/docs/.prettierrc: -------------------------------------------------------------------------------- 1 | printWidth: 70 2 | -------------------------------------------------------------------------------- /packages/react-router-native/.gitattributes: -------------------------------------------------------------------------------- 1 | *.pbxproj -text 2 | -------------------------------------------------------------------------------- /packages/react-router-dom/examples/.prettierrc: -------------------------------------------------------------------------------- 1 | printWidth: 70 2 | -------------------------------------------------------------------------------- /packages/react-router-native/docs/.prettierrc: -------------------------------------------------------------------------------- 1 | printWidth: 70 2 | -------------------------------------------------------------------------------- /packages/react-router-native/__tests__/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | env: { jest: true } 3 | } 4 | -------------------------------------------------------------------------------- /packages/react-router/jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { preset: "../../jest-preset.js" }; 2 | -------------------------------------------------------------------------------- /packages/react-router-dom/jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { preset: "../../jest-preset.js" }; 2 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | /packages/*/cjs/*.js 2 | /packages/*/esm/*.js 3 | /packages/*/umd/*.js 4 | /website 5 | -------------------------------------------------------------------------------- /packages/react-router-config/jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { preset: "../../jest-preset.js" }; 2 | -------------------------------------------------------------------------------- /packages/react-router-native/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "globals": { 3 | "__DEV__": true 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["react-app"], 3 | "rules": { 4 | "import/first": 0 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /website-deploy-key.enc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/website-deploy-key.enc -------------------------------------------------------------------------------- /.huskyrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | hooks: { 3 | "pre-commit": "pretty-quick --staged" 4 | } 5 | }; 6 | -------------------------------------------------------------------------------- /website/modules/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/website/modules/logo.png -------------------------------------------------------------------------------- /website/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/website/static/favicon.ico -------------------------------------------------------------------------------- /packages/react-router-native/android/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'ReactRouterNative' 2 | 3 | include ':app' 4 | -------------------------------------------------------------------------------- /website/static/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/website/static/favicon-16x16.png -------------------------------------------------------------------------------- /website/static/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/website/static/favicon-32x32.png -------------------------------------------------------------------------------- /website/static/react-square.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/website/static/react-square.png -------------------------------------------------------------------------------- /.browserslistrc: -------------------------------------------------------------------------------- 1 | # Browsers we support 2 | last 2 versions 3 | > 0.5% 4 | ie >= 10 5 | safari >= 9 6 | firefox >= 43 7 | iOS >= 8 8 | -------------------------------------------------------------------------------- /website/static/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/website/static/apple-touch-icon.png -------------------------------------------------------------------------------- /website/static/mstile-150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/website/static/mstile-150x150.png -------------------------------------------------------------------------------- /packages/react-router/modules/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | env: { 3 | commonjs: false 4 | }, 5 | rules: { 6 | strict: 2 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /packages/react-router-dom/docs/api/Route.md: -------------------------------------------------------------------------------- 1 | # <Route> 2 | 3 | Re-exported from core [`Route`](../../../react-router/docs/api/Route.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/modules/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | env: { 3 | commonjs: false 4 | }, 5 | rules: { 6 | strict: 2 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /packages/react-router-config/modules/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | env: { 3 | commonjs: false 4 | }, 5 | rules: { 6 | strict: 2 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /packages/react-router-dom/docs/api/Prompt.md: -------------------------------------------------------------------------------- 1 | # <Prompt> 2 | 3 | Re-exported from core [`Prompt`](../../../react-router/docs/api/Prompt.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/docs/api/Router.md: -------------------------------------------------------------------------------- 1 | # <Router> 2 | 3 | Re-exported from core [`Router`](../../../react-router/docs/api/Router.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/docs/api/Switch.md: -------------------------------------------------------------------------------- 1 | # <Switch> 2 | 3 | Re-exported from core [`Switch`](../../../react-router/docs/api/Switch.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-native/docs/api/Route.md: -------------------------------------------------------------------------------- 1 | # <Route> 2 | 3 | Re-exported from core [`Route`](../../../react-router/docs/api/Route.md) 4 | -------------------------------------------------------------------------------- /website/static/android-chrome-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/website/static/android-chrome-144x144.png -------------------------------------------------------------------------------- /packages/react-router-dom/docs/api/matchPath.md: -------------------------------------------------------------------------------- 1 | # matchPath 2 | 3 | Re-exported from core [`matchPath`](../../../react-router/docs/api/matchPath.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/modules/__tests__/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | env: { 3 | jest: true 4 | }, 5 | rules: { 6 | "no-console": 0 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /packages/react-router-native/docs/api/Prompt.md: -------------------------------------------------------------------------------- 1 | # <Prompt> 2 | 3 | Re-exported from core [`Prompt`](../../../react-router/docs/api/Prompt.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-native/docs/api/Router.md: -------------------------------------------------------------------------------- 1 | # <Router> 2 | 3 | Re-exported from core [`Router`](../../../react-router/docs/api/Router.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-native/docs/api/Switch.md: -------------------------------------------------------------------------------- 1 | # <Switch> 2 | 3 | Re-exported from core [`Switch`](../../../react-router/docs/api/Switch.md) 4 | -------------------------------------------------------------------------------- /packages/react-router/modules/__tests__/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | env: { 3 | jest: true 4 | }, 5 | rules: { 6 | "no-console": 0 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /packages/react-router-config/modules/__tests__/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | env: { 3 | jest: true 4 | }, 5 | rules: { 6 | "no-console": 0 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /packages/react-router-dom/Link.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("Link"); 3 | module.exports = require("./index.js").Link; 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/docs/api/Redirect.md: -------------------------------------------------------------------------------- 1 | # <Redirect> 2 | 3 | Re-exported from core [`Redirect`](../../../react-router/docs/api/Redirect.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/docs/api/withRouter.md: -------------------------------------------------------------------------------- 1 | # withRouter 2 | 3 | Re-exported from core [`withRouter`](../../../react-router/docs/api/withRouter.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-native/docs/api/Redirect.md: -------------------------------------------------------------------------------- 1 | # <Redirect> 2 | 3 | Re-exported from core [`Redirect`](../../../react-router/docs/api/Redirect.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-native/docs/api/matchPath.md: -------------------------------------------------------------------------------- 1 | # matchPath 2 | 3 | Re-exported from core [`matchPath`](../../../react-router/docs/api/matchPath.md) 4 | -------------------------------------------------------------------------------- /packages/react-router/Prompt.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("Prompt"); 3 | module.exports = require("./index.js").Prompt; 4 | -------------------------------------------------------------------------------- /packages/react-router/Route.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("Route"); 3 | module.exports = require("./index.js").Route; 4 | -------------------------------------------------------------------------------- /packages/react-router/Router.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("Router"); 3 | module.exports = require("./index.js").Router; 4 | -------------------------------------------------------------------------------- /packages/react-router/Switch.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("Switch"); 3 | module.exports = require("./index.js").Switch; 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/Prompt.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("Prompt"); 3 | module.exports = require("./index.js").Prompt; 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/Route.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("Route"); 3 | module.exports = require("./index.js").Route; 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/Router.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("Router"); 3 | module.exports = require("./index.js").Router; 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/Switch.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("Switch"); 3 | module.exports = require("./index.js").Switch; 4 | -------------------------------------------------------------------------------- /packages/react-router-native/docs/api/withRouter.md: -------------------------------------------------------------------------------- 1 | # withRouter 2 | 3 | Re-exported from core [`withRouter`](../../../react-router/docs/api/withRouter.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/NavLink.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("NavLink"); 3 | module.exports = require("./index.js").NavLink; 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/Redirect.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("Redirect"); 3 | module.exports = require("./index.js").Redirect; 4 | -------------------------------------------------------------------------------- /packages/react-router-native/android/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | ReactRouterNative 3 | 4 | -------------------------------------------------------------------------------- /packages/react-router-native/ios/main.jsbundle.meta: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/packages/react-router-native/ios/main.jsbundle.meta -------------------------------------------------------------------------------- /packages/react-router/Redirect.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("Redirect"); 3 | module.exports = require("./index.js").Redirect; 4 | -------------------------------------------------------------------------------- /packages/react-router/matchPath.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("matchPath"); 3 | module.exports = require("./index.js").matchPath; 4 | -------------------------------------------------------------------------------- /website/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "react-app", 3 | "rules": { 4 | "import/no-webpack-loader-syntax": "off", 5 | "react/prop-types": "off" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /packages/react-router-config/modules/index.js: -------------------------------------------------------------------------------- 1 | export { default as matchRoutes } from "./matchRoutes.js"; 2 | export { default as renderRoutes } from "./renderRoutes.js"; 3 | -------------------------------------------------------------------------------- /packages/react-router-dom/docs/api/MemoryRouter.md: -------------------------------------------------------------------------------- 1 | # <MemoryRouter> 2 | 3 | Re-exported from core [`MemoryRouter`](../../../react-router/docs/api/MemoryRouter.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/docs/api/StaticRouter.md: -------------------------------------------------------------------------------- 1 | # <StaticRouter> 2 | 3 | Re-exported from core [`StaticRouter`](../../../react-router/docs/api/StaticRouter.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/matchPath.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("matchPath"); 3 | module.exports = require("./index.js").matchPath; 4 | -------------------------------------------------------------------------------- /packages/react-router-native/docs/api/MemoryRouter.md: -------------------------------------------------------------------------------- 1 | # <MemoryRouter> 2 | 3 | Re-exported from core [`MemoryRouter`](../../../react-router/docs/api/MemoryRouter.md) 4 | -------------------------------------------------------------------------------- /packages/react-router-native/docs/api/StaticRouter.md: -------------------------------------------------------------------------------- 1 | # <StaticRouter> 2 | 3 | Re-exported from core [`StaticRouter`](../../../react-router/docs/api/StaticRouter.md) 4 | -------------------------------------------------------------------------------- /packages/react-router/withRouter.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("withRouter"); 3 | module.exports = require("./index.js").withRouter; 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/HashRouter.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("HashRouter"); 3 | module.exports = require("./index.js").HashRouter; 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/withRouter.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("withRouter"); 3 | module.exports = require("./index.js").withRouter; 4 | -------------------------------------------------------------------------------- /packages/react-router-native/.buckconfig: -------------------------------------------------------------------------------- 1 | 2 | [android] 3 | target = Google Inc.:Google APIs:23 4 | 5 | [maven_repositories] 6 | central = https://repo1.maven.org/maven2 7 | -------------------------------------------------------------------------------- /packages/react-router/MemoryRouter.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("MemoryRouter"); 3 | module.exports = require("./index.js").MemoryRouter; 4 | -------------------------------------------------------------------------------- /packages/react-router/StaticRouter.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("StaticRouter"); 3 | module.exports = require("./index.js").StaticRouter; 4 | -------------------------------------------------------------------------------- /packages/react-router/generatePath.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("generatePath"); 3 | module.exports = require("./index.js").generatePath; 4 | -------------------------------------------------------------------------------- /packages/react-router-config/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "commonjs": true 5 | }, 6 | "rules": { 7 | "strict": 0 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-router-config/matchRoutes.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire.js")("matchRoutes"); 3 | module.exports = require("./index.js").matchRoutes; 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/BrowserRouter.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("BrowserRouter"); 3 | module.exports = require("./index.js").BrowserRouter; 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/MemoryRouter.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("MemoryRouter"); 3 | module.exports = require("./index.js").MemoryRouter; 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/StaticRouter.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("StaticRouter"); 3 | module.exports = require("./index.js").StaticRouter; 4 | -------------------------------------------------------------------------------- /packages/react-router-dom/generatePath.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire")("generatePath"); 3 | module.exports = require("./index.js").generatePath; 4 | -------------------------------------------------------------------------------- /packages/react-router-config/renderRoutes.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | require("./warnAboutDeprecatedCJSRequire.js")("renderRoutes"); 3 | module.exports = require("./index.js").renderRoutes; 4 | -------------------------------------------------------------------------------- /packages/react-router-native/android/keystores/debug.keystore.properties: -------------------------------------------------------------------------------- 1 | key.store=debug.keystore 2 | key.alias=androiddebugkey 3 | key.store.password=android 4 | key.alias.password=android 5 | -------------------------------------------------------------------------------- /packages/react-router-native/android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/packages/react-router-native/android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /packages/react-router-native/android/keystores/BUCK: -------------------------------------------------------------------------------- 1 | keystore( 2 | name = 'debug', 3 | store = 'debug.keystore', 4 | properties = 'debug.keystore.properties', 5 | visibility = [ 6 | 'PUBLIC', 7 | ], 8 | ) 9 | -------------------------------------------------------------------------------- /website/modules/basename.js: -------------------------------------------------------------------------------- 1 | const base = document.querySelector("base"); 2 | const baseHref = base ? base.getAttribute("href") : "/"; 3 | const basename = baseHref.replace(/\/$/, ""); 4 | 5 | export default basename; 6 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | 3 | This project adheres to [Semantic Versioning](http://semver.org/). 4 | Every release is documented on the Github [Releases](https://github.com/ReactTraining/react-router/releases) page. 5 | -------------------------------------------------------------------------------- /packages/react-router-native/android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/packages/react-router-native/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /packages/react-router-native/android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/packages/react-router-native/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /packages/react-router-native/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/packages/react-router-native/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /packages/react-router/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "commonjs": true 5 | }, 6 | "globals": { 7 | "__DEV__": true 8 | }, 9 | "rules": { 10 | "strict": 0 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /packages/react-router-dom/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "commonjs": true 5 | }, 6 | "globals": { 7 | "__DEV__": true 8 | }, 9 | "rules": { 10 | "strict": 0 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /packages/react-router-dom/examples/Animation/styles.css: -------------------------------------------------------------------------------- 1 | .fade-enter { 2 | opacity: 0; 3 | z-index: 1; 4 | } 5 | 6 | .fade-enter.fade-enter-active { 7 | opacity: 1; 8 | transition: opacity 250ms ease-in; 9 | } 10 | -------------------------------------------------------------------------------- /packages/react-router-native/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mattlangtree/react-router/master/packages/react-router-native/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | npm-debug.log 3 | lerna-debug.log 4 | 5 | /.changelog/ 6 | /packages/*/cjs/ 7 | /packages/*/esm/ 8 | /packages/*/umd/ 9 | /website/build/ 10 | 11 | /website-deploy-key 12 | /website-deploy-key.pub 13 | -------------------------------------------------------------------------------- /packages/react-router/es/Route.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("Route"); 3 | 4 | import { Route } from "../esm/react-router.js"; 5 | export default Route; 6 | -------------------------------------------------------------------------------- /packages/react-router/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | if (process.env.NODE_ENV === "production") { 4 | module.exports = require("./cjs/react-router.min.js"); 5 | } else { 6 | module.exports = require("./cjs/react-router.js"); 7 | } 8 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/Link.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("Link"); 3 | 4 | import { Link } from "../esm/react-router-dom.js"; 5 | export default Link; 6 | -------------------------------------------------------------------------------- /packages/react-router/es/Prompt.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("Prompt"); 3 | 4 | import { Prompt } from "../esm/react-router.js"; 5 | export default Prompt; 6 | -------------------------------------------------------------------------------- /packages/react-router/es/Router.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("Router"); 3 | 4 | import { Router } from "../esm/react-router.js"; 5 | export default Router; 6 | -------------------------------------------------------------------------------- /packages/react-router/es/Switch.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("Switch"); 3 | 4 | import { Switch } from "../esm/react-router.js"; 5 | export default Switch; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/Prompt.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("Prompt"); 3 | 4 | import { Prompt } from "../esm/react-router-dom.js"; 5 | export default Prompt; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/Route.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("Route"); 3 | 4 | import { Route } from "../esm/react-router-dom.js"; 5 | export default Route; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/Router.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("Router"); 3 | 4 | import { Router } from "../esm/react-router-dom.js"; 5 | export default Router; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/Switch.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("Switch"); 3 | 4 | import { Switch } from "../esm/react-router-dom.js"; 5 | export default Switch; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | if (process.env.NODE_ENV === "production") { 4 | module.exports = require("./cjs/react-router-dom.min.js"); 5 | } else { 6 | module.exports = require("./cjs/react-router-dom.js"); 7 | } 8 | -------------------------------------------------------------------------------- /packages/react-router/es/Redirect.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("Redirect"); 3 | 4 | import { Redirect } from "../esm/react-router.js"; 5 | export default Redirect; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/NavLink.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("NavLink"); 3 | 4 | import { NavLink } from "../esm/react-router-dom.js"; 5 | export default NavLink; 6 | -------------------------------------------------------------------------------- /packages/react-router/es/matchPath.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("matchPath"); 3 | 4 | import { matchPath } from "../esm/react-router.js"; 5 | export default matchPath; 6 | -------------------------------------------------------------------------------- /packages/react-router-config/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | if (process.env.NODE_ENV === "production") { 4 | module.exports = require("./cjs/react-router-config.min.js"); 5 | } else { 6 | module.exports = require("./cjs/react-router-config.js"); 7 | } 8 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/Redirect.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("Redirect"); 3 | 4 | import { Redirect } from "../esm/react-router-dom.js"; 5 | export default Redirect; 6 | -------------------------------------------------------------------------------- /packages/react-router/es/withRouter.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("withRouter"); 3 | 4 | import { withRouter } from "../esm/react-router.js"; 5 | export default withRouter; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/matchPath.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("matchPath"); 3 | 4 | import { matchPath } from "../esm/react-router-dom.js"; 5 | export default matchPath; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/HashRouter.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("HashRouter"); 3 | 4 | import { HashRouter } from "../esm/react-router-dom.js"; 5 | export default HashRouter; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/withRouter.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("withRouter"); 3 | 4 | import { withRouter } from "../esm/react-router-dom.js"; 5 | export default withRouter; 6 | -------------------------------------------------------------------------------- /packages/react-router/es/MemoryRouter.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("MemoryRouter"); 3 | 4 | import { MemoryRouter } from "../esm/react-router.js"; 5 | export default MemoryRouter; 6 | -------------------------------------------------------------------------------- /packages/react-router/es/StaticRouter.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("StaticRouter"); 3 | 4 | import { StaticRouter } from "../esm/react-router.js"; 5 | export default StaticRouter; 6 | -------------------------------------------------------------------------------- /packages/react-router/es/generatePath.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("generatePath"); 3 | 4 | import { generatePath } from "../esm/react-router.js"; 5 | export default generatePath; 6 | -------------------------------------------------------------------------------- /website/modules/Theme.js: -------------------------------------------------------------------------------- 1 | export const RED = "hsl(0, 78%, 60%)"; 2 | export const DARK_GRAY = "hsl(0, 0%, 14.5%)"; 3 | export const LIGHT_GRAY = "hsl(0, 0%, 32%)"; 4 | export const BRIGHT_GRAY = "hsl(0, 0%, 78%)"; 5 | export const SMALL_SCREEN = "(max-width: 600px)"; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/MemoryRouter.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("MemoryRouter"); 3 | 4 | import { MemoryRouter } from "../esm/react-router-dom.js"; 5 | export default MemoryRouter; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/StaticRouter.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("StaticRouter"); 3 | 4 | import { StaticRouter } from "../esm/react-router-dom.js"; 5 | export default StaticRouter; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/generatePath.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("generatePath"); 3 | 4 | import { generatePath } from "../esm/react-router-dom.js"; 5 | export default generatePath; 6 | -------------------------------------------------------------------------------- /website/modules/index.js: -------------------------------------------------------------------------------- 1 | import "./base.css"; 2 | 3 | import "babel-polyfill"; 4 | import React from "react"; 5 | import ReactDOM from "react-dom"; 6 | 7 | import App from "./components/App.js"; 8 | 9 | ReactDOM.render(, document.getElementById("app")); 10 | -------------------------------------------------------------------------------- /packages/react-router-config/es/matchRoutes.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("matchRoutes"); 3 | 4 | import { matchRoutes } from "../esm/react-router-config.js"; 5 | export default matchRoutes; 6 | -------------------------------------------------------------------------------- /packages/react-router-config/es/renderRoutes.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("renderRoutes"); 3 | 4 | import { renderRoutes } from "../esm/react-router-config.js"; 5 | export default renderRoutes; 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/es/BrowserRouter.js: -------------------------------------------------------------------------------- 1 | import warnAboutDeprecatedESMImport from "./warnAboutDeprecatedESMImport.js"; 2 | warnAboutDeprecatedESMImport("BrowserRouter"); 3 | 4 | import { BrowserRouter } from "../esm/react-router-dom.js"; 5 | export default BrowserRouter; 6 | -------------------------------------------------------------------------------- /packages/react-router-native/android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /packages/react-router-native/android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | zipStoreBase=GRADLE_USER_HOME 4 | zipStorePath=wrapper/dists 5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip 6 | -------------------------------------------------------------------------------- /website/modules/components/SmallScreen.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import Media from "react-media"; 3 | 4 | import { SMALL_SCREEN } from "../Theme.js"; 5 | 6 | export default function SmallScreen({ children }) { 7 | return ; 8 | } 9 | -------------------------------------------------------------------------------- /scripts/start.js: -------------------------------------------------------------------------------- 1 | const path = require("path"); 2 | const execSync = require("child_process").execSync; 3 | 4 | function exec(cmd) { 5 | execSync(cmd, { stdio: "inherit", env: process.env }); 6 | } 7 | 8 | process.chdir(path.resolve(__dirname, "../website")); 9 | exec("npm start"); 10 | -------------------------------------------------------------------------------- /packages/react-router-dom/modules/__tests__/utils/StrictMode.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | 3 | let StrictMode = function(props) { 4 | return props.children || null; 5 | }; 6 | 7 | if (React.StrictMode) { 8 | StrictMode = React.StrictMode; 9 | } 10 | 11 | export default StrictMode; 12 | -------------------------------------------------------------------------------- /packages/react-router/modules/__tests__/utils/waitForRedirects.js: -------------------------------------------------------------------------------- 1 | function waitForRedirects(callback) { 2 | // TODO: Hook into so we can know when 3 | // the redirect actually happens instead of guessing. 4 | setTimeout(callback, 100); 5 | } 6 | 7 | export default waitForRedirects; 8 | -------------------------------------------------------------------------------- /packages/react-router-config/modules/__tests__/utils/StrictMode.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | 3 | let StrictMode = function(props) { 4 | return props.children || null; 5 | }; 6 | 7 | if (React.StrictMode) { 8 | StrictMode = React.StrictMode; 9 | } 10 | 11 | export default StrictMode; 12 | -------------------------------------------------------------------------------- /website/static/browserconfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | #b91d47 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /packages/react-router-native/docs/guides/deep-linking.md: -------------------------------------------------------------------------------- 1 | # Deep Linking 2 | 3 | Before you can use `` you need to set it up in your native app configuration. Please refer to the [React Native Docs](https://facebook.github.io/react-native/docs/linking.html). 4 | 5 | We'll have a simpler guide here soon. 6 | -------------------------------------------------------------------------------- /packages/react-router-dom/modules/__tests__/utils/renderStrict.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom"; 3 | 4 | import StrictMode from "./StrictMode.js"; 5 | 6 | function renderStrict(element, node) { 7 | ReactDOM.render({element}, node); 8 | } 9 | 10 | export default renderStrict; 11 | -------------------------------------------------------------------------------- /packages/react-router-config/modules/__tests__/utils/renderStrict.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOM from "react-dom"; 3 | 4 | import StrictMode from "./StrictMode.js"; 5 | 6 | function renderStrict(element, node) { 7 | ReactDOM.render({element}, node); 8 | } 9 | 10 | export default renderStrict; 11 | -------------------------------------------------------------------------------- /packages/react-router-native/index.ios.js: -------------------------------------------------------------------------------- 1 | import { AppRegistry } from "react-native"; 2 | 3 | import ReactRouterNative from "./examples/BasicExample.js"; 4 | //import ReactRouterNative from './examples/ExperimentalExample' 5 | 6 | AppRegistry.registerComponent("ReactRouterNative", () => ReactRouterNative); 7 | 8 | export default ReactRouterNative; 9 | -------------------------------------------------------------------------------- /packages/react-router-native/__tests__/index.ios.js: -------------------------------------------------------------------------------- 1 | import "react-native"; 2 | import React from "react"; 3 | import Index from "../index.ios.js"; 4 | 5 | // Note: test renderer must be required after react-native. 6 | import renderer from "react-test-renderer"; 7 | 8 | it("renders correctly", () => { 9 | renderer.create(); 10 | }); 11 | -------------------------------------------------------------------------------- /website/modules/components/Loading.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { Block } from "jsxstyle"; 3 | 4 | export default function Loading() { 5 | return ( 6 | 14 | ); 15 | } 16 | -------------------------------------------------------------------------------- /website/static/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "react-router", 3 | "name": "React Router", 4 | "icons": [ 5 | { 6 | "src": "/android-chrome-144x144.png", 7 | "sizes": "144x144", 8 | "type": "image/png" 9 | } 10 | ], 11 | "theme_color": "#ffffff", 12 | "start_url": "./", 13 | "display": "standalone" 14 | } 15 | -------------------------------------------------------------------------------- /packages/react-router-native/__tests__/index.android.js: -------------------------------------------------------------------------------- 1 | import "react-native"; 2 | import React from "react"; 3 | import Index from "../index.android.js"; 4 | 5 | // Note: test renderer must be required after react-native. 6 | import renderer from "react-test-renderer"; 7 | 8 | it("renders correctly", () => { 9 | renderer.create(); 10 | }); 11 | -------------------------------------------------------------------------------- /website/modules/components/Bundle.js: -------------------------------------------------------------------------------- 1 | import { useState, useEffect } from "react"; 2 | 3 | export default function Bundle({ children, load }) { 4 | const [mod, setMod] = useState(); 5 | 6 | useEffect(() => { 7 | load(mod => { 8 | setMod(mod.default ? mod.default : mod); 9 | }); 10 | }, [load]); 11 | 12 | return children(mod); 13 | } 14 | -------------------------------------------------------------------------------- /website/modules/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | [ 4 | "@babel/env", 5 | { 6 | "loose": true 7 | } 8 | ], 9 | "@babel/react" 10 | ], 11 | "plugins": [ 12 | "dev-expression", 13 | [ 14 | "@babel/plugin-proposal-class-properties", 15 | { 16 | "loose": true 17 | } 18 | ] 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /packages/react-router-config/modules/__tests__/utils/renderToStringStrict.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import ReactDOMServer from "react-dom/server"; 3 | 4 | import StrictMode from "./StrictMode.js"; 5 | 6 | function renderToStringStrict(element) { 7 | return ReactDOMServer.renderToString({element}); 8 | } 9 | 10 | export default renderToStringStrict; 11 | -------------------------------------------------------------------------------- /website/modules/components/Home/index.js: -------------------------------------------------------------------------------- 1 | import React from "react"; 2 | import { Block } from "jsxstyle"; 3 | 4 | import Footer from "../Footer.js"; 5 | import Header from "./Header.js"; 6 | import Video from "./Video.js"; 7 | 8 | export default function() { 9 | return ( 10 | 11 |
12 |