UNPKG

kea-react

Version:

Componentes comunes de react

41 lines (40 loc) 2.34 kB
"use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports, "__esModule", { value: true }); var React = require("react"); var node_1 = require("./node"); var index_1 = require("../treeview/index"); var logic_1 = require("./logic"); var reselect_1 = require("reselect"); var HOC_1 = require("../HOC"); var JsonViewComponentControlled = /** @class */ (function (_super) { __extends(JsonViewComponentControlled, _super); function JsonViewComponentControlled() { var _this = _super !== null && _super.apply(this, arguments) || this; _this.valueSelector = function (props) { return props.value; }; _this.onPropClickSelector = function (props) { return props.onPropClick; }; _this.treeSelector = reselect_1.createSelector(_this.valueSelector, function (value) { return [logic_1.valueToJsonTreeView(value)]; }); _this.rendererSelector = reselect_1.createSelector(_this.onPropClickSelector, function (onPropClick) { return function (value, path) { var key = path.length == 0 ? "" : path[path.length - 1]; return React.createElement(node_1.JsonNodeComponent, { key: key, propname: key, value: value, onClick: onPropClick && (function () { return onPropClick(path.slice(1)); }) }); }; }); return _this; } JsonViewComponentControlled.prototype.render = function () { return React.createElement(index_1.TreeComponent, { onStateChange: this.props.onStateChanged, state: this.props.state, rowRenderer: this.rendererSelector(this.props), value: this.treeSelector(this.props) }); }; return JsonViewComponentControlled; }(React.PureComponent)); exports.initialStateTree = { collapsed: [] }; exports.JsonViewComponent = HOC_1.MakeUncontrolled("state", "onStateChanged", exports.initialStateTree)(JsonViewComponentControlled);