cosmo-ui
Version:
Common React components
48 lines • 2.36 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var React = require("react");
var cx = require("classnames");
var constants_1 = require("../constants");
var flex_1 = require("./flex");
var styles = require('../../src/styles/components/card.scss');
var Card = (function (_super) {
tslib_1.__extends(Card, _super);
function Card() {
var _this = _super !== null && _super.apply(this, arguments) || this;
_this.shortcutProps = constants_1.ROW_SHORTCUT_PROPS;
_this.dragEventHandler = function (callback) {
return function (e) {
if (callback && !_this.props.disabled)
return callback(e);
e.preventDefault();
};
};
return _this;
}
Card.prototype.render = function () {
var _a = this.props, disabled = _a.disabled, children = _a.children, draggable = _a.draggable, onDragStart = _a.onDragStart, onDragEnd = _a.onDragEnd, onDragEnter = _a.onDragEnter, onDragLeave = _a.onDragLeave, onDragOver = _a.onDragOver, onDrop = _a.onDrop, onDoubleClick = _a.onDoubleClick;
var dragEventHandler = this.dragEventHandler;
return (React.createElement("div", tslib_1.__assign({}, this.baseProps(), { draggable: !disabled && draggable, onDragStart: dragEventHandler(onDragStart), onDragEnd: dragEventHandler(onDragEnd), onDragEnter: dragEventHandler(onDragEnter), onDragLeave: dragEventHandler(onDragLeave), onDragOver: dragEventHandler(onDragOver), onDrop: dragEventHandler(onDrop), onDoubleClick: onDoubleClick }), children));
};
Card.prototype.classNames = function () {
var _a = this.props, active = _a.active, selected = _a.selected, invalid = _a.invalid, dropTarget = _a.dropTarget, disabled = _a.disabled;
return cx(_super.prototype.classNames.call(this), styles.card, (_b = {},
_b[styles.active] = active,
_b[styles.selected] = selected,
_b[styles.invalid] = invalid,
_b[styles.dropTarget] = dropTarget,
_b[styles.disabled] = disabled,
_b));
var _b;
};
return Card;
}(flex_1.Flex));
Card.defaultProps = {
align: 'center',
justify: 'flex-start',
column: 'xs',
fullWidth: true,
};
exports.Card = Card;
//# sourceMappingURL=card.js.map