update from RIFT as of 696b75d2fe9fb046261b08c616f1bcf6c0b54a9b third try
[osm/UI.git] / skyquake / plugins / admin / src / components / ListCard.jsx
1 import React from 'react'
2 import ColumnCard from './ColumnCard'
3 import { ListIcon } from 'react-open-iconic-svg';
4
5 export default class extends React.Component {
6     render() {
7         try {
8             const { model, path, isSelected, openElement } = this.props;
9             const element = model.getElement(path);
10             const name = element.name;
11             const numItems = element.value ? Array.isArray(element.value) ? element.value.length : 1 : 0;
12             console.debug(`ListCard: ${name}`);
13             return (
14                 <ColumnCard path={path} isSelected={isSelected} >
15                     <ListIcon />
16                     <div className='list-card' style={{cursor: 'pointer'}} onClick={() => openElement({ path })}>
17                         <span style={{ paddingRight: '8px' }} >{`${name}`}</span><span style={{ fontSize: 'small', verticalAlign: 'top' }}>{`(${numItems})`}</span>
18                     </div>
19                 </ColumnCard>
20             )
21         } catch (e) {
22             console.error("component render", e);
23         }
24     }
25 }