import React, {ReactElement} from 'react'; import classNames from 'classnames'; import {IArticle} from 'superdesk-api'; import {SwimlaneField} from './SwimlaneField'; import {DEFAULT_SWIMLANE_FIELDS_CONFIG} from '../constants'; import {appConfig} from 'appConfig'; import {ILegacyMultiSelect, IMultiSelectNew} from './ItemList'; import {MultiSelectCheckbox} from './MultiSelectCheckbox'; const renderGroup = (groups, item: IArticle) => groups.map((group, groupIndex) => ( { group.fields .map((field, fieldIndex) => ( )) } )); interface IProps { item: IArticle; itemSelected: boolean; isLocked: boolean; getActionsMenu: (fn) => ReactElement; multiSelect: IMultiSelectNew | ILegacyMultiSelect; } export class ItemSwimlane extends React.Component { render() { const {item, itemSelected, isLocked, getActionsMenu, multiSelect} = this.props; const swimlaneViewFieldsConfig = appConfig.swimlaneViewFields ?? DEFAULT_SWIMLANE_FIELDS_CONFIG; return (
{renderGroup(swimlaneViewFieldsConfig.left, item)} {renderGroup(swimlaneViewFieldsConfig.right, item)} { getActionsMenu((toggle, stopEvent) => (
)) }
); } }