310 lines
7.2 KiB
TypeScript
310 lines
7.2 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)/invoices": {
|
|
path: "/(tabs)/invoices",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
|
|
history: {
|
|
path: "/history",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
help: {
|
|
path: "/help",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Help & Support" },
|
|
},
|
|
faq: {
|
|
path: "/faq",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "FAQ" },
|
|
},
|
|
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": {
|
|
path: "/proforma",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Proforma" },
|
|
},
|
|
"proforma/create": {
|
|
path: "/proforma/create",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"proforma/edit": {
|
|
path: "/proforma/edit",
|
|
params: { id: "string" },
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"payments/[id]": {
|
|
path: "/payments/:id",
|
|
params: { id: "string" },
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"payment-requests/[id]": {
|
|
path: "/payment-requests/:id",
|
|
params: { id: "string" },
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"payment-requests/create": {
|
|
path: "/payment-requests/create",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"customers/create": {
|
|
path: "/customers/create",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"customers/[id]": {
|
|
path: "/customers/:id",
|
|
params: { id: "string" },
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"payments/create": {
|
|
path: "/payments/create",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Create Payment" },
|
|
},
|
|
"invoices/index": {
|
|
path: "/invoices/index",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Invoices" },
|
|
},
|
|
"invoices/[id]": {
|
|
path: "/invoices/:id",
|
|
params: { id: "string" },
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"invoices/create": {
|
|
path: "/invoices/create",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"invoices/edit": {
|
|
path: "/invoices/edit",
|
|
params: { id: "string" },
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"news/index": {
|
|
path: "/news/index",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "News" },
|
|
},
|
|
"news/[id]": {
|
|
path: "/news/: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" },
|
|
},
|
|
"change-pin": {
|
|
path: "/change-pin",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Change PIN" },
|
|
},
|
|
settings: {
|
|
path: "/settings",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"sms-scan": {
|
|
path: "/sms-scan",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"verify-payment": {
|
|
path: "/verify-payment",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Verify Payment" },
|
|
},
|
|
"verify-payment-result": {
|
|
path: "/verify-payment-result",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Verification Result" },
|
|
},
|
|
"add-receipt": {
|
|
path: "/add-receipt",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Add Receipt" },
|
|
},
|
|
company: {
|
|
path: "/company",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Company" },
|
|
},
|
|
"company-details": {
|
|
path: "/company/details",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Company details" },
|
|
},
|
|
"company/edit": {
|
|
path: "/company/edit",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Edit Company" },
|
|
},
|
|
"team/index": {
|
|
path: "/team",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Workers" },
|
|
},
|
|
"team/[id]/details": {
|
|
path: "/team/:id/details",
|
|
params: { id: "string" },
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Worker Details" },
|
|
},
|
|
"user/create": {
|
|
path: "/user/create",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Add User" },
|
|
},
|
|
"declarations/index": {
|
|
path: "/declarations/index",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Declarations" },
|
|
},
|
|
"declarations/create": {
|
|
path: "/declarations/create",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Create Declaration" },
|
|
},
|
|
"declarations/edit": {
|
|
path: "/declarations/edit",
|
|
params: { id: "string" },
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Edit Declaration" },
|
|
},
|
|
"declarations/[id]": {
|
|
path: "/declarations/:id",
|
|
params: { id: "string" },
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true, title: "Declaration Details" },
|
|
},
|
|
// Public
|
|
login: {
|
|
path: "/login",
|
|
guards: ["guest"],
|
|
meta: { requiresAuth: false, guestOnly: true },
|
|
},
|
|
otp: {
|
|
path: "/otp",
|
|
params: { phone: "string", verificationId: "string" },
|
|
guards: ["guest"],
|
|
meta: { requiresAuth: false, guestOnly: true },
|
|
},
|
|
register: {
|
|
path: "/register",
|
|
guards: ["guest"],
|
|
meta: { requiresAuth: false, guestOnly: true },
|
|
},
|
|
"set-pin": {
|
|
path: "/set-pin",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"pin-lock": {
|
|
path: "/pin-lock",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"forgot-pin": {
|
|
path: "/forgot-pin",
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
"forgot-pin-verify": {
|
|
path: "/forgot-pin-verify",
|
|
params: { phone: "string", verificationId: "string" },
|
|
guards: ["auth"],
|
|
meta: { requiresAuth: true },
|
|
},
|
|
});
|
|
|
|
export type AppRoutes = typeof routes;
|