UNPKG

graft-react

Version:

react admin and helper components for graft-db

51 lines (50 loc) 2.18 kB
"use strict"; var __extends = (this && this.__extends) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; var React = require("react"); var ListItem_1 = require("react-md/lib/Lists/ListItem"); var FontIcons_1 = require("react-md/lib/FontIcons"); var utils_1 = require("../utils"); var ObjectItem = (function (_super) { __extends(ObjectItem, _super); function ObjectItem() { var _this = _super !== null && _super.apply(this, arguments) || this; _this.remove = function (e) { e.preventDefault(); e.stopPropagation(); var _a = _this.props, object = _a.object, onRemove = _a.onRemove; if (!onRemove) { return; } onRemove(object); }; _this.click = function (e) { e.preventDefault(); var _a = _this.props, object = _a.object, onClick = _a.onClick; if (!onClick) { return; } onClick(object); }; _this.toggleStar = function (e) { e.stopPropagation(); e.preventDefault(); var _a = _this.props, object = _a.object, onToggleStar = _a.onToggleStar; if (!onToggleStar) { return; } onToggleStar(object); }; return _this; } ObjectItem.prototype.render = function () { var _a = this.props, object = _a.object, onClick = _a.onClick, onRemove = _a.onRemove; var remove = onRemove ? React.createElement(FontIcons_1.default, { onClick: this.remove }, "delete") : undefined; return (React.createElement(ListItem_1.default, { leftIcon: React.createElement(FontIcons_1.default, { onClick: this.toggleStar }, object._star ? 'star' : 'star_border'), primaryText: utils_1.friendlyObjectName(object), secondaryText: object.type.name, rightIcon: remove, onClick: onClick ? this.click : undefined })); }; return ObjectItem; }(React.Component)); exports.ObjectItem = ObjectItem;