@aappddeevv/dynamics-client-ui
Version:
## What is it? A library to help you create great dynamics applications.
28 lines • 1.33 kB
JavaScript
;
/** Simple list with click/doubleClick and single selection. */
Object.defineProperty(exports, "__esModule", { value: true });
const React = require("react");
const cx = require("classnames");
const Ellipsis_1 = require("./Ellipsis");
const styles = require("./CrmList.css");
/**
* Presentational component for displaying a list. Single selection only.
**/
exports.CrmList = (props) => {
const onClick = (id) => () => props.onClick ? props.onClick(id) : null;
const onDoubleClick = (id) => () => props.onDoubleClick ? props.onDoubleClick(id) : null;
const items = props.items || [];
const classes = props.classes || {};
return (React.createElement("ul", { className: cx(styles.crmList, classes.list) }, items.map(i => {
const idCheck = props.selectedId === i.id;
const selected = [
{ [styles.selected]: idCheck },
classes.selected ? { [classes.selected]: idCheck } : null
];
const title = i.title || i.label;
return (React.createElement("li", { key: i.id, id: i.id, className: cx(selected, classes.item), title: title, onClick: onClick(i.id), onDoubleClick: onDoubleClick(i.id) },
React.createElement(Ellipsis_1.default, null, i.label)));
})));
};
exports.default = exports.CrmList;
//# sourceMappingURL=CrmList.js.map