redux-devtools/packages/redux-devtools-inspector/src/ActionPreviewHeader.jsx

61 lines
1.4 KiB
React
Raw Normal View History

import React from 'react';
2019-01-10 21:51:14 +03:00
const ActionPreviewHeader = ({
styling,
inspectedPath,
onInspectPath,
tabName,
onSelectTab,
tabs
}) => (
<div key="previewHeader" {...styling('previewHeader')}>
<div {...styling('tabSelector')}>
{tabs.map(tab => (
<div
onClick={() => onSelectTab(tab.name)}
key={tab.name}
{...styling(
[
'selectorButton',
tab.name === tabName && 'selectorButtonSelected'
2019-01-10 21:51:14 +03:00
],
tab.name === tabName
)}
>
{tab.name}
</div>
))}
</div>
<div {...styling('inspectedPath')}>
{inspectedPath.length ? (
<span {...styling('inspectedPathKey')}>
<a
onClick={() => onInspectPath([])}
{...styling('inspectedPathKeyLink')}
>
{tabName}
</a>
</span>
) : (
tabName
)}
{inspectedPath.map((key, idx) =>
idx === inspectedPath.length - 1 ? (
<span key={key}>{key}</span>
) : (
<span key={key} {...styling('inspectedPathKey')}>
<a
onClick={() => onInspectPath(inspectedPath.slice(0, idx + 1))}
{...styling('inspectedPathKeyLink')}
>
{key}
</a>
2019-01-10 21:51:14 +03:00
</span>
)
)}
</div>
</div>
);
export default ActionPreviewHeader;