2017-10-12 00:01:37 +03:00
|
|
|
import * as React from 'react';
|
|
|
|
import { observer } from 'mobx-react';
|
|
|
|
|
|
|
|
import { IMenuItem } from '../../services';
|
|
|
|
|
|
|
|
import { MenuItemUl } from './styled.elements';
|
|
|
|
import { MenuItem } from './MenuItem';
|
|
|
|
|
|
|
|
interface MenuItemsProps {
|
|
|
|
items: IMenuItem[];
|
|
|
|
active?: boolean;
|
|
|
|
onActivate?: (item: IMenuItem) => void;
|
2017-11-21 17:55:20 +03:00
|
|
|
style?: React.CSSProperties;
|
2017-10-12 00:01:37 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
@observer
|
|
|
|
export class MenuItems extends React.Component<MenuItemsProps> {
|
|
|
|
render() {
|
|
|
|
const { items } = this.props;
|
|
|
|
const active = this.props.active == null ? true : this.props.active;
|
|
|
|
return (
|
2017-11-21 17:55:20 +03:00
|
|
|
<MenuItemUl style={this.props.style} active={active}>
|
2017-10-12 00:01:37 +03:00
|
|
|
{items.map((item, idx) => (
|
|
|
|
<MenuItem key={idx} item={item} onActivate={this.props.onActivate} />
|
|
|
|
))}
|
|
|
|
</MenuItemUl>
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|