40 lines
1.3 KiB
TypeScript
40 lines
1.3 KiB
TypeScript
import {
|
|
type RouteConfig,
|
|
index,
|
|
layout,
|
|
prefix,
|
|
route,
|
|
} from "@react-router/dev/routes";
|
|
|
|
export default [
|
|
index("routes/index.tsx"),
|
|
layout("routes/auth/layout.tsx", [
|
|
route("/login", "routes/auth/login.tsx"),
|
|
route("/register", "routes/auth/register.tsx"),
|
|
]),
|
|
...prefix("/app", [
|
|
layout("routes/app/providers.tsx", [
|
|
route("/settings", "routes/app/settings.tsx"),
|
|
layout("routes/app/layout.tsx", [
|
|
index("routes/app/index.tsx"),
|
|
route("/invite/:inviteCode", "routes/app/invite.tsx"),
|
|
...prefix("/@me", [
|
|
layout("routes/app/me/layout.tsx", [
|
|
index("routes/app/me/index.tsx"),
|
|
route(
|
|
"/channels/:channelId",
|
|
"routes/app/me/channel.tsx",
|
|
),
|
|
]),
|
|
]),
|
|
...prefix("/server/:serverId", [
|
|
layout("routes/app/server/layout.tsx", [
|
|
index("routes/app/server/index.tsx"),
|
|
route("/:channelId", "routes/app/server/channel.tsx"),
|
|
]),
|
|
]),
|
|
]),
|
|
]),
|
|
]),
|
|
] satisfies RouteConfig;
|