UNPKG

770 BJavaScriptView Raw
1module.exports = function(proto, react) {
2 var createElement = react.createElement;
3
4 var _render = proto.render;
5
6 var mixins = proto.mixins = proto.mixins || [];
7 mixins.unshift(require('./mixins/stream'));
8 mixins.unshift(require('./mixins/application')(react));
9
10 return react.createClass(Object.assign({}, proto, {
11 displayName: proto.displayName,
12
13 bindTargetValue: function(name) {
14 return function(evt) {
15 this.setState({[name]: evt.target.value});
16 }.bind(this);
17 },
18
19 render: function() {
20 var self = this;
21 var val = _render.call(self, createElement, null, self.props, self.state || {});
22 return Array.isArray(val) ?
23 createElement.apply(null, ['div', null].concat(val)) :
24 val;
25 }
26 }));
27};