import React from 'react'; import get from 'lodash/get'; import { closeTabs } from 'providers/ReduxStore/slices/tabs'; import { useDispatch } from 'react-redux'; import { findItemInCollection } from 'utils/collections'; import StyledWrapper from './StyledWrapper'; import { IconAlertTriangle } from '@tabler/icons'; const RequestTab = ({ tab, collection }) => { const dispatch = useDispatch(); const handleCloseClick = (event) => { event.stopPropagation(); event.preventDefault(); dispatch( closeTabs({ tabUids: [tab.uid] }) ); }; const getMethodColor = (method = '') => { let color = ''; method = method.toLocaleLowerCase(); switch (method) { case 'get': { color = 'var(--color-method-get)'; break; } case 'post': { color = 'var(--color-method-post)'; break; } case 'put': { color = 'var(--color-method-put)'; break; } case 'delete': { color = 'var(--color-method-delete)'; break; } case 'patch': { color = 'var(--color-method-patch)'; break; } case 'options': { color = 'var(--color-method-options)'; break; } case 'head': { color = 'var(--color-method-head)'; break; } } return color; }; const item = findItemInCollection(collection, tab.uid); if (!item) { return (
Not Found
handleCloseClick(e)}>
); } const method = item.draft ? get(item, 'draft.request.method') : get(item, 'request.method'); return (
{method} {item.name}
handleCloseClick(e)}> {!item.draft ? ( ) : ( )}
); }; export default RequestTab;