mirror of
https://github.com/kremalicious/umami.git
synced 2025-02-14 21:10:34 +01:00
Switch file based redirect to rewrites.
This commit is contained in:
parent
cbd5f7b556
commit
377a22f1ea
@ -167,6 +167,10 @@ const config = {
|
|||||||
source: '/telemetry.js',
|
source: '/telemetry.js',
|
||||||
destination: '/api/scripts/telemetry',
|
destination: '/api/scripts/telemetry',
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
source: '/teams/:teamId/:path*',
|
||||||
|
destination: '/:path*',
|
||||||
|
},
|
||||||
];
|
];
|
||||||
},
|
},
|
||||||
async redirects() {
|
async redirects() {
|
||||||
|
@ -6,6 +6,7 @@ import Lightbulb from 'assets/lightbulb.svg';
|
|||||||
import Magnet from 'assets/magnet.svg';
|
import Magnet from 'assets/magnet.svg';
|
||||||
import Tag from 'assets/tag.svg';
|
import Tag from 'assets/tag.svg';
|
||||||
import Target from 'assets/target.svg';
|
import Target from 'assets/target.svg';
|
||||||
|
import Path from 'assets/path.svg';
|
||||||
import styles from './ReportTemplates.module.css';
|
import styles from './ReportTemplates.module.css';
|
||||||
import { useMessages, useTeamUrl } from 'components/hooks';
|
import { useMessages, useTeamUrl } from 'components/hooks';
|
||||||
|
|
||||||
@ -44,6 +45,12 @@ export function ReportTemplates({ showHeader = true }: { showHeader?: boolean })
|
|||||||
url: renderTeamUrl('/reports/goals'),
|
url: renderTeamUrl('/reports/goals'),
|
||||||
icon: <Target />,
|
icon: <Target />,
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: formatMessage(labels.journey),
|
||||||
|
description: formatMessage(labels.journeyDescription),
|
||||||
|
url: renderTeamUrl('/reports/journey'),
|
||||||
|
icon: <Path />,
|
||||||
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/dashboard/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/reports/[reportId]/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/reports/create/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/reports/event-data/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/reports/funnel/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/reports/insights/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,8 +0,0 @@
|
|||||||
import Page from 'app/(main)/reports/page';
|
|
||||||
import { Metadata } from 'next';
|
|
||||||
|
|
||||||
export default Page;
|
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
|
||||||
title: 'Team Reports',
|
|
||||||
};
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/reports/retention/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/reports/utm/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,28 +0,0 @@
|
|||||||
'use client';
|
|
||||||
import { ReactNode } from 'react';
|
|
||||||
import MenuLayout from 'components/layout/MenuLayout';
|
|
||||||
import { useMessages } from 'components/hooks';
|
|
||||||
|
|
||||||
export default function ({ children, teamId }: { children: ReactNode; teamId: string }) {
|
|
||||||
const { formatMessage, labels } = useMessages();
|
|
||||||
|
|
||||||
const items = [
|
|
||||||
{
|
|
||||||
key: 'team',
|
|
||||||
label: formatMessage(labels.team),
|
|
||||||
url: `/teams/${teamId}/settings/team`,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key: 'websites',
|
|
||||||
label: formatMessage(labels.websites),
|
|
||||||
url: `/teams/${teamId}/settings/websites`,
|
|
||||||
},
|
|
||||||
{
|
|
||||||
key: 'members',
|
|
||||||
label: formatMessage(labels.members),
|
|
||||||
url: `/teams/${teamId}/settings/members`,
|
|
||||||
},
|
|
||||||
].filter(n => n);
|
|
||||||
|
|
||||||
return <MenuLayout items={items}>{children}</MenuLayout>;
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
import TeamSettingsLayout from './TeamSettingsLayout';
|
|
||||||
import { Metadata } from 'next';
|
|
||||||
|
|
||||||
export default function ({ children, params: { teamId } }) {
|
|
||||||
return <TeamSettingsLayout teamId={teamId}>{children}</TeamSettingsLayout>;
|
|
||||||
}
|
|
||||||
|
|
||||||
export const metadata: Metadata = {
|
|
||||||
title: 'Team Settings',
|
|
||||||
};
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/settings/teams/[teamId]/members/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/settings/teams/[teamId]/team/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/settings/websites/[websiteId]/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/settings/teams/[teamId]/websites/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/websites/[websiteId]/compare/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/websites/[websiteId]/event-data/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/websites/[websiteId]/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/websites/[websiteId]/realtime/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/websites/[websiteId]/reports/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
@ -1,3 +0,0 @@
|
|||||||
import Page from 'app/(main)/websites/page';
|
|
||||||
|
|
||||||
export default Page;
|
|
Loading…
x
Reference in New Issue
Block a user