Finish addons packaging

- Add missing object-assign dependency
- Add batchedUpdates to ReactDOMClient, rename the two addons to `unstable_`
- Delete react/addons/* (leaving react/addons with a slightly updated warning)
- Add README.md, LICENSE, PATENTS to each addons package
This commit is contained in:
Ben Alpert
2015-07-02 23:33:16 +02:00
parent a88c3c9f85
commit 33d5201a94
16 changed files with 20 additions and 23 deletions
+12 -9
View File
@@ -22,11 +22,6 @@ var addons = {
module: 'ReactTransitionGroup',
name: 'transition-group',
},
batchedUpdates: {
module: 'ReactUpdates',
method: 'batchedUpdates',
name: 'batched-updates',
},
cloneWithProps: {
module: 'cloneWithProps',
name: 'clone-with-props',
@@ -61,7 +56,9 @@ function generateSource(info) {
function buildReleases() {
var pkgTemplate = grunt.file.readJSON('./packages/react-addons/package.json');
// var done = this.async();
var license = grunt.file.read('./LICENSE');
var patents = grunt.file.read('./PATENTS');
Object.keys(addons).map(function(k) {
var info = addons[k];
var pkgName = 'react-addons-' + info.name;
@@ -73,10 +70,16 @@ function buildReleases() {
grunt.file.mkdir(destDir);
fs.writeFileSync(path.join(destDir, 'index.js'), generateSource(info));
fs.writeFileSync(path.join(destDir, 'package.json'), JSON.stringify(pkgData, null, 2));
// TODO: Make a readme. Consider using a template and sticking it in the original source directory. Also, maybe a license, patents file.
fs.writeFileSync(path.join(destDir, 'LICENSE'), license);
fs.writeFileSync(path.join(destDir, 'PATENTS'), patents);
fs.writeFileSync(
path.join(destDir, 'README.md'),
'# ' + pkgName + '\n\n' +
'This package provides the React ' + k + ' add-on. See ' +
'http://facebook.github.io/react/docs/addons.html for more information.\n'
);
});
// done();
}
function packReleases() {
+1
View File
@@ -53,6 +53,7 @@
"gzip-js": "~0.3.2",
"jasmine-tapreporter": "~0.2.2",
"jest-cli": "^0.4.13",
"object-assign": "^3.0.0",
"optimist": "^0.6.1",
"phantomjs": "^1.9.17",
"platform": "^1.1.0",
+1 -1
View File
@@ -2,7 +2,7 @@ var warning = require('./lib/warning');
warning(
false,
"require('react/addons') is deprecated. " +
"Access using require('react/addons/{addon}') instead."
"Access using require('react-addons-{addon}') instead."
);
module.exports = require('./lib/ReactWithAddons');
@@ -1 +0,0 @@
module.exports = require('../lib/ReactCSSTransitionGroup');
@@ -1 +0,0 @@
module.exports = require('../lib/LinkedStateMixin');
-1
View File
@@ -1 +0,0 @@
module.exports = require('../lib/ReactDefaultPerf');
-1
View File
@@ -1 +0,0 @@
module.exports = require('../lib/ReactComponentWithPureRenderMixin');
-1
View File
@@ -1 +0,0 @@
module.exports = require('../lib/ReactTestUtils');
-1
View File
@@ -1 +0,0 @@
module.exports = require('../lib/ReactTransitionGroup');
-1
View File
@@ -1 +0,0 @@
module.exports = require('../lib/ReactUpdates').batchedUpdates;
-1
View File
@@ -1 +0,0 @@
module.exports = require('../lib/cloneWithProps');
-1
View File
@@ -1 +0,0 @@
module.exports = require('../lib/ReactFragment').create;
@@ -1 +0,0 @@
module.exports = require('../lib/renderSubtreeIntoContainer');
-1
View File
@@ -1 +0,0 @@
module.exports = require('../lib/shallowCompare');
-1
View File
@@ -1 +0,0 @@
module.exports = require('../lib/update');
+6 -1
View File
@@ -20,6 +20,7 @@ var ReactInstanceHandles = require('ReactInstanceHandles');
var ReactMount = require('ReactMount');
var ReactPerf = require('ReactPerf');
var ReactReconciler = require('ReactReconciler');
var ReactUpdates = require('ReactUpdates');
var findDOMNode = require('findDOMNode');
var renderSubtreeIntoContainer = require('renderSubtreeIntoContainer');
@@ -33,7 +34,11 @@ var React = {
findDOMNode: findDOMNode,
render: render,
unmountComponentAtNode: ReactMount.unmountComponentAtNode,
_renderSubtreeIntoContainer: renderSubtreeIntoContainer,
/* eslint-disable camelcase */
unstable_batchedUpdates: ReactUpdates.batchedUpdates,
unstable_renderSubtreeIntoContainer: renderSubtreeIntoContainer,
/* eslint-enable camelcase */
};
// Inject the runtime into a devtools global hook regardless of browser.