Yaltopia-Tickets-App/lib/routes.ts
2026-03-11 22:48:53 +03:00

164 lines
3.6 KiB
TypeScript

import { defineRoutes } from "@sirou/core";
export const routes = defineRoutes({
// Root and Layouts
root: {
path: "/",
guards: ["auth"],
meta: { requiresAuth: true },
},
"(tabs)": {
path: "/(tabs)",
guards: ["auth"],
meta: { requiresAuth: true },
},
// Tabs
"(tabs)/index": {
path: "/(tabs)/index",
guards: ["auth"],
meta: { requiresAuth: true },
},
"(tabs)/payments": {
path: "/(tabs)/payments",
guards: ["auth"],
meta: { requiresAuth: true },
},
"(tabs)/scan": {
path: "/(tabs)/scan",
guards: ["auth"],
meta: { requiresAuth: true },
},
"(tabs)/proforma": {
path: "/(tabs)/proforma",
guards: ["auth"],
meta: { requiresAuth: true },
},
"(tabs)/news": {
path: "/(tabs)/news",
guards: ["auth"],
meta: { requiresAuth: true },
},
history: {
path: "/history",
guards: ["auth"],
meta: { requiresAuth: true },
},
help: {
path: "/help",
guards: ["auth"],
meta: { requiresAuth: true, title: "Help & Support" },
},
privacy: {
path: "/privacy",
guards: ["auth"],
meta: { requiresAuth: true, title: "Privacy Policy" },
},
terms: {
path: "/terms",
guards: ["auth"],
meta: { requiresAuth: true, title: "Terms of Service" },
},
// Stacks
"proforma/[id]": {
path: "/proforma/:id",
params: { id: "string" },
guards: ["auth"],
meta: { requiresAuth: true },
},
"proforma/create": {
path: "/proforma/create",
guards: ["auth"],
meta: { requiresAuth: true },
},
"proforma/edit": {
path: "/proforma/edit",
guards: ["auth"],
meta: { requiresAuth: true },
},
"payments/[id]": {
path: "/payments/:id",
params: { id: "string" },
guards: ["auth"],
meta: { requiresAuth: true },
},
"payment-requests/create": {
path: "/payment-requests/create",
guards: ["auth"],
meta: { requiresAuth: true },
},
"invoices/[id]": {
path: "/invoices/:id",
params: { id: "string" },
guards: ["auth"],
meta: { requiresAuth: true },
},
"notifications/index": {
path: "/notifications/index",
guards: ["auth"],
meta: { requiresAuth: true },
},
"notifications/settings": {
path: "/notifications/settings",
guards: ["auth"],
meta: { requiresAuth: true },
},
"reports/index": {
path: "/reports/index",
guards: ["auth"],
meta: { requiresAuth: true },
},
"documents/index": {
path: "/documents/index",
guards: ["auth"],
meta: { requiresAuth: true },
},
profile: {
path: "/profile",
guards: ["auth"],
meta: { requiresAuth: true },
},
"edit-profile": {
path: "/edit-profile",
guards: ["auth"],
meta: { requiresAuth: true, title: "Edit Profile" },
},
settings: {
path: "/settings",
guards: ["auth"],
meta: { requiresAuth: true },
},
"sms-scan": {
path: "/sms-scan",
guards: ["auth"],
meta: { requiresAuth: true },
},
company: {
path: "/company",
guards: ["auth"],
meta: { requiresAuth: true, title: "Company" },
},
"company-details": {
path: "/company/details",
guards: ["auth"],
meta: { requiresAuth: true, title: "Company details" },
},
"user/create": {
path: "/user/create",
guards: ["auth"],
meta: { requiresAuth: true, title: "Add User" },
},
// Public
login: {
path: "/login",
guards: ["guest"],
meta: { requiresAuth: false, guestOnly: true },
},
register: {
path: "/register",
guards: ["guest"],
meta: { requiresAuth: false, guestOnly: true },
},
});
export type AppRoutes = typeof routes;