diff --git a/.gitignore b/.gitignore index 9206e59c7..0650ca726 100644 --- a/.gitignore +++ b/.gitignore @@ -15,10 +15,10 @@ /log/*.log /tmp /public/assets -webpack-bundle.js -webpack-bundle.js.map +client-bundle.js +client-bundle.js.map .env -/node_modules +node_modules npm-debug.log # Ignore bundle dependencies diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 000000000..e3e67dfd8 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,3 @@ +v1.1 - Sunday, March 22, 2015 +------------------------------ +1. Changed /webpack directory to /client diff --git a/Procfile.dev b/Procfile.dev index a43a0a88d..29ce1d457 100644 --- a/Procfile.dev +++ b/Procfile.dev @@ -1,3 +1,3 @@ web: rails s -p 4000 -webpack: cd webpack && $(npm bin)/webpack -w --config webpack.rails.config.js -hot: cd webpack && node server.js +client: cd client && $(npm bin)/webpack -w --config webpack.rails.config.js +hot: cd client && node server.js diff --git a/README.md b/README.md index 8e2097693..f06204c43 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,8 @@ By Justin Gordon and the Rails On Maui Team, http://www.railsonmaui.com +- If you came to here from the blog article, this example project has evolved. See CHANGELOG.md for + what's changed. - Please email us at [justin@railsonmaui.com](mailto:justin@railsonmaui.com) if you have a ReactJs + Rails project. - Please file issues for problems and feature requests. @@ -64,7 +66,7 @@ See package.json and Gemfile for versions Setup node and run the node server with file `server.js`. ``` -cd webpack +cd client node server.js ``` @@ -85,11 +87,11 @@ Webpack ExtractTextPlugin can optionally be used to extract the CSS out of the JS bundle. We've chosen to let Rails handle CSS, SCSS, images, fonts. ``` -cd webpack +cd client $(npm bin)/webpack -w --config webpack.rails.config.js ``` -`webpack-bundle.js` is generated and saved to `app/assets/javascripts`. This is included in the +`client-bundle.js` is generated and saved to `app/assets/javascripts`. This is included in the Rails asset pipeline. Observe how the bundles are automatically re-generated whenever your JSX changes. @@ -155,7 +157,7 @@ customize the Bootstrap Sass variables. # Notes on Rails assets ## Javascript -The `webpack.rails.config.js` file generates webpack-bundle.js which is then included +The `webpack.rails.config.js` file generates client-bundle.js which is then included by the Rails asset pipeline. ## Sass and images @@ -232,5 +234,5 @@ shrinkwrap`. Special thanks to [JetBrains](https://www.jetbrains.com) for their great tools [RubyMine](https://www.jetbrains.com/ruby/) and [WebStorm](https://www.jetbrains.com/webstorm/). The developers of this project use RubyMine at the top level, mostly for Ruby work, and we use -WebStorm opened up to the `webpack` directory to focus on JSX and Sass files. +WebStorm opened up to the `client` directory to focus on JSX and Sass files. diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index 99bdec017..c8b418c35 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -17,5 +17,5 @@ // Important to import jquery_ujs before rails-bundle as that patches jquery xhr to use the authenticity token! -//= require webpack-bundle +//= require client-bundle //= require turbolinks diff --git a/app/assets/javascripts/comments.js.coffee b/app/assets/javascripts/comments.js.coffee deleted file mode 100644 index 24f83d18b..000000000 --- a/app/assets/javascripts/comments.js.coffee +++ /dev/null @@ -1,3 +0,0 @@ -# Place all the behaviors and hooks related to the matching controller here. -# All this logic will automatically be available in application.js. -# You can use CoffeeScript in this file: http://coffeescript.org/ diff --git a/app/assets/javascripts/pages.js.coffee b/app/assets/javascripts/pages.js.coffee deleted file mode 100644 index 24f83d18b..000000000 --- a/app/assets/javascripts/pages.js.coffee +++ /dev/null @@ -1,3 +0,0 @@ -# Place all the behaviors and hooks related to the matching controller here. -# All this logic will automatically be available in application.js. -# You can use CoffeeScript in this file: http://coffeescript.org/ diff --git a/app/assets/stylesheets/_bootstrap-custom.scss b/app/assets/stylesheets/_bootstrap-custom.scss index 4032d2eca..b987dca15 100644 --- a/app/assets/stylesheets/_bootstrap-custom.scss +++ b/app/assets/stylesheets/_bootstrap-custom.scss @@ -1,6 +1,6 @@ // Customizations - needs to be imported first! // The _bootstrap-variables-customization.scss file is located under -// webpack/assets/stylesheets, which has been added to the Rails asset +// client/assets/stylesheets, which has been added to the Rails asset // pipeline search path. See config/application.rb. @import "bootstrap-variables-customization"; diff --git a/app/assets/stylesheets/application.css.scss b/app/assets/stylesheets/application.css.scss index 9ff95f1dc..05c057045 100644 --- a/app/assets/stylesheets/application.css.scss +++ b/app/assets/stylesheets/application.css.scss @@ -2,7 +2,7 @@ // with Rails vs. the Webpack Dev Server $rails: true; -// Those scss files are located under webpack/assets/stylesheets, +// Those scss files are located under client/assets/stylesheets, // which has been added to the Rails asset pipeline search path. // See config/application.rb. @import "bootstrap-custom"; diff --git a/client/README.md b/client/README.md new file mode 100644 index 000000000..cb0a94b4e --- /dev/null +++ b/client/README.md @@ -0,0 +1,3 @@ +Please see parent directory README.md. + +(We may move client side specific README material here in the near future). diff --git a/webpack/assets/fonts b/client/assets/fonts similarity index 100% rename from webpack/assets/fonts rename to client/assets/fonts diff --git a/webpack/assets/images b/client/assets/images similarity index 100% rename from webpack/assets/images rename to client/assets/images diff --git a/webpack/assets/javascripts/CommentBox.jsx b/client/assets/javascripts/CommentBox.jsx similarity index 96% rename from webpack/assets/javascripts/CommentBox.jsx rename to client/assets/javascripts/CommentBox.jsx index e173d84c9..54e37bde4 100644 --- a/webpack/assets/javascripts/CommentBox.jsx +++ b/client/assets/javascripts/CommentBox.jsx @@ -5,12 +5,12 @@ var React = require('react/addons'); // the React Developer Tools: http://facebook.github.io/react/blog/2014/01/02/react-chrome-developer-tools.html // require("expose?React!react"); -var Input = require('react-bootstrap/Input'); -var Button = require('react-bootstrap/Button'); -var Row = require('react-bootstrap/Row'); -var Col = require('react-bootstrap/Col'); -var Nav = require('react-bootstrap/Nav') -var NavItem = require('react-bootstrap/NavItem') +var Input = require('react-bootstrap/lib/Input'); +var Button = require('react-bootstrap/lib/Button'); +var Row = require('react-bootstrap/lib/Row'); +var Col = require('react-bootstrap/lib/Col'); +var Nav = require('react-bootstrap/lib/Nav') +var NavItem = require('react-bootstrap/lib/NavItem') var marked = require("marked"); diff --git a/webpack/assets/javascripts/example.jsx b/client/assets/javascripts/example.jsx similarity index 100% rename from webpack/assets/javascripts/example.jsx rename to client/assets/javascripts/example.jsx diff --git a/webpack/assets/stylesheets/_app-styling-post-bootstrap-loading.scss b/client/assets/stylesheets/_app-styling-post-bootstrap-loading.scss similarity index 100% rename from webpack/assets/stylesheets/_app-styling-post-bootstrap-loading.scss rename to client/assets/stylesheets/_app-styling-post-bootstrap-loading.scss diff --git a/webpack/assets/stylesheets/_bootstrap-variables-customization.scss b/client/assets/stylesheets/_bootstrap-variables-customization.scss similarity index 100% rename from webpack/assets/stylesheets/_bootstrap-variables-customization.scss rename to client/assets/stylesheets/_bootstrap-variables-customization.scss diff --git a/webpack/assets/stylesheets/_test-sass-stylesheet-partial.scss b/client/assets/stylesheets/_test-sass-stylesheet-partial.scss similarity index 100% rename from webpack/assets/stylesheets/_test-sass-stylesheet-partial.scss rename to client/assets/stylesheets/_test-sass-stylesheet-partial.scss diff --git a/webpack/assets/stylesheets/test-sass-stylesheet.scss b/client/assets/stylesheets/test-sass-stylesheet.scss similarity index 100% rename from webpack/assets/stylesheets/test-sass-stylesheet.scss rename to client/assets/stylesheets/test-sass-stylesheet.scss diff --git a/webpack/assets/stylesheets/test-stylesheet.css b/client/assets/stylesheets/test-stylesheet.css similarity index 100% rename from webpack/assets/stylesheets/test-stylesheet.css rename to client/assets/stylesheets/test-stylesheet.css diff --git a/webpack/bootstrap-sass.config.js b/client/bootstrap-sass.config.js similarity index 100% rename from webpack/bootstrap-sass.config.js rename to client/bootstrap-sass.config.js diff --git a/webpack/index.html b/client/index.html similarity index 100% rename from webpack/index.html rename to client/index.html diff --git a/client/npm-shrinkwrap.json b/client/npm-shrinkwrap.json new file mode 100644 index 000000000..bfa592b9e --- /dev/null +++ b/client/npm-shrinkwrap.json @@ -0,0 +1,1210 @@ +{ + "name": "react-webpack-rails-tutorial", + "version": "1.1.0", + "dependencies": { + "babel-core": { + "version": "4.7.16", + "from": "babel-core@>=4.7.16 <5.0.0", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-4.7.16.tgz", + "dependencies": { + "acorn-babel": { + "version": "0.11.1-38", + "from": "acorn-babel@0.11.1-38", + "resolved": "https://registry.npmjs.org/acorn-babel/-/acorn-babel-0.11.1-38.tgz" + }, + "ast-types": { + "version": "0.7.0", + "from": "ast-types@>=0.7.0 <0.8.0", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.7.0.tgz" + }, + "chalk": { + "version": "1.0.0", + "from": "chalk@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.0.0.tgz", + "dependencies": { + "ansi-styles": { + "version": "2.0.1", + "from": "ansi-styles@>=2.0.1 <3.0.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.0.1.tgz" + }, + "escape-string-regexp": { + "version": "1.0.3", + "from": "escape-string-regexp@>=1.0.2 <2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.3.tgz" + }, + "has-ansi": { + "version": "1.0.3", + "from": "has-ansi@>=1.0.3 <2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-1.0.3.tgz", + "dependencies": { + "ansi-regex": { + "version": "1.1.1", + "from": "ansi-regex@>=1.1.0 <2.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz" + }, + "get-stdin": { + "version": "4.0.1", + "from": "get-stdin@>=4.0.1 <5.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz" + } + } + }, + "strip-ansi": { + "version": "2.0.1", + "from": "strip-ansi@>=2.0.1 <3.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-2.0.1.tgz", + "dependencies": { + "ansi-regex": { + "version": "1.1.1", + "from": "ansi-regex@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-1.1.1.tgz" + } + } + }, + "supports-color": { + "version": "1.3.1", + "from": "supports-color@>=1.3.0 <2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz" + } + } + }, + "commander": { + "version": "2.7.1", + "from": "commander@>=2.6.0 <3.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.7.1.tgz", + "dependencies": { + "graceful-readlink": { + "version": "1.0.1", + "from": "graceful-readlink@>=1.0.0", + "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz" + } + } + }, + "convert-source-map": { + "version": "0.5.1", + "from": "convert-source-map@>=0.5.0 <0.6.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.5.1.tgz" + }, + "core-js": { + "version": "0.6.1", + "from": "core-js@>=0.6.1 <0.7.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-0.6.1.tgz" + }, + "debug": { + "version": "2.1.3", + "from": "debug@>=2.1.1 <3.0.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz", + "dependencies": { + "ms": { + "version": "0.7.0", + "from": "ms@0.7.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz" + } + } + }, + "detect-indent": { + "version": "3.0.1", + "from": "detect-indent@>=3.0.0 <4.0.0", + "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-3.0.1.tgz", + "dependencies": { + "get-stdin": { + "version": "4.0.1", + "from": "get-stdin@>=4.0.1 <5.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz" + }, + "minimist": { + "version": "1.1.1", + "from": "minimist@>=1.1.0 <2.0.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz" + } + } + }, + "estraverse": { + "version": "1.9.3", + "from": "estraverse@>=1.9.1 <2.0.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz" + }, + "esutils": { + "version": "1.1.6", + "from": "esutils@>=1.1.6 <2.0.0", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-1.1.6.tgz" + }, + "fs-readdir-recursive": { + "version": "0.1.1", + "from": "fs-readdir-recursive@>=0.1.0 <0.2.0", + "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-0.1.1.tgz" + }, + "globals": { + "version": "6.3.0", + "from": "globals@>=6.2.0 <7.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-6.3.0.tgz" + }, + "is-integer": { + "version": "1.0.4", + "from": "is-integer@>=1.0.4 <2.0.0", + "resolved": "https://registry.npmjs.org/is-integer/-/is-integer-1.0.4.tgz", + "dependencies": { + "is-finite": { + "version": "1.0.0", + "from": "is-finite@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.0.tgz" + }, + "is-nan": { + "version": "1.0.1", + "from": "is-nan@>=1.0.1 <2.0.0", + "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.0.1.tgz" + } + } + }, + "js-tokens": { + "version": "1.0.0", + "from": "js-tokens@1.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-1.0.0.tgz" + }, + "leven": { + "version": "1.0.1", + "from": "leven@>=1.0.1 <2.0.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-1.0.1.tgz" + }, + "line-numbers": { + "version": "0.2.0", + "from": "line-numbers@0.2.0", + "resolved": "https://registry.npmjs.org/line-numbers/-/line-numbers-0.2.0.tgz", + "dependencies": { + "left-pad": { + "version": "0.0.3", + "from": "left-pad@0.0.3", + "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-0.0.3.tgz" + } + } + }, + "lodash": { + "version": "3.5.0", + "from": "lodash@>=3.2.0 <4.0.0", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.5.0.tgz" + }, + "output-file-sync": { + "version": "1.1.0", + "from": "output-file-sync@>=1.1.0 <2.0.0", + "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.0.tgz", + "dependencies": { + "mkdirp": { + "version": "0.5.0", + "from": "mkdirp@>=0.5.0 <0.6.0", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", + "dependencies": { + "minimist": { + "version": "0.0.8", + "from": "minimist@0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" + } + } + }, + "xtend": { + "version": "4.0.0", + "from": "xtend@>=4.0.0 <5.0.0", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.0.tgz" + } + } + }, + "path-is-absolute": { + "version": "1.0.0", + "from": "path-is-absolute@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.0.tgz" + }, + "private": { + "version": "0.1.6", + "from": "private@>=0.1.6 <0.2.0", + "resolved": "https://registry.npmjs.org/private/-/private-0.1.6.tgz" + }, + "regenerator-babel": { + "version": "0.8.13-2", + "from": "regenerator-babel@0.8.13-2", + "resolved": "https://registry.npmjs.org/regenerator-babel/-/regenerator-babel-0.8.13-2.tgz", + "dependencies": { + "commoner": { + "version": "0.10.1", + "from": "commoner@>=0.10.0 <0.11.0", + "resolved": "https://registry.npmjs.org/commoner/-/commoner-0.10.1.tgz", + "dependencies": { + "q": { + "version": "1.1.2", + "from": "q@>=1.1.2 <1.2.0", + "resolved": "https://registry.npmjs.org/q/-/q-1.1.2.tgz" + }, + "recast": { + "version": "0.9.18", + "from": "recast@>=0.9.5 <0.10.0", + "resolved": "https://registry.npmjs.org/recast/-/recast-0.9.18.tgz", + "dependencies": { + "esprima-fb": { + "version": "10001.1.0-dev-harmony-fb", + "from": "esprima-fb@>=10001.1.0-dev-harmony-fb <10001.2.0", + "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-10001.1.0-dev-harmony-fb.tgz" + }, + "source-map": { + "version": "0.1.43", + "from": "source-map@>=0.1.40 <0.2.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "dependencies": { + "amdefine": { + "version": "0.1.0", + "from": "amdefine@>=0.0.4", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" + } + } + }, + "ast-types": { + "version": "0.6.16", + "from": "ast-types@>=0.6.1 <0.7.0", + "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.6.16.tgz" + } + } + }, + "commander": { + "version": "2.5.1", + "from": "commander@>=2.5.0 <2.6.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.5.1.tgz" + }, + "graceful-fs": { + "version": "3.0.6", + "from": "graceful-fs@>=3.0.4 <3.1.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.6.tgz" + }, + "glob": { + "version": "4.2.2", + "from": "glob@>=4.2.1 <4.3.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-4.2.2.tgz", + "dependencies": { + "inflight": { + "version": "1.0.4", + "from": "inflight@>=1.0.4 <2.0.0", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz", + "dependencies": { + "wrappy": { + "version": "1.0.1", + "from": "wrappy@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz" + } + } + }, + "inherits": { + "version": "2.0.1", + "from": "inherits@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + }, + "minimatch": { + "version": "1.0.0", + "from": "minimatch@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-1.0.0.tgz", + "dependencies": { + "lru-cache": { + "version": "2.5.0", + "from": "lru-cache@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.5.0.tgz" + }, + "sigmund": { + "version": "1.0.0", + "from": "sigmund@>=1.0.0 <1.1.0", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz" + } + } + }, + "once": { + "version": "1.3.1", + "from": "once@>=1.3.0 <2.0.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.3.1.tgz", + "dependencies": { + "wrappy": { + "version": "1.0.1", + "from": "wrappy@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz" + } + } + } + } + }, + "mkdirp": { + "version": "0.5.0", + "from": "mkdirp@>=0.5.0 <0.6.0", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", + "dependencies": { + "minimist": { + "version": "0.0.8", + "from": "minimist@0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" + } + } + }, + "install": { + "version": "0.1.8", + "from": "install@>=0.1.7 <0.2.0", + "resolved": "https://registry.npmjs.org/install/-/install-0.1.8.tgz" + }, + "iconv-lite": { + "version": "0.4.7", + "from": "iconv-lite@>=0.4.5 <0.5.0", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.7.tgz" + } + } + }, + "through": { + "version": "2.3.6", + "from": "through@>=2.3.6 <2.4.0", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.6.tgz" + } + } + }, + "regexpu": { + "version": "1.1.2", + "from": "regexpu@>=1.1.2 <2.0.0", + "resolved": "https://registry.npmjs.org/regexpu/-/regexpu-1.1.2.tgz", + "dependencies": { + "recast": { + "version": "0.10.9", + "from": "recast@>=0.10.1 <0.11.0", + "resolved": "https://registry.npmjs.org/recast/-/recast-0.10.9.tgz", + "dependencies": { + "esprima-fb": { + "version": "13001.1.0-dev-harmony-fb", + "from": "esprima-fb@>=13001.1.0-dev-harmony-fb <13001.2.0", + "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-13001.1.0-dev-harmony-fb.tgz" + } + } + }, + "regenerate": { + "version": "1.2.1", + "from": "regenerate@>=1.2.1 <2.0.0", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.2.1.tgz" + }, + "regjsgen": { + "version": "0.2.0", + "from": "regjsgen@>=0.2.0 <0.3.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz" + }, + "regjsparser": { + "version": "0.1.4", + "from": "regjsparser@>=0.1.4 <0.2.0", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.4.tgz", + "dependencies": { + "jsesc": { + "version": "0.5.0", + "from": "jsesc@>=0.5.0 <0.6.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz" + } + } + } + } + }, + "repeating": { + "version": "1.1.2", + "from": "repeating@>=1.1.0 <2.0.0", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-1.1.2.tgz", + "dependencies": { + "is-finite": { + "version": "1.0.0", + "from": "is-finite@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.0.tgz" + }, + "meow": { + "version": "3.1.0", + "from": "meow@>=3.0.0 <4.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.1.0.tgz", + "dependencies": { + "camelcase-keys": { + "version": "1.0.0", + "from": "camelcase-keys@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-1.0.0.tgz", + "dependencies": { + "camelcase": { + "version": "1.0.2", + "from": "camelcase@>=1.0.1 <2.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.0.2.tgz" + }, + "map-obj": { + "version": "1.0.0", + "from": "map-obj@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.0.tgz" + } + } + }, + "indent-string": { + "version": "1.2.1", + "from": "indent-string@>=1.1.0 <2.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-1.2.1.tgz", + "dependencies": { + "get-stdin": { + "version": "4.0.1", + "from": "get-stdin@>=4.0.1 <5.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz" + } + } + }, + "minimist": { + "version": "1.1.1", + "from": "minimist@>=1.1.0 <2.0.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.1.1.tgz" + }, + "object-assign": { + "version": "2.0.0", + "from": "object-assign@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-2.0.0.tgz" + } + } + } + } + }, + "shebang-regex": { + "version": "1.0.0", + "from": "shebang-regex@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz" + }, + "slash": { + "version": "1.0.0", + "from": "slash@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz" + }, + "source-map": { + "version": "0.4.2", + "from": "source-map@>=0.4.0 <0.5.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.2.tgz", + "dependencies": { + "amdefine": { + "version": "0.1.0", + "from": "amdefine@>=0.0.4", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" + } + } + }, + "source-map-support": { + "version": "0.2.10", + "from": "source-map-support@>=0.2.9 <0.3.0", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.2.10.tgz", + "dependencies": { + "source-map": { + "version": "0.1.32", + "from": "source-map@0.1.32", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.32.tgz", + "dependencies": { + "amdefine": { + "version": "0.1.0", + "from": "amdefine@>=0.0.4", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" + } + } + } + } + }, + "to-fast-properties": { + "version": "1.0.1", + "from": "to-fast-properties@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.1.tgz" + }, + "trim-right": { + "version": "1.0.0", + "from": "trim-right@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.0.tgz" + } + } + }, + "babel-loader": { + "version": "4.2.0", + "from": "babel-loader@>=4.2.0 <5.0.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-4.2.0.tgz" + }, + "body-parser": { + "version": "1.12.2", + "from": "body-parser@>=1.12.2 <2.0.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.12.2.tgz", + "dependencies": { + "bytes": { + "version": "1.0.0", + "from": "bytes@1.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz" + }, + "content-type": { + "version": "1.0.1", + "from": "content-type@>=1.0.1 <1.1.0", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.1.tgz" + }, + "debug": { + "version": "2.1.3", + "from": "debug@>=2.1.3 <2.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.1.3.tgz", + "dependencies": { + "ms": { + "version": "0.7.0", + "from": "ms@0.7.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.0.tgz" + } + } + }, + "depd": { + "version": "1.0.0", + "from": "depd@>=1.0.0 <1.1.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.0.0.tgz" + }, + "iconv-lite": { + "version": "0.4.7", + "from": "iconv-lite@0.4.7", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.7.tgz" + }, + "on-finished": { + "version": "2.2.0", + "from": "on-finished@>=2.2.0 <2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.2.0.tgz", + "dependencies": { + "ee-first": { + "version": "1.1.0", + "from": "ee-first@1.1.0", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.0.tgz" + } + } + }, + "qs": { + "version": "2.4.1", + "from": "qs@2.4.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-2.4.1.tgz" + }, + "raw-body": { + "version": "1.3.3", + "from": "raw-body@1.3.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.3.3.tgz" + }, + "type-is": { + "version": "1.6.1", + "from": "type-is@>=1.6.1 <1.7.0", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.1.tgz", + "dependencies": { + "media-typer": { + "version": "0.3.0", + "from": "media-typer@0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz" + }, + "mime-types": { + "version": "2.0.10", + "from": "mime-types@>=2.0.10 <2.1.0", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.0.10.tgz", + "dependencies": { + "mime-db": { + "version": "1.8.0", + "from": "mime-db@>=1.8.0 <1.9.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.8.0.tgz" + } + } + } + } + } + } + }, + "imports-loader": { + "version": "0.6.3", + "from": "imports-loader@>=0.6.3 <0.7.0", + "resolved": "https://registry.npmjs.org/imports-loader/-/imports-loader-0.6.3.tgz", + "dependencies": { + "source-map": { + "version": "0.1.43", + "from": "source-map@>=0.1.38 <0.2.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "dependencies": { + "amdefine": { + "version": "0.1.0", + "from": "amdefine@>=0.0.4", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" + } + } + } + } + }, + "jquery": { + "version": "2.1.3", + "from": "jquery@>=2.1.3 <3.0.0", + "resolved": "https://registry.npmjs.org/jquery/-/jquery-2.1.3.tgz" + }, + "loader-utils": { + "version": "0.2.6", + "from": "loader-utils@>=0.2.6 <0.3.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.6.tgz", + "dependencies": { + "json5": { + "version": "0.1.0", + "from": "json5@>=0.1.0 <0.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.1.0.tgz" + }, + "big.js": { + "version": "2.5.1", + "from": "big.js@>=2.5.1 <2.6.0", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-2.5.1.tgz" + } + } + }, + "marked": { + "version": "0.3.3", + "from": "marked@>=0.3.3 <0.4.0", + "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.3.tgz" + }, + "react": { + "version": "0.13.1", + "from": "react@>=0.13.1 <0.14.0", + "resolved": "https://registry.npmjs.org/react/-/react-0.13.1.tgz", + "dependencies": { + "envify": { + "version": "3.4.0", + "from": "envify@>=3.0.0 <4.0.0", + "resolved": "https://registry.npmjs.org/envify/-/envify-3.4.0.tgz", + "dependencies": { + "through": { + "version": "2.3.6", + "from": "through@>=2.3.6 <2.4.0", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.6.tgz" + }, + "jstransform": { + "version": "10.1.0", + "from": "jstransform@>=10.0.1 <11.0.0", + "resolved": "https://registry.npmjs.org/jstransform/-/jstransform-10.1.0.tgz", + "dependencies": { + "base62": { + "version": "0.1.1", + "from": "base62@0.1.1", + "resolved": "https://registry.npmjs.org/base62/-/base62-0.1.1.tgz" + }, + "esprima-fb": { + "version": "13001.1001.0-dev-harmony-fb", + "from": "esprima-fb@13001.1001.0-dev-harmony-fb", + "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-13001.1001.0-dev-harmony-fb.tgz" + }, + "source-map": { + "version": "0.1.31", + "from": "source-map@0.1.31", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.31.tgz", + "dependencies": { + "amdefine": { + "version": "0.1.0", + "from": "amdefine@>=0.0.4", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" + } + } + } + } + } + } + } + } + }, + "react-bootstrap": { + "version": "0.17.0", + "from": "react-bootstrap@>=0.17.0 <0.18.0", + "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.17.0.tgz" + }, + "sleep": { + "version": "2.0.0", + "from": "sleep@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/sleep/-/sleep-2.0.0.tgz", + "dependencies": { + "nan": { + "version": "1.7.0", + "from": "nan@*", + "resolved": "https://registry.npmjs.org/nan/-/nan-1.7.0.tgz" + } + } + }, + "webpack": { + "version": "1.7.3", + "from": "webpack@>=1.7.3 <2.0.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-1.7.3.tgz", + "dependencies": { + "esprima": { + "version": "1.2.5", + "from": "esprima@>=1.2.0 <1.3.0", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.5.tgz" + }, + "mkdirp": { + "version": "0.5.0", + "from": "mkdirp@>=0.5.0 <0.6.0", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", + "dependencies": { + "minimist": { + "version": "0.0.8", + "from": "minimist@0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" + } + } + }, + "optimist": { + "version": "0.6.1", + "from": "optimist@>=0.6.0 <0.7.0", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "dependencies": { + "wordwrap": { + "version": "0.0.2", + "from": "wordwrap@>=0.0.2 <0.1.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz" + }, + "minimist": { + "version": "0.0.10", + "from": "minimist@>=0.0.1 <0.1.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz" + } + } + }, + "uglify-js": { + "version": "2.4.17", + "from": "uglify-js@>=2.4.13 <2.5.0", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.17.tgz", + "dependencies": { + "async": { + "version": "0.2.10", + "from": "async@>=0.2.6 <0.3.0", + "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz" + }, + "source-map": { + "version": "0.1.34", + "from": "source-map@0.1.34", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.34.tgz", + "dependencies": { + "amdefine": { + "version": "0.1.0", + "from": "amdefine@>=0.0.4", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" + } + } + }, + "yargs": { + "version": "1.3.3", + "from": "yargs@>=1.3.3 <1.4.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-1.3.3.tgz" + }, + "uglify-to-browserify": { + "version": "1.0.2", + "from": "uglify-to-browserify@>=1.0.0 <1.1.0", + "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz" + } + } + }, + "async": { + "version": "0.9.0", + "from": "async@>=0.9.0 <0.10.0", + "resolved": "https://registry.npmjs.org/async/-/async-0.9.0.tgz" + }, + "enhanced-resolve": { + "version": "0.8.4", + "from": "enhanced-resolve@>=0.8.2 <0.9.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-0.8.4.tgz", + "dependencies": { + "graceful-fs": { + "version": "3.0.6", + "from": "graceful-fs@>=3.0.5 <4.0.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.6.tgz" + } + } + }, + "memory-fs": { + "version": "0.2.0", + "from": "memory-fs@>=0.2.0 <0.3.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.2.0.tgz" + }, + "clone": { + "version": "0.1.19", + "from": "clone@>=0.1.15 <0.2.0", + "resolved": "https://registry.npmjs.org/clone/-/clone-0.1.19.tgz" + }, + "webpack-core": { + "version": "0.5.0", + "from": "webpack-core@>=0.5.0 <0.6.0", + "resolved": "https://registry.npmjs.org/webpack-core/-/webpack-core-0.5.0.tgz", + "dependencies": { + "source-map": { + "version": "0.4.2", + "from": "source-map@>=0.4.1 <0.5.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.2.tgz", + "dependencies": { + "amdefine": { + "version": "0.1.0", + "from": "amdefine@>=0.0.4", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" + } + } + } + } + }, + "node-libs-browser": { + "version": "0.4.3", + "from": "node-libs-browser@>=0.4.0 <0.5.0", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-0.4.3.tgz", + "dependencies": { + "assert": { + "version": "1.3.0", + "from": "assert@>=1.1.1 <2.0.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.3.0.tgz" + }, + "browserify-zlib": { + "version": "0.1.4", + "from": "browserify-zlib@>=0.1.4 <0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", + "dependencies": { + "pako": { + "version": "0.2.5", + "from": "pako@>=0.2.0 <0.3.0", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.5.tgz" + } + } + }, + "buffer": { + "version": "3.1.2", + "from": "buffer@>=3.0.3 <4.0.0", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-3.1.2.tgz", + "dependencies": { + "base64-js": { + "version": "0.0.8", + "from": "base64-js@0.0.8", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.8.tgz" + }, + "ieee754": { + "version": "1.1.4", + "from": "ieee754@>=1.1.4 <2.0.0", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.4.tgz" + }, + "is-array": { + "version": "1.0.1", + "from": "is-array@>=1.0.1 <2.0.0", + "resolved": "https://registry.npmjs.org/is-array/-/is-array-1.0.1.tgz" + } + } + }, + "console-browserify": { + "version": "1.1.0", + "from": "console-browserify@>=1.1.0 <2.0.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "dependencies": { + "date-now": { + "version": "0.1.4", + "from": "date-now@>=0.1.4 <0.2.0", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz" + } + } + }, + "constants-browserify": { + "version": "0.0.1", + "from": "constants-browserify@0.0.1", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-0.0.1.tgz" + }, + "crypto-browserify": { + "version": "3.2.8", + "from": "crypto-browserify@>=3.2.6 <3.3.0", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.2.8.tgz", + "dependencies": { + "pbkdf2-compat": { + "version": "2.0.1", + "from": "pbkdf2-compat@2.0.1", + "resolved": "https://registry.npmjs.org/pbkdf2-compat/-/pbkdf2-compat-2.0.1.tgz" + }, + "ripemd160": { + "version": "0.2.0", + "from": "ripemd160@0.2.0", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-0.2.0.tgz" + }, + "sha.js": { + "version": "2.2.6", + "from": "sha.js@2.2.6", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.2.6.tgz" + } + } + }, + "domain-browser": { + "version": "1.1.4", + "from": "domain-browser@>=1.1.1 <2.0.0", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.4.tgz" + }, + "events": { + "version": "1.0.2", + "from": "events@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/events/-/events-1.0.2.tgz" + }, + "http-browserify": { + "version": "1.7.0", + "from": "http-browserify@>=1.3.2 <2.0.0", + "resolved": "https://registry.npmjs.org/http-browserify/-/http-browserify-1.7.0.tgz", + "dependencies": { + "Base64": { + "version": "0.2.1", + "from": "Base64@>=0.2.0 <0.3.0", + "resolved": "https://registry.npmjs.org/Base64/-/Base64-0.2.1.tgz" + }, + "inherits": { + "version": "2.0.1", + "from": "inherits@>=2.0.1 <2.1.0", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + } + } + }, + "https-browserify": { + "version": "0.0.0", + "from": "https-browserify@0.0.0", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.0.tgz" + }, + "os-browserify": { + "version": "0.1.2", + "from": "os-browserify@>=0.1.2 <0.2.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.1.2.tgz" + }, + "path-browserify": { + "version": "0.0.0", + "from": "path-browserify@0.0.0", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz" + }, + "process": { + "version": "0.10.1", + "from": "process@>=0.10.0 <0.11.0", + "resolved": "https://registry.npmjs.org/process/-/process-0.10.1.tgz" + }, + "punycode": { + "version": "1.3.2", + "from": "punycode@>=1.2.4 <2.0.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz" + }, + "querystring-es3": { + "version": "0.2.1", + "from": "querystring-es3@>=0.2.0 <0.3.0", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz" + }, + "readable-stream": { + "version": "1.1.13", + "from": "readable-stream@>=1.1.13 <2.0.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz", + "dependencies": { + "core-util-is": { + "version": "1.0.1", + "from": "core-util-is@>=1.0.0 <1.1.0", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz" + }, + "isarray": { + "version": "0.0.1", + "from": "isarray@0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" + }, + "inherits": { + "version": "2.0.1", + "from": "inherits@>=2.0.1 <2.1.0", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + } + } + }, + "stream-browserify": { + "version": "1.0.0", + "from": "stream-browserify@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-1.0.0.tgz", + "dependencies": { + "inherits": { + "version": "2.0.1", + "from": "inherits@>=2.0.1 <2.1.0", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + } + } + }, + "string_decoder": { + "version": "0.10.31", + "from": "string_decoder@>=0.10.25 <0.11.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + }, + "timers-browserify": { + "version": "1.4.0", + "from": "timers-browserify@>=1.0.1 <2.0.0", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.0.tgz" + }, + "tty-browserify": { + "version": "0.0.0", + "from": "tty-browserify@0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz" + }, + "url": { + "version": "0.10.3", + "from": "url@>=0.10.1 <0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.10.3.tgz", + "dependencies": { + "querystring": { + "version": "0.2.0", + "from": "querystring@0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz" + } + } + }, + "util": { + "version": "0.10.3", + "from": "util@>=0.10.3 <0.11.0", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "dependencies": { + "inherits": { + "version": "2.0.1", + "from": "inherits@2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + } + } + }, + "vm-browserify": { + "version": "0.0.4", + "from": "vm-browserify@0.0.4", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", + "dependencies": { + "indexof": { + "version": "0.0.1", + "from": "indexof@0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz" + } + } + } + } + }, + "watchpack": { + "version": "0.2.3", + "from": "watchpack@>=0.2.1 <0.3.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-0.2.3.tgz", + "dependencies": { + "chokidar": { + "version": "1.0.0-rc4", + "from": "chokidar@>=1.0.0-rc2 <2.0.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.0.0-rc4.tgz", + "dependencies": { + "anymatch": { + "version": "1.1.0", + "from": "anymatch@>=1.1.0 <2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.1.0.tgz", + "dependencies": { + "minimatch": { + "version": "1.0.0", + "from": "minimatch@>=1.0.0 <1.1.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-1.0.0.tgz", + "dependencies": { + "lru-cache": { + "version": "2.5.0", + "from": "lru-cache@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.5.0.tgz" + }, + "sigmund": { + "version": "1.0.0", + "from": "sigmund@>=1.0.0 <1.1.0", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz" + } + } + } + } + }, + "async-each": { + "version": "0.1.6", + "from": "async-each@>=0.1.5 <0.2.0", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-0.1.6.tgz" + }, + "glob-parent": { + "version": "1.2.0", + "from": "glob-parent@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-1.2.0.tgz", + "dependencies": { + "is-glob": { + "version": "1.1.3", + "from": "is-glob@>=1.1.1 <2.0.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-1.1.3.tgz" + } + } + }, + "is-binary-path": { + "version": "1.0.0", + "from": "is-binary-path@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.0.tgz", + "dependencies": { + "binary-extensions": { + "version": "1.3.0", + "from": "binary-extensions@>=1.0.0 <2.0.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.3.0.tgz" + } + } + }, + "readdirp": { + "version": "1.3.0", + "from": "readdirp@>=1.3.0 <2.0.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-1.3.0.tgz", + "dependencies": { + "graceful-fs": { + "version": "2.0.3", + "from": "graceful-fs@>=2.0.0 <2.1.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz" + }, + "minimatch": { + "version": "0.2.14", + "from": "minimatch@>=0.2.12 <0.3.0", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz", + "dependencies": { + "lru-cache": { + "version": "2.5.0", + "from": "lru-cache@>=2.0.0 <3.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.5.0.tgz" + }, + "sigmund": { + "version": "1.0.0", + "from": "sigmund@>=1.0.0 <1.1.0", + "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz" + } + } + }, + "readable-stream": { + "version": "1.0.33", + "from": "readable-stream@>=1.0.26-2 <1.1.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.33.tgz", + "dependencies": { + "core-util-is": { + "version": "1.0.1", + "from": "core-util-is@>=1.0.0 <1.1.0", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz" + }, + "isarray": { + "version": "0.0.1", + "from": "isarray@0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" + }, + "string_decoder": { + "version": "0.10.31", + "from": "string_decoder@>=0.10.0 <0.11.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + }, + "inherits": { + "version": "2.0.1", + "from": "inherits@>=2.0.1 <2.1.0", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + } + } + } + } + }, + "fsevents": { + "version": "0.3.5", + "from": "fsevents@>=0.3.1 <0.4.0", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-0.3.5.tgz", + "dependencies": { + "nan": { + "version": "1.5.3", + "from": "nan@>=1.5.0 <1.6.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-1.5.3.tgz" + } + } + } + } + }, + "graceful-fs": { + "version": "3.0.6", + "from": "graceful-fs@>=3.0.5 <4.0.0", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.6.tgz" + } + } + }, + "tapable": { + "version": "0.1.8", + "from": "tapable@>=0.1.8 <0.2.0", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.1.8.tgz" + }, + "supports-color": { + "version": "1.3.1", + "from": "supports-color@>=1.2.0 <2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-1.3.1.tgz" + } + } + } + } +} diff --git a/client/package.json b/client/package.json new file mode 100644 index 000000000..c51c2a03a --- /dev/null +++ b/client/package.json @@ -0,0 +1,57 @@ +{ + "name": "react-webpack-rails-tutorial", + "version": "1.1.0", + "description": "Code from the React Webpack tutorial.", + "main": "server.js", + "engines": { + "node": "0.10.32" + }, + "repository": { + "type": "git", + "url": "https://github.com/justin808/react-webpack-rails-tutorial.git" + }, + "keywords": [ + "react", + "tutorial", + "comment", + "example" + ], + "author": "justin808", + "license": "MIT", + "bugs": { + "url": "https://github.com/justin808/react-webpack-rails-tutorial/issues" + }, + "homepage": "https://github.com/justin808/react-webpack-rails-tutorial", + "dependencies": { + "babel-core": "^4.7.16", + "babel-loader": "^4.2.0", + "body-parser": "^1.12.2", + "imports-loader": "^0.6.3", + "jquery": "^2.1.3", + "loader-utils": "^0.2.6", + "marked": "^0.3.3", + "react": "^0.13.1", + "react-bootstrap": "^0.17.0", + "sleep": "^2.0.0", + "webpack": "^1.7.3" + }, + "devDependencies": { + "bootstrap-sass": "^3.3.4", + "bootstrap-sass-loader": "^1.0.2", + "css-loader": "^0.9.1", + "expose-loader": "^0.6.0", + "express": "^4.12.3", + "extract-text-webpack-plugin": "^0.5.0", + "file-loader": "^0.8.1", + "node-sass": "^3.0.0-alpha.0", + "react-hot-loader": "^1.2.3", + "sass-loader": "^1.0.0", + "style-loader": "^0.8.3", + "url-loader": "^0.5.5", + "webpack-dev-server": "^1.7.0" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "start": "node server.js" + } +} diff --git a/webpack/scripts/rails_only.jsx b/client/scripts/rails_only.jsx similarity index 100% rename from webpack/scripts/rails_only.jsx rename to client/scripts/rails_only.jsx diff --git a/webpack/scripts/webpack_only.jsx b/client/scripts/webpack_only.jsx similarity index 100% rename from webpack/scripts/webpack_only.jsx rename to client/scripts/webpack_only.jsx diff --git a/webpack/server.js b/client/server.js similarity index 100% rename from webpack/server.js rename to client/server.js diff --git a/webpack/webpack.common.config.js b/client/webpack.common.config.js similarity index 100% rename from webpack/webpack.common.config.js rename to client/webpack.common.config.js diff --git a/webpack/webpack.hot.config.js b/client/webpack.hot.config.js similarity index 84% rename from webpack/webpack.hot.config.js rename to client/webpack.hot.config.js index c1aa8ad7d..112411cc9 100644 --- a/webpack/webpack.hot.config.js +++ b/client/webpack.hot.config.js @@ -1,5 +1,5 @@ // Run like this: -// cd webpack && node server.js +// cd client && node server.js var path = require("path"); var config = require("./webpack.common.config"); @@ -13,16 +13,12 @@ config.entry.push("webpack-dev-server/client?http://localhost:3000", "bootstrap-sass!./bootstrap-sass.config.js"); // custom bootstrap config.output = { filename: "express-bundle.js", // this file is served directly by webpack path: __dirname }; -config.module.loaders.push( - { test: require.resolve("react"), loader: "expose?React" }, - { test: /\.jsx$/, loaders: ["react-hot", "es6", "jsx?harmony"] } -); config.plugins = [ new webpack.HotModuleReplacementPlugin() ]; config.devtool = "eval-source-map"; // All the styling loaders only apply to hot-reload, not rails config.module.loaders.push( - { test: /\.jsx$/, loaders: ["react-hot", "es6", "jsx?harmony"] }, + { test: /\.jsx?$/, loaders: ['react-hot', 'babel'], exclude: /node_modules/ }, { test: /\.css$/, loader: "style-loader!css-loader" }, { test: /\.scss$/, loader: "style!css!sass?outputStyle=expanded&imagePath=/assets/images&includePaths[]=" + path.resolve(__dirname, "./assets/stylesheets")}, diff --git a/webpack/webpack.rails.config.js b/client/webpack.rails.config.js similarity index 76% rename from webpack/webpack.rails.config.js rename to client/webpack.rails.config.js index 392edd7bf..b44864b57 100644 --- a/webpack/webpack.rails.config.js +++ b/client/webpack.rails.config.js @@ -1,5 +1,5 @@ // Run like this: -// cd webpack && $(npm bin)/webpack -w --config webpack.rails.config.js +// cd client && $(npm bin)/webpack -w --config webpack.rails.config.js // Note that Foreman (Procfile.dev) has also been configured to take care of this. // NOTE: All style sheets handled by the asset pipeline in rails @@ -7,18 +7,19 @@ var config = require("./webpack.common.config"); config.entry.push("./scripts/rails_only"); // rails specific assets -config.output = { filename: "webpack-bundle.js", +config.output = { filename: "client-bundle.js", path: "../app/assets/javascripts" }; config.externals = { jquery: "var jQuery" }; // load jQuery from cdn or rails asset pipeline config.module.loaders.push( - { test: /\.jsx$/, loaders: ["es6", "jsx?harmony"] }, - // Next 2 lines expose jQuery and $ to any JavaScript files loaded after webpack-bundle.js + { test: /\.jsx$/, exclude: /node_modules/, loader: 'babel-loader'}, + // Next 2 lines expose jQuery and $ to any JavaScript files loaded after client-bundle.js // in the Rails Asset Pipeline. Thus, load this one prior. { test: require.resolve("jquery"), loader: "expose?jQuery" }, { test: require.resolve("jquery"), loader: "expose?$" } ); module.exports = config; +// Next line is Heroku specific. You'll have BUILDPACK_URL defined for your Heroku install. var devBuild = (typeof process.env["BUILDPACK_URL"]) === "undefined"; if (devBuild) { console.log("Webpack dev build for Rails"); diff --git a/webpack/webpack.test-hot.config.js b/client/webpack.test-hot.config.js similarity index 100% rename from webpack/webpack.test-hot.config.js rename to client/webpack.test-hot.config.js diff --git a/config/application.rb b/config/application.rb index 63807b854..06bbceea2 100644 --- a/config/application.rb +++ b/config/application.rb @@ -23,7 +23,7 @@ class Application < Rails::Application # For not swallow errors in after_commit/after_rollback callbacks. config.active_record.raise_in_transactional_callbacks = true - # Add webpack/assets/stylesheets to asset pipeline's search path. - config.assets.paths << Rails.root.join("webpack", "assets" ,"stylesheets") + # Add client/assets/stylesheets to asset pipeline's search path. + config.assets.paths << Rails.root.join("client", "assets" ,"stylesheets") end end diff --git a/lib/tasks/assets.rake b/lib/tasks/assets.rake index ea8d22bb2..c708e100c 100644 --- a/lib/tasks/assets.rake +++ b/lib/tasks/assets.rake @@ -13,7 +13,7 @@ namespace :assets do desc 'Compile assets with webpack' task :webpack do - sh 'cd webpack && $(npm bin)/webpack --config webpack.rails.config.js' + sh 'cd client && $(npm bin)/webpack --config webpack.rails.config.js' end task :clobber do diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index 5b6cba3b2..99b7869a2 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -1,964 +1,5 @@ { - "name": "react-tutorial", - "version": "0.0.0", - "dependencies": { - "body-parser": { - "version": "1.11.0", - "from": "body-parser@>=1.11.0 <2.0.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.11.0.tgz", - "dependencies": { - "bytes": { - "version": "1.0.0", - "from": "bytes@1.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz" - }, - "depd": { - "version": "1.0.0", - "from": "depd@>=1.0.0 <1.1.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.0.0.tgz" - }, - "iconv-lite": { - "version": "0.4.6", - "from": "iconv-lite@0.4.6", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.6.tgz" - }, - "media-typer": { - "version": "0.3.0", - "from": "media-typer@0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz" - }, - "on-finished": { - "version": "2.2.0", - "from": "on-finished@>=2.2.0 <2.3.0", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.2.0.tgz", - "dependencies": { - "ee-first": { - "version": "1.1.0", - "from": "ee-first@1.1.0", - "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.0.tgz" - } - } - }, - "qs": { - "version": "2.3.3", - "from": "qs@2.3.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-2.3.3.tgz" - }, - "raw-body": { - "version": "1.3.2", - "from": "raw-body@1.3.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.3.2.tgz" - }, - "type-is": { - "version": "1.5.6", - "from": "type-is@>=1.5.6 <1.6.0", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.5.6.tgz", - "dependencies": { - "mime-types": { - "version": "2.0.8", - "from": "mime-types@>=2.0.8 <2.1.0", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.0.8.tgz", - "dependencies": { - "mime-db": { - "version": "1.6.0", - "from": "mime-db@>=1.6.0 <1.7.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.6.0.tgz" - } - } - } - } - } - } - }, - "es6-loader": { - "version": "0.2.0", - "from": "https://registry.npmjs.org/es6-loader/-/es6-loader-0.2.0.tgz", - "resolved": "https://registry.npmjs.org/es6-loader/-/es6-loader-0.2.0.tgz", - "dependencies": { - "es6-transpiler": { - "version": "0.7.18", - "from": "https://registry.npmjs.org/es6-transpiler/-/es6-transpiler-0.7.18.tgz", - "resolved": "https://registry.npmjs.org/es6-transpiler/-/es6-transpiler-0.7.18.tgz", - "dependencies": { - "es5-shim": { - "version": "4.0.6", - "from": "https://registry.npmjs.org/es5-shim/-/es5-shim-4.0.6.tgz", - "resolved": "https://registry.npmjs.org/es5-shim/-/es5-shim-4.0.6.tgz" - }, - "es6-shim": { - "version": "0.23.0", - "from": "https://registry.npmjs.org/es6-shim/-/es6-shim-0.23.0.tgz", - "resolved": "https://registry.npmjs.org/es6-shim/-/es6-shim-0.23.0.tgz" - }, - "simple-fmt": { - "version": "0.1.0", - "from": "https://registry.npmjs.org/simple-fmt/-/simple-fmt-0.1.0.tgz", - "resolved": "https://registry.npmjs.org/simple-fmt/-/simple-fmt-0.1.0.tgz" - }, - "simple-is": { - "version": "0.2.0", - "from": "https://registry.npmjs.org/simple-is/-/simple-is-0.2.0.tgz", - "resolved": "https://registry.npmjs.org/simple-is/-/simple-is-0.2.0.tgz" - }, - "stringmap": { - "version": "0.2.2", - "from": "https://registry.npmjs.org/stringmap/-/stringmap-0.2.2.tgz", - "resolved": "https://registry.npmjs.org/stringmap/-/stringmap-0.2.2.tgz" - }, - "stringset": { - "version": "0.2.1", - "from": "https://registry.npmjs.org/stringset/-/stringset-0.2.1.tgz", - "resolved": "https://registry.npmjs.org/stringset/-/stringset-0.2.1.tgz" - }, - "ansidiff": { - "version": "1.0.0", - "from": "https://registry.npmjs.org/ansidiff/-/ansidiff-1.0.0.tgz", - "resolved": "https://registry.npmjs.org/ansidiff/-/ansidiff-1.0.0.tgz", - "dependencies": { - "diff": { - "version": "1.0.8", - "from": "https://registry.npmjs.org/diff/-/diff-1.0.8.tgz", - "resolved": "https://registry.npmjs.org/diff/-/diff-1.0.8.tgz" - } - } - }, - "astquery": { - "version": "0.0.11", - "from": "https://registry.npmjs.org/astquery/-/astquery-0.0.11.tgz", - "resolved": "https://registry.npmjs.org/astquery/-/astquery-0.0.11.tgz" - }, - "regenerate": { - "version": "1.2.1", - "from": "https://registry.npmjs.org/regenerate/-/regenerate-1.2.1.tgz", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.2.1.tgz" - }, - "jsesc": { - "version": "0.5.0", - "from": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz" - }, - "string-alter": { - "version": "0.7.3", - "from": "https://registry.npmjs.org/string-alter/-/string-alter-0.7.3.tgz", - "resolved": "https://registry.npmjs.org/string-alter/-/string-alter-0.7.3.tgz" - } - } - }, - "es6-module-transpiler": { - "version": "0.4.0", - "from": "https://registry.npmjs.org/es6-module-transpiler/-/es6-module-transpiler-0.4.0.tgz", - "resolved": "https://registry.npmjs.org/es6-module-transpiler/-/es6-module-transpiler-0.4.0.tgz", - "dependencies": { - "optimist": { - "version": "0.3.7", - "from": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", - "dependencies": { - "wordwrap": { - "version": "0.0.2", - "from": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz" - } - } - }, - "through": { - "version": "2.3.6", - "from": "https://registry.npmjs.org/through/-/through-2.3.6.tgz", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.6.tgz" - } - } - }, - "extend": { - "version": "1.2.1", - "from": "https://registry.npmjs.org/extend/-/extend-1.2.1.tgz", - "resolved": "https://registry.npmjs.org/extend/-/extend-1.2.1.tgz" - } - } - }, - "imports-loader": { - "version": "0.6.3", - "from": "https://registry.npmjs.org/imports-loader/-/imports-loader-0.6.3.tgz", - "resolved": "https://registry.npmjs.org/imports-loader/-/imports-loader-0.6.3.tgz", - "dependencies": { - "source-map": { - "version": "0.1.43", - "from": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "dependencies": { - "amdefine": { - "version": "0.1.0", - "from": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" - } - } - } - } - }, - "jquery": { - "version": "2.1.3", - "from": "https://registry.npmjs.org/jquery/-/jquery-2.1.3.tgz", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-2.1.3.tgz" - }, - "jsx-loader": { - "version": "0.12.2", - "from": "https://registry.npmjs.org/jsx-loader/-/jsx-loader-0.12.2.tgz", - "resolved": "https://registry.npmjs.org/jsx-loader/-/jsx-loader-0.12.2.tgz", - "dependencies": { - "react-tools": { - "version": "0.12.2", - "from": "https://registry.npmjs.org/react-tools/-/react-tools-0.12.2.tgz", - "resolved": "https://registry.npmjs.org/react-tools/-/react-tools-0.12.2.tgz", - "dependencies": { - "commoner": { - "version": "0.10.1", - "from": "https://registry.npmjs.org/commoner/-/commoner-0.10.1.tgz", - "resolved": "https://registry.npmjs.org/commoner/-/commoner-0.10.1.tgz", - "dependencies": { - "q": { - "version": "1.1.2", - "from": "https://registry.npmjs.org/q/-/q-1.1.2.tgz", - "resolved": "https://registry.npmjs.org/q/-/q-1.1.2.tgz" - }, - "recast": { - "version": "0.9.15", - "from": "https://registry.npmjs.org/recast/-/recast-0.9.15.tgz", - "resolved": "https://registry.npmjs.org/recast/-/recast-0.9.15.tgz", - "dependencies": { - "esprima-fb": { - "version": "10001.1.0-dev-harmony-fb", - "from": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-10001.1.0-dev-harmony-fb.tgz", - "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-10001.1.0-dev-harmony-fb.tgz" - }, - "source-map": { - "version": "0.1.43", - "from": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "dependencies": { - "amdefine": { - "version": "0.1.0", - "from": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" - } - } - }, - "ast-types": { - "version": "0.6.10", - "from": "https://registry.npmjs.org/ast-types/-/ast-types-0.6.10.tgz", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.6.10.tgz" - } - } - }, - "commander": { - "version": "2.5.1", - "from": "https://registry.npmjs.org/commander/-/commander-2.5.1.tgz", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.5.1.tgz" - }, - "graceful-fs": { - "version": "3.0.5", - "from": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.5.tgz", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.5.tgz" - }, - "glob": { - "version": "4.2.2", - "from": "https://registry.npmjs.org/glob/-/glob-4.2.2.tgz", - "resolved": "https://registry.npmjs.org/glob/-/glob-4.2.2.tgz", - "dependencies": { - "inflight": { - "version": "1.0.4", - "from": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz", - "dependencies": { - "wrappy": { - "version": "1.0.1", - "from": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz" - } - } - }, - "inherits": { - "version": "2.0.1", - "from": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" - }, - "minimatch": { - "version": "1.0.0", - "from": "https://registry.npmjs.org/minimatch/-/minimatch-1.0.0.tgz", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-1.0.0.tgz", - "dependencies": { - "lru-cache": { - "version": "2.5.0", - "from": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.5.0.tgz", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.5.0.tgz" - }, - "sigmund": { - "version": "1.0.0", - "from": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz" - } - } - }, - "once": { - "version": "1.3.1", - "from": "https://registry.npmjs.org/once/-/once-1.3.1.tgz", - "resolved": "https://registry.npmjs.org/once/-/once-1.3.1.tgz", - "dependencies": { - "wrappy": { - "version": "1.0.1", - "from": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz" - } - } - } - } - }, - "mkdirp": { - "version": "0.5.0", - "from": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", - "dependencies": { - "minimist": { - "version": "0.0.8", - "from": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" - } - } - }, - "private": { - "version": "0.1.6", - "from": "https://registry.npmjs.org/private/-/private-0.1.6.tgz", - "resolved": "https://registry.npmjs.org/private/-/private-0.1.6.tgz" - }, - "install": { - "version": "0.1.8", - "from": "https://registry.npmjs.org/install/-/install-0.1.8.tgz", - "resolved": "https://registry.npmjs.org/install/-/install-0.1.8.tgz" - }, - "iconv-lite": { - "version": "0.4.6", - "from": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.6.tgz", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.6.tgz" - } - } - }, - "jstransform": { - "version": "8.2.0", - "from": "https://registry.npmjs.org/jstransform/-/jstransform-8.2.0.tgz", - "resolved": "https://registry.npmjs.org/jstransform/-/jstransform-8.2.0.tgz", - "dependencies": { - "base62": { - "version": "0.1.1", - "from": "https://registry.npmjs.org/base62/-/base62-0.1.1.tgz", - "resolved": "https://registry.npmjs.org/base62/-/base62-0.1.1.tgz" - }, - "esprima-fb": { - "version": "8001.1001.0-dev-harmony-fb", - "from": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-8001.1001.0-dev-harmony-fb.tgz", - "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-8001.1001.0-dev-harmony-fb.tgz" - }, - "source-map": { - "version": "0.1.31", - "from": "https://registry.npmjs.org/source-map/-/source-map-0.1.31.tgz", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.31.tgz", - "dependencies": { - "amdefine": { - "version": "0.1.0", - "from": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" - } - } - } - } - } - } - } - } - }, - "loader-utils": { - "version": "0.2.6", - "from": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.6.tgz", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.6.tgz", - "dependencies": { - "json5": { - "version": "0.1.0", - "from": "https://registry.npmjs.org/json5/-/json5-0.1.0.tgz", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.1.0.tgz" - }, - "big.js": { - "version": "2.5.1", - "from": "https://registry.npmjs.org/big.js/-/big.js-2.5.1.tgz", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-2.5.1.tgz" - } - } - }, - "marked": { - "version": "0.3.3", - "from": "https://registry.npmjs.org/marked/-/marked-0.3.3.tgz", - "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.3.tgz" - }, - "react": { - "version": "0.12.2", - "from": "https://registry.npmjs.org/react/-/react-0.12.2.tgz", - "resolved": "https://registry.npmjs.org/react/-/react-0.12.2.tgz", - "dependencies": { - "envify": { - "version": "3.2.0", - "from": "https://registry.npmjs.org/envify/-/envify-3.2.0.tgz", - "resolved": "https://registry.npmjs.org/envify/-/envify-3.2.0.tgz", - "dependencies": { - "through": { - "version": "2.3.6", - "from": "https://registry.npmjs.org/through/-/through-2.3.6.tgz", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.6.tgz" - }, - "jstransform": { - "version": "7.0.0", - "from": "https://registry.npmjs.org/jstransform/-/jstransform-7.0.0.tgz", - "resolved": "https://registry.npmjs.org/jstransform/-/jstransform-7.0.0.tgz", - "dependencies": { - "base62": { - "version": "0.1.1", - "from": "https://registry.npmjs.org/base62/-/base62-0.1.1.tgz", - "resolved": "https://registry.npmjs.org/base62/-/base62-0.1.1.tgz" - }, - "esprima-fb": { - "version": "7001.1.0-dev-harmony-fb", - "from": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-7001.1.0-dev-harmony-fb.tgz", - "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-7001.1.0-dev-harmony-fb.tgz" - }, - "source-map": { - "version": "0.1.31", - "from": "https://registry.npmjs.org/source-map/-/source-map-0.1.31.tgz", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.31.tgz", - "dependencies": { - "amdefine": { - "version": "0.1.0", - "from": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" - } - } - } - } - } - } - } - } - }, - "react-bootstrap": { - "version": "0.13.3", - "from": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.13.3.tgz", - "resolved": "https://registry.npmjs.org/react-bootstrap/-/react-bootstrap-0.13.3.tgz" - }, - "sleep": { - "version": "1.2.0", - "from": "https://registry.npmjs.org/sleep/-/sleep-1.2.0.tgz", - "resolved": "https://registry.npmjs.org/sleep/-/sleep-1.2.0.tgz", - "dependencies": { - "mkdirp": { - "version": "0.3.5", - "from": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz" - } - } - }, - "webpack": { - "version": "1.5.3", - "from": "https://registry.npmjs.org/webpack/-/webpack-1.5.3.tgz", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-1.5.3.tgz", - "dependencies": { - "esprima": { - "version": "1.2.3", - "from": "https://registry.npmjs.org/esprima/-/esprima-1.2.3.tgz", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.2.3.tgz" - }, - "mkdirp": { - "version": "0.5.0", - "from": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", - "dependencies": { - "minimist": { - "version": "0.0.8", - "from": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" - } - } - }, - "optimist": { - "version": "0.6.1", - "from": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "dependencies": { - "wordwrap": { - "version": "0.0.2", - "from": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz" - }, - "minimist": { - "version": "0.0.10", - "from": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz" - } - } - }, - "uglify-js": { - "version": "2.4.16", - "from": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.16.tgz", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.16.tgz", - "dependencies": { - "async": { - "version": "0.2.10", - "from": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz" - }, - "source-map": { - "version": "0.1.34", - "from": "https://registry.npmjs.org/source-map/-/source-map-0.1.34.tgz", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.34.tgz", - "dependencies": { - "amdefine": { - "version": "0.1.0", - "from": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" - } - } - }, - "optimist": { - "version": "0.3.7", - "from": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", - "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.3.7.tgz", - "dependencies": { - "wordwrap": { - "version": "0.0.2", - "from": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz" - } - } - }, - "uglify-to-browserify": { - "version": "1.0.2", - "from": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz" - } - } - }, - "async": { - "version": "0.9.0", - "from": "https://registry.npmjs.org/async/-/async-0.9.0.tgz", - "resolved": "https://registry.npmjs.org/async/-/async-0.9.0.tgz" - }, - "enhanced-resolve": { - "version": "0.8.4", - "from": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-0.8.4.tgz", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-0.8.4.tgz", - "dependencies": { - "graceful-fs": { - "version": "3.0.5", - "from": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.5.tgz", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.5.tgz" - } - } - }, - "memory-fs": { - "version": "0.2.0", - "from": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.2.0.tgz", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.2.0.tgz" - }, - "clone": { - "version": "0.1.19", - "from": "https://registry.npmjs.org/clone/-/clone-0.1.19.tgz", - "resolved": "https://registry.npmjs.org/clone/-/clone-0.1.19.tgz" - }, - "webpack-core": { - "version": "0.4.8", - "from": "https://registry.npmjs.org/webpack-core/-/webpack-core-0.4.8.tgz", - "resolved": "https://registry.npmjs.org/webpack-core/-/webpack-core-0.4.8.tgz", - "dependencies": { - "source-map": { - "version": "0.1.43", - "from": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "dependencies": { - "amdefine": { - "version": "0.1.0", - "from": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.0.tgz" - } - } - } - } - }, - "node-libs-browser": { - "version": "0.4.1", - "from": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-0.4.1.tgz", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-0.4.1.tgz", - "dependencies": { - "console-browserify": { - "version": "1.1.0", - "from": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "dependencies": { - "date-now": { - "version": "0.1.4", - "from": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", - "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz" - } - } - }, - "vm-browserify": { - "version": "0.0.4", - "from": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", - "dependencies": { - "indexof": { - "version": "0.0.1", - "from": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz" - } - } - }, - "crypto-browserify": { - "version": "3.3.0", - "from": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.3.0.tgz", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.3.0.tgz", - "dependencies": { - "pbkdf2-compat": { - "version": "2.0.1", - "from": "https://registry.npmjs.org/pbkdf2-compat/-/pbkdf2-compat-2.0.1.tgz", - "resolved": "https://registry.npmjs.org/pbkdf2-compat/-/pbkdf2-compat-2.0.1.tgz" - }, - "ripemd160": { - "version": "0.2.0", - "from": "https://registry.npmjs.org/ripemd160/-/ripemd160-0.2.0.tgz", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-0.2.0.tgz" - }, - "sha.js": { - "version": "2.2.6", - "from": "https://registry.npmjs.org/sha.js/-/sha.js-2.2.6.tgz", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.2.6.tgz" - }, - "browserify-aes": { - "version": "0.4.0", - "from": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-0.4.0.tgz", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-0.4.0.tgz", - "dependencies": { - "inherits": { - "version": "2.0.1", - "from": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" - } - } - } - } - }, - "http-browserify": { - "version": "1.7.0", - "from": "https://registry.npmjs.org/http-browserify/-/http-browserify-1.7.0.tgz", - "resolved": "https://registry.npmjs.org/http-browserify/-/http-browserify-1.7.0.tgz", - "dependencies": { - "Base64": { - "version": "0.2.1", - "from": "https://registry.npmjs.org/Base64/-/Base64-0.2.1.tgz", - "resolved": "https://registry.npmjs.org/Base64/-/Base64-0.2.1.tgz" - }, - "inherits": { - "version": "2.0.1", - "from": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" - } - } - }, - "browserify-zlib": { - "version": "0.1.4", - "from": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", - "dependencies": { - "pako": { - "version": "0.2.5", - "from": "https://registry.npmjs.org/pako/-/pako-0.2.5.tgz", - "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.5.tgz" - } - } - }, - "https-browserify": { - "version": "0.0.0", - "from": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.0.tgz", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.0.tgz" - }, - "tty-browserify": { - "version": "0.0.0", - "from": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz" - }, - "constants-browserify": { - "version": "0.0.1", - "from": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-0.0.1.tgz", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-0.0.1.tgz" - }, - "os-browserify": { - "version": "0.1.2", - "from": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.1.2.tgz", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.1.2.tgz" - }, - "path-browserify": { - "version": "0.0.0", - "from": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz" - }, - "domain-browser": { - "version": "1.1.3", - "from": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.3.tgz", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.3.tgz" - }, - "querystring-es3": { - "version": "0.2.1", - "from": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz" - }, - "timers-browserify": { - "version": "1.2.0", - "from": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.2.0.tgz", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.2.0.tgz", - "dependencies": { - "process": { - "version": "0.10.0", - "from": "https://registry.npmjs.org/process/-/process-0.10.0.tgz", - "resolved": "https://registry.npmjs.org/process/-/process-0.10.0.tgz" - } - } - }, - "stream-browserify": { - "version": "1.0.0", - "from": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-1.0.0.tgz", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-1.0.0.tgz", - "dependencies": { - "inherits": { - "version": "2.0.1", - "from": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" - } - } - }, - "readable-stream": { - "version": "1.1.13", - "from": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.13.tgz", - "dependencies": { - "core-util-is": { - "version": "1.0.1", - "from": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz" - }, - "isarray": { - "version": "0.0.1", - "from": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" - }, - "inherits": { - "version": "2.0.1", - "from": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" - } - } - }, - "string_decoder": { - "version": "0.10.31", - "from": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" - }, - "punycode": { - "version": "1.3.2", - "from": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz" - }, - "events": { - "version": "1.0.2", - "from": "https://registry.npmjs.org/events/-/events-1.0.2.tgz", - "resolved": "https://registry.npmjs.org/events/-/events-1.0.2.tgz" - }, - "util": { - "version": "0.10.3", - "from": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "dependencies": { - "inherits": { - "version": "2.0.1", - "from": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" - } - } - }, - "assert": { - "version": "1.3.0", - "from": "https://registry.npmjs.org/assert/-/assert-1.3.0.tgz", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.3.0.tgz" - }, - "buffer": { - "version": "2.8.2", - "from": "https://registry.npmjs.org/buffer/-/buffer-2.8.2.tgz", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-2.8.2.tgz", - "dependencies": { - "base64-js": { - "version": "0.0.7", - "from": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.7.tgz", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-0.0.7.tgz" - }, - "ieee754": { - "version": "1.1.4", - "from": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.4.tgz", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.4.tgz" - }, - "is-array": { - "version": "1.0.1", - "from": "https://registry.npmjs.org/is-array/-/is-array-1.0.1.tgz", - "resolved": "https://registry.npmjs.org/is-array/-/is-array-1.0.1.tgz" - } - } - }, - "url": { - "version": "0.10.2", - "from": "https://registry.npmjs.org/url/-/url-0.10.2.tgz", - "resolved": "https://registry.npmjs.org/url/-/url-0.10.2.tgz" - }, - "process": { - "version": "0.8.0", - "from": "https://registry.npmjs.org/process/-/process-0.8.0.tgz", - "resolved": "https://registry.npmjs.org/process/-/process-0.8.0.tgz" - } - } - }, - "watchpack": { - "version": "0.2.3", - "from": "https://registry.npmjs.org/watchpack/-/watchpack-0.2.3.tgz", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-0.2.3.tgz", - "dependencies": { - "chokidar": { - "version": "1.0.0-rc2", - "from": "https://registry.npmjs.org/chokidar/-/chokidar-1.0.0-rc2.tgz", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.0.0-rc2.tgz", - "dependencies": { - "anymatch": { - "version": "1.1.0", - "from": "https://registry.npmjs.org/anymatch/-/anymatch-1.1.0.tgz", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.1.0.tgz", - "dependencies": { - "minimatch": { - "version": "1.0.0", - "from": "https://registry.npmjs.org/minimatch/-/minimatch-1.0.0.tgz", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-1.0.0.tgz", - "dependencies": { - "lru-cache": { - "version": "2.5.0", - "from": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.5.0.tgz", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.5.0.tgz" - }, - "sigmund": { - "version": "1.0.0", - "from": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz" - } - } - } - } - }, - "async-each": { - "version": "0.1.6", - "from": "https://registry.npmjs.org/async-each/-/async-each-0.1.6.tgz", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-0.1.6.tgz" - }, - "glob-parent": { - "version": "1.0.0", - "from": "https://registry.npmjs.org/glob-parent/-/glob-parent-1.0.0.tgz", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-1.0.0.tgz", - "dependencies": { - "is-glob": { - "version": "0.3.0", - "from": "https://registry.npmjs.org/is-glob/-/is-glob-0.3.0.tgz", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-0.3.0.tgz" - } - } - }, - "readdirp": { - "version": "1.3.0", - "from": "https://registry.npmjs.org/readdirp/-/readdirp-1.3.0.tgz", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-1.3.0.tgz", - "dependencies": { - "graceful-fs": { - "version": "2.0.3", - "from": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz" - }, - "minimatch": { - "version": "0.2.14", - "from": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz", - "dependencies": { - "lru-cache": { - "version": "2.5.0", - "from": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.5.0.tgz", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.5.0.tgz" - }, - "sigmund": { - "version": "1.0.0", - "from": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz", - "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.0.tgz" - } - } - }, - "readable-stream": { - "version": "1.0.33", - "from": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.33.tgz", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.33.tgz", - "dependencies": { - "core-util-is": { - "version": "1.0.1", - "from": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz", - "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.1.tgz" - }, - "isarray": { - "version": "0.0.1", - "from": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" - }, - "string_decoder": { - "version": "0.10.31", - "from": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" - }, - "inherits": { - "version": "2.0.1", - "from": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" - } - } - } - } - }, - "fsevents": { - "version": "0.3.5", - "from": "https://registry.npmjs.org/fsevents/-/fsevents-0.3.5.tgz", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-0.3.5.tgz", - "dependencies": { - "nan": { - "version": "1.5.3", - "from": "https://registry.npmjs.org/nan/-/nan-1.5.3.tgz", - "resolved": "https://registry.npmjs.org/nan/-/nan-1.5.3.tgz" - } - } - } - } - }, - "graceful-fs": { - "version": "3.0.5", - "from": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.5.tgz", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.5.tgz" - } - } - }, - "tapable": { - "version": "0.1.8", - "from": "https://registry.npmjs.org/tapable/-/tapable-0.1.8.tgz", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-0.1.8.tgz" - } - } - } - } + "name": "react-webpack-rails-tutorial", + "version": "1.1.0", + "dependencies": {} } diff --git a/package.json b/package.json index c21ce156a..d3c4a93d1 100644 --- a/package.json +++ b/package.json @@ -1,45 +1,17 @@ { - "name": "react-tutorial", - "version": "0.0.0", - "description": "Code from the React tutorial.", + "name": "react-webpack-rails-tutorial", + "version": "1.1.1", + "description": "Code from the React Webpack tutorial.", "main": "server.js", "engines": { "node": "0.10.32" }, - "dependencies": { - "body-parser": "^1.11.0", - "es6-loader": "^0.2.0", - "imports-loader": "^0.6.3", - "jquery": "^2.1.3", - "jsx-loader": "^0.12.2", - "loader-utils": "^0.2.6", - "marked": "^0.3.3", - "react": "^0.12.2", - "react-bootstrap": "^0.13.3", - "sleep": "^1.2.0", - "webpack": "^1.5.3" - }, - "devDependencies": { - "bootstrap-sass": "^3.3.3", - "bootstrap-sass-loader": "0.0.6", - "css-loader": "^0.9.1", - "expose-loader": "^0.6.0", - "express": "^4.11.2", - "extract-text-webpack-plugin": "^0.3.8", - "file-loader": "^0.8.1", - "react-hot-loader": "^1.1.4", - "sass-loader": "^0.4.0-beta.1", - "style-loader": "^0.8.3", - "url-loader": "^0.5.5", - "webpack-dev-server": "^1.7.0" - }, "scripts": { - "test": "echo \"Error: no test specified\" && exit 1", - "start": "node server.js" + "postinstall": "cd ./client && npm install" }, "repository": { "type": "git", - "url": "https://github.com/reactjs/react-tutorial.git" + "url": "https://github.com/justin808/react-webpack-rails-tutorial.git" }, "keywords": [ "react",