import {useState} from 'react';
import {browserHistory} from 'react-router';
import styled from '@emotion/styled';
import {Location} from 'history';
import Feature from 'sentry/components/acl/feature';
import {Alert} from 'sentry/components/alert';
import * as Layout from 'sentry/components/layouts/thirds';
import PageFiltersContainer from 'sentry/components/organizations/pageFilters/container';
import SentryDocumentTitle from 'sentry/components/sentryDocumentTitle';
import {Tabs} from 'sentry/components/tabs';
import {t} from 'sentry/locale';
import {Organization, Project} from 'sentry/types';
import {defined} from 'sentry/utils';
import EventView from 'sentry/utils/discover/eventView';
import {useMetricsCardinalityContext} from 'sentry/utils/performance/contexts/metricsCardinality';
import {PerformanceEventViewProvider} from 'sentry/utils/performance/contexts/performanceEventViewContext';
import {decodeScalar} from 'sentry/utils/queryString';
import {normalizeUrl} from 'sentry/utils/withDomainRequired';
import {getTransactionName} from '../../utils';
import TransactionHeader from '../header';
import usePageTabs from '../pageLayout/usePageTabs';
import {TransactionThresholdMetric} from '../transactionThresholdModal';
import Tab from './tabs';
type Props = {
children: React.ReactNode;
organization: Organization;
project: undefined | Project;
tab: Tab;
title: string;
};
function PageLayout({children, tab, title, organization, project}: Props) {
return (
{
setTransactionThreshold(threshold);
setTransactionThresholdMetric(metric);
}}
metricsCardinality={metricsCardinality}
/>
{defined(error) && (
{error}
)}
{children}
);
}
function NoAccess() {
return {t("You don't have access to this feature")};
}
const StyledAlert = styled(Alert)`
grid-column: 1/3;
margin: 0;
`;
export default PageLayout;