1
0
mirror of https://github.com/Pomax/BezierInfo-2.git synced 2025-08-28 18:49:57 +02:00

let's deploy this.

This commit is contained in:
Pomax
2016-01-12 18:55:20 -08:00
parent 8db94a3f50
commit 419fe35edf
20 changed files with 251 additions and 275 deletions

View File

@@ -0,0 +1,33 @@
var React = require("react");
var noop = require("../../lib/noop");
module.exports = function(Component) {
var options = Component.keyHandlingOptions,
propName = options.propName || "",
values = options.values || {},
controller = options.controller || noop,
getDefaultProps = Component.getDefaultProps;
return React.createClass({
values: values,
getDefaultProps: getDefaultProps,
onKeyDown: function(event, api) {
var v = this.values[event.keyCode];
if(v) {
event.preventDefault();
if (typeof v === "function") {
v(api);
} else {
api[propName] += v;
controller(api);
}
}
},
render: function() {
return <Component {...this.props} onKeyDown={this.onKeyDown} />;
}
});
};