diff --git a/apps/infoalloggi/package-lock.json b/apps/infoalloggi/package-lock.json index 730fd51..7311341 100644 --- a/apps/infoalloggi/package-lock.json +++ b/apps/infoalloggi/package-lock.json @@ -95,7 +95,7 @@ "zod": "^4.1.12" }, "devDependencies": { - "@biomejs/biome": "^2.4.6", + "@biomejs/biome": "2.4.6", "@hookform/devtools": "^4.4.0", "@react-email/preview-server": "^5.2.8", "@total-typescript/ts-reset": "^0.6.1", diff --git a/apps/infoalloggi/package.json b/apps/infoalloggi/package.json index f40dc55..577dfae 100644 --- a/apps/infoalloggi/package.json +++ b/apps/infoalloggi/package.json @@ -108,7 +108,7 @@ "zod": "^4.1.12" }, "devDependencies": { - "@biomejs/biome": "^2.4.6", + "@biomejs/biome": "2.4.6", "@hookform/devtools": "^4.4.0", "@react-email/preview-server": "^5.2.8", "@total-typescript/ts-reset": "^0.6.1", diff --git a/apps/infoalloggi/src/components/area-riservata/ordini.tsx b/apps/infoalloggi/src/components/area-riservata/ordini.tsx index ccb8e41..29f25e2 100644 --- a/apps/infoalloggi/src/components/area-riservata/ordini.tsx +++ b/apps/infoalloggi/src/components/area-riservata/ordini.tsx @@ -67,19 +67,16 @@ const AdminOrdiniModal = ({

Id Ordine: {data.ordine_id}

- {data.isActive && - data.paymentstatus === PaymentStatusEnum.success && ( -
- - - -
- )} + {data.isActive && ( + + + + )} setSelected(null)} data={data} diff --git a/apps/infoalloggi/src/pages/annunci.tsx b/apps/infoalloggi/src/pages/annunci.tsx index 85e7c96..49f9b29 100644 --- a/apps/infoalloggi/src/pages/annunci.tsx +++ b/apps/infoalloggi/src/pages/annunci.tsx @@ -63,6 +63,9 @@ type AnnunciPageProps = { options: AnnunciOptions; }; +/** + * Pagina annunci: /annunci + */ const Annunci = ({ options }: AnnunciPageProps) => { const { t } = useTranslation(); diff --git a/apps/infoalloggi/src/pages/annuncio/[cod].tsx b/apps/infoalloggi/src/pages/annuncio/[cod].tsx index b4e6587..fa14969 100644 --- a/apps/infoalloggi/src/pages/annuncio/[cod].tsx +++ b/apps/infoalloggi/src/pages/annuncio/[cod].tsx @@ -84,6 +84,11 @@ type AnnuncioProps = { ogUrl: string; } | null; }; + +/** + * Pagina di dettaglio annuncio: /annuncio/[cod] + * Questa pagina mostra i dettagli di un annuncio specifico, identificato dal codice (cod) passato come parametro. Utilizza getStaticProps per prefetchare i dati dell'annuncio e le relative informazioni meta per SEO e condivisione sui social media. Se l'annuncio รจ in stato "Sospeso" o se si verifica un errore durante il caricamento, viene mostrata una pagina di errore. + */ const AnnuncioDettaglio: NextPage = ({ cod, flag, diff --git a/apps/infoalloggi/src/pages/api/revalidation.ts b/apps/infoalloggi/src/pages/api/revalidation.ts index 693e89f..4154d44 100644 --- a/apps/infoalloggi/src/pages/api/revalidation.ts +++ b/apps/infoalloggi/src/pages/api/revalidation.ts @@ -1,6 +1,11 @@ import type { NextApiRequest, NextApiResponse } from "next"; import { env } from "~/env"; +/** + * /api/revalidation + * Endpoint per la revalidazione delle pagine. Richiede un token segreto e il percorso della pagina da revalidare. + * Utilizzato per forzare Next.js a rigenerare una pagina statica quando i dati sottostanti cambiano, ad esempio dopo un aggiornamento del database. + */ export default async function handler( req: NextApiRequest, res: NextApiResponse, diff --git a/apps/infoalloggi/src/pages/api/stripe-webhook.ts b/apps/infoalloggi/src/pages/api/stripe-webhook.ts index 22dc1cf..66f52bf 100644 --- a/apps/infoalloggi/src/pages/api/stripe-webhook.ts +++ b/apps/infoalloggi/src/pages/api/stripe-webhook.ts @@ -6,6 +6,11 @@ import { appRouter } from "~/server/api/root"; import { addApiAuthToContext, createTRPCContext, t } from "~/server/api/trpc"; import { zOrdineId } from "~/server/utils/zod_types"; +/** + * /api/stripe-webhook + * Endpoint per gestire i webhook di Stripe. Gestisce eventi come la creazione, il successo, l'annullamento e il fallimento dei payment intent. + * Verifica la firma del webhook e chiama le funzioni appropriate nel router tRPC per aggiornare lo stato degli ordini in base agli eventi ricevuti. + */ const handler = async ( req: NextApiRequest, res: NextApiResponse, diff --git a/apps/infoalloggi/src/pages/api/tiles/[[...slug]].ts b/apps/infoalloggi/src/pages/api/tiles/[[...slug]].ts index 55e1c24..78cf0f0 100644 --- a/apps/infoalloggi/src/pages/api/tiles/[[...slug]].ts +++ b/apps/infoalloggi/src/pages/api/tiles/[[...slug]].ts @@ -14,12 +14,12 @@ export function getTilesClient() { return tiles; } /* + * /api/tiles/[[...slug]] * This API route is used to fetch tiles from OpenStreetMap and cache them in KeyDb. * The tile URL is constructed using the provided slug parameters: /api/tiles/s/z/x/y * The slug should be an array of 4 elements: [s, z, x, y]. * The API caches the tile for 30 days and sets appropriate headers for caching. */ - export default async function handler( req: NextApiRequest, res: NextApiResponse, diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/annunci.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/annunci.tsx index ee023c3..15e4076 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/annunci.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/annunci.tsx @@ -16,6 +16,9 @@ import type { NextPageWithLayout } from "~/pages/_app"; import { generateSSGHelper } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina di gestione annunci per admin: /area-riservata/admin/annunci + */ const Admin_Annunci: NextPageWithLayout = () => { const { data, isLoading, refetch } = api.annunci.getAnnunciList.useQuery(); const utils = api.useUtils(); diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/banners.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/banners.tsx index b27bffd..07d074e 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/banners.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/banners.tsx @@ -21,6 +21,9 @@ import type { Banners } from "~/schemas/public/Banners"; import { generateSSGHelper } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina di gestione banners per admin: /area-riservata/admin/banners + */ const AdminBanners: NextPageWithLayout = () => { const { data, isLoading, refetch } = api.banners.getBannerAllData.useQuery(); const [openEdit, setOpenEdit] = useState(false); diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/blacklist.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/blacklist.tsx index d6dfd2b..d8c98d0 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/blacklist.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/blacklist.tsx @@ -22,6 +22,9 @@ import type { Banlist } from "~/schemas/public/Banlist"; import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina di gestione blacklist per admin: /area-riservata/admin/blacklist + */ const AdminBlacklist: NextPageWithLayout = () => { const { data, isLoading, refetch } = api.banlist.getBanlist.useQuery(); const [openEdit, setOpenEdit] = useState(false); diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/chats.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/chats.tsx index 8444c48..6965372 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/chats.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/chats.tsx @@ -11,6 +11,9 @@ import { useSession } from "~/providers/SessionProvider"; import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina di gestione chat per admin: /area-riservata/admin/chats + */ const AdminChats: NextPageWithLayout = () => { const session = useSession(); diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/chats/[chatId].tsx b/apps/infoalloggi/src/pages/area-riservata/admin/chats/[chatId].tsx index b683d67..489f99e 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/chats/[chatId].tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/chats/[chatId].tsx @@ -18,6 +18,9 @@ type ChatPageProps = { session: Session; }; +/** + * Pagina di gestione chat per admin: /area-riservata/admin/chats/[chatId] + */ const ChatPage: NextPageWithLayout = ({ chatId, session, diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/edit-annuncio/[id].tsx b/apps/infoalloggi/src/pages/area-riservata/admin/edit-annuncio/[id].tsx index db77147..0882982 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/edit-annuncio/[id].tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/edit-annuncio/[id].tsx @@ -15,6 +15,9 @@ type AnnuncioEditProps = { id: AnnunciId; }; +/** + * Pagina di modifica annuncio per admin: /area-riservata/admin/edit-annuncio/[id] + */ const AnnuncioEdit: NextPageWithLayout = ({ id, }: AnnuncioEditProps) => { diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/etichette.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/etichette.tsx index 0a0b776..664914f 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/etichette.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/etichette.tsx @@ -22,6 +22,9 @@ import type { Etichette } from "~/schemas/public/Etichette"; import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina di gestione etichette per admin: /area-riservata/admin/etichette + */ const AdminEtichette: NextPageWithLayout = () => { const { data, isLoading, refetch } = api.etichette.getAllEtichette.useQuery(); const [openEdit, setOpenEdit] = useState(false); diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/flags.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/flags.tsx index f1b29a3..0f37cb4 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/flags.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/flags.tsx @@ -21,6 +21,9 @@ import type { Flags } from "~/schemas/public/Flags"; import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina di gestione flags per admin: /area-riservata/admin/flags + */ const AdminFlags: NextPageWithLayout = () => { const { data, isLoading, refetch } = api.flags.GetFlags.useQuery(); const [openEdit, setOpenEdit] = useState(false); diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/impostazioni.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/impostazioni.tsx index 0c96009..3a5ae50 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/impostazioni.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/impostazioni.tsx @@ -6,6 +6,9 @@ import { Button } from "~/components/ui/button"; import type { NextPageWithLayout } from "~/pages/_app"; import { api } from "~/utils/api"; +/** + * Pagina di impostazioni per admin: /area-riservata/admin/impostazioni + */ const Impostazioni: NextPageWithLayout = () => { return ( <> diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/incroci.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/incroci.tsx index 0a4c227..ee8e9cf 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/incroci.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/incroci.tsx @@ -11,6 +11,9 @@ import type { NextPageWithLayout } from "~/pages/_app"; import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina di gestione incroci per admin: /area-riservata/admin/incroci + */ const Incroci: NextPageWithLayout = () => { const { data, isLoading } = api.incroci.getAll.useQuery(); diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/ordini.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/ordini.tsx index 35995fb..6dc5a38 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/ordini.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/ordini.tsx @@ -8,6 +8,9 @@ import type { NextPageWithLayout } from "~/pages/_app"; import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina di gestione ordini per admin: /area-riservata/admin/ordini + */ const Ordini: NextPageWithLayout = () => { const { data, isLoading } = api.servizio.getOrdini.useQuery({}); diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/potenziali.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/potenziali.tsx index 610ce5d..1923df8 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/potenziali.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/potenziali.tsx @@ -17,6 +17,9 @@ const PotenzialiBoard = dynamic( }, ); +/** + * Pagina di gestione potenziali per admin: /area-riservata/admin/potenziali + */ const AdminPotenziali: NextPageWithLayout = () => { return ( diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/prezziario.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/prezziario.tsx index c94aae5..67073bb 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/prezziario.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/prezziario.tsx @@ -24,6 +24,9 @@ import type { import { generateSSGHelper } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina di gestione prezziario per admin: /area-riservata/admin/prezziario + */ const Admin_Prezziario: NextPageWithLayout = () => { const { data, isLoading, refetch } = api.prezziario.getPrezziario.useQuery(); const [openEdit, setOpenEdit] = useState(false); diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/storage.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/storage.tsx index d625453..0a96686 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/storage.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/storage.tsx @@ -44,6 +44,9 @@ import type { Users } from "~/schemas/public/Users"; import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina di gestione allegati per admin: /area-riservata/admin/storage + */ const AdminStorage: NextPageWithLayout = () => { const { data, isLoading, refetch } = api.storage.getAll.useQuery(); const { t } = useTranslation(); diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/testi-stringhe.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/testi-stringhe.tsx index 24e5a15..278db08 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/testi-stringhe.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/testi-stringhe.tsx @@ -22,6 +22,9 @@ import type { TestiEStringhe } from "~/schemas/public/TestiEStringhe"; import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina per la gestione dei testi e stringhe: /area-riservata/admin/testi-stringhe + */ const AdminTestiStringhe: NextPageWithLayout = () => { const { data, isLoading, refetch } = api.strings.getStringhe.useQuery(); const [openEdit, setOpenEdit] = useState(false); diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/allegati/[userId].tsx b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/allegati/[userId].tsx index e75ecad..fd42770 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/allegati/[userId].tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/allegati/[userId].tsx @@ -10,6 +10,9 @@ type AllegatiProps = { userId: UsersId; }; +/** + * Pagina di visualizzazione allegati per admin: /area-riservata/admin/user-view/allegati/[userId] + */ const AllegatiUser: NextPageWithLayout = ({ userId, }: AllegatiProps) => { diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/comunicazioni/[userId].tsx b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/comunicazioni/[userId].tsx index 9f8c2ba..b68eb46 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/comunicazioni/[userId].tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/comunicazioni/[userId].tsx @@ -21,6 +21,9 @@ type ComunicazioniUserProps = { userId: UsersId; }; +/** + * Pagina di visualizzazione comunicazioni per admin: /area-riservata/admin/user-view/comunicazioni/[userId] + */ const ComunicazioniUser: NextPageWithLayout = ({ userId, }: ComunicazioniUserProps) => { diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/edit-user/[userId].tsx b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/edit-user/[userId].tsx index 9466bcf..b03ba65 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/edit-user/[userId].tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/edit-user/[userId].tsx @@ -45,6 +45,9 @@ type EditUserProps = { userId: UsersId; }; +/** + * Pagina di modifica utente per admin: /area-riservata/admin/user-view/edit-user/[userId] + */ const EditUser: NextPageWithLayout = ({ userId, }: EditUserProps) => { diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/onboard/[servizioId].tsx b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/onboard/[servizioId].tsx index 832f7df..5637ab7 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/onboard/[servizioId].tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/onboard/[servizioId].tsx @@ -15,6 +15,10 @@ type OnboardUserProps = { servizioId: ServizioServizioId; userId: UsersId; }; + +/** + * Pagina di onboarding utente per admin: /area-riservata/admin/user-view/onboard/[servizioId] + */ const OnboardUser: NextPageWithLayout = ({ servizioId, }: OnboardUserProps) => { diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/ordini/[userId].tsx b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/ordini/[userId].tsx index 123f44d..e9a6931 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/ordini/[userId].tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/ordini/[userId].tsx @@ -16,6 +16,9 @@ type OrdiniUserProps = { ordineId: OrdiniOrdineId | null; }; +/** + * Pagina di visualizzazione ordini per admin: /area-riservata/admin/user-view/ordini/[userId] + */ const OrdiniUser: NextPageWithLayout = ({ userId, ordineId, diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/ricerca/[userId].tsx b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/ricerca/[userId].tsx index cfbd291..075066c 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/ricerca/[userId].tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/ricerca/[userId].tsx @@ -14,6 +14,9 @@ type RicercaUserProps = { userId: UsersId; }; +/** + * Pagina di visualizzazione ricerca per admin: /area-riservata/admin/user-view/ricerca/[userId] + */ const RicercaUser: NextPageWithLayout = ({ userId, }: RicercaUserProps) => { diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/servizio/[...slug].tsx b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/servizio/[...slug].tsx index 027d6e3..e436187 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/user-view/servizio/[...slug].tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/user-view/servizio/[...slug].tsx @@ -15,6 +15,9 @@ type ServizioUserProps = { servizioId: ServizioServizioId; userId: UsersId; }; +/** + * Pagina di visualizzazione servizio per admin: /area-riservata/admin/user-view/servizio/[userId]/[servizioId] + */ const ServizioUser: NextPageWithLayout = ({ servizioId, userId, diff --git a/apps/infoalloggi/src/pages/area-riservata/admin/utenti.tsx b/apps/infoalloggi/src/pages/area-riservata/admin/utenti.tsx index 55e922b..cdedf30 100644 --- a/apps/infoalloggi/src/pages/area-riservata/admin/utenti.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/admin/utenti.tsx @@ -22,6 +22,9 @@ import { TrpcAuthedFetchingIstance } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina di gestione utenti per admin: /area-riservata/admin/utenti + */ const Admin_Utenti: NextPageWithLayout = () => { const { data, isLoading, refetch } = api.users.getUsersWChatInfo.useQuery( undefined, diff --git a/apps/infoalloggi/src/pages/area-riservata/allegati.tsx b/apps/infoalloggi/src/pages/area-riservata/allegati.tsx index 95fde08..cf32a3b 100644 --- a/apps/infoalloggi/src/pages/area-riservata/allegati.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/allegati.tsx @@ -4,6 +4,10 @@ import { AreaRiservataLayout } from "~/components/Layout"; import type { NextPageWithLayout } from "~/pages/_app"; import { useEnforcedSession } from "~/providers/SessionProvider"; +/** + * Pagina degli allegati: /area-riservata/allegati + * Mostra gli allegati associati all'utente. + */ const Allegati: NextPageWithLayout = () => { const session = useEnforcedSession(); diff --git a/apps/infoalloggi/src/pages/area-riservata/allegato-view/[allegatoId].tsx b/apps/infoalloggi/src/pages/area-riservata/allegato-view/[allegatoId].tsx index 593fcba..f189e9c 100644 --- a/apps/infoalloggi/src/pages/area-riservata/allegato-view/[allegatoId].tsx +++ b/apps/infoalloggi/src/pages/area-riservata/allegato-view/[allegatoId].tsx @@ -32,6 +32,9 @@ type AllegatoViewProps = { allegatoId: string; }; +/** + * Pagina di visualizzazione dell'allegato: /area-riservata/allegato/[allegatoId] + */ const AllegatoView: NextPageWithLayout = ({ allegatoId, }: AllegatoViewProps) => { diff --git a/apps/infoalloggi/src/pages/area-riservata/chat.tsx b/apps/infoalloggi/src/pages/area-riservata/chat.tsx index e4378a6..b14c9ff 100644 --- a/apps/infoalloggi/src/pages/area-riservata/chat.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/chat.tsx @@ -16,6 +16,10 @@ type UserChatProps = { session: Session; }; +/** + * Pagina della chat utente: /area-riservata/chat + * Mostra la chat in tempo reale con il supporto. + */ const UserChat: NextPageWithLayout = ({ chatId, session, diff --git a/apps/infoalloggi/src/pages/area-riservata/comunicazioni.tsx b/apps/infoalloggi/src/pages/area-riservata/comunicazioni.tsx index 81e44c5..0a7241b 100644 --- a/apps/infoalloggi/src/pages/area-riservata/comunicazioni.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/comunicazioni.tsx @@ -4,6 +4,10 @@ import { AreaRiservataLayout } from "~/components/Layout"; import type { NextPageWithLayout } from "~/pages/_app"; import { useEnforcedSession } from "~/providers/SessionProvider"; +/** + * Pagina delle comunicazioni: /area-riservata/comunicazioni + * Mostra le comunicazioni email inviate all'utente. + */ const Comunicazioni: NextPageWithLayout = () => { const session = useEnforcedSession(); diff --git a/apps/infoalloggi/src/pages/area-riservata/dashboard.tsx b/apps/infoalloggi/src/pages/area-riservata/dashboard.tsx index 8a96de2..0495c4f 100644 --- a/apps/infoalloggi/src/pages/area-riservata/dashboard.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/dashboard.tsx @@ -8,6 +8,10 @@ import type { NextPageWithLayout } from "~/pages/_app"; import { useTranslation } from "~/providers/I18nProvider"; import { useEnforcedSession } from "~/providers/SessionProvider"; +/** + * Pagina principale dell'area riservata: /area-riservata/dashboard + * Mostra la dashboard amministrativa o utente a seconda del ruolo. + */ const Dashboard: NextPageWithLayout = () => { const { t } = useTranslation(); const session = useEnforcedSession(); diff --git a/apps/infoalloggi/src/pages/area-riservata/load-page.tsx b/apps/infoalloggi/src/pages/area-riservata/load-page.tsx index 5d04761..159fe0c 100644 --- a/apps/infoalloggi/src/pages/area-riservata/load-page.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/load-page.tsx @@ -3,6 +3,10 @@ import { AreaRiservataLayout } from "~/components/Layout"; import { LoadingPage } from "~/components/loading"; import type { NextPageWithLayout } from "../_app"; +/** + * Pagina di caricamento dell'area riservata: /load-page + * Reindirizza alla dashboard dopo il caricamento. + */ const LoadPage: NextPageWithLayout = () => { useEffect(() => { window.location.replace("/area-riservata/dashboard"); diff --git a/apps/infoalloggi/src/pages/area-riservata/ordini.tsx b/apps/infoalloggi/src/pages/area-riservata/ordini.tsx index 77a66b5..6f8e18f 100644 --- a/apps/infoalloggi/src/pages/area-riservata/ordini.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/ordini.tsx @@ -13,6 +13,10 @@ import { api } from "~/utils/api"; type OrdiniProps = { ordineId: OrdiniOrdineId | null; }; + +/** + * Pagina degli ordini: /area-riservata/ordini + */ const Ordini: NextPageWithLayout = ({ ordineId }: OrdiniProps) => { const session = useEnforcedSession(); const { data, isLoading } = api.servizio.getOrdini.useQuery({ diff --git a/apps/infoalloggi/src/pages/area-riservata/profilo.tsx b/apps/infoalloggi/src/pages/area-riservata/profilo.tsx index 7c1e7d9..c357b19 100644 --- a/apps/infoalloggi/src/pages/area-riservata/profilo.tsx +++ b/apps/infoalloggi/src/pages/area-riservata/profilo.tsx @@ -20,6 +20,9 @@ import { CatastoProvider } from "~/providers/CatastoProvider"; import { useEnforcedSession } from "~/providers/SessionProvider"; import { api } from "~/utils/api"; +/** + * Pagina del profilo utente: /area-riservata/profilo + */ const Dashboard: NextPageWithLayout = () => { const { user } = useEnforcedSession(); diff --git a/apps/infoalloggi/src/pages/area-riservata/scheda-annuncio-stampa/[id].tsx b/apps/infoalloggi/src/pages/area-riservata/scheda-annuncio-stampa/[id].tsx index ca2f801..110329f 100644 --- a/apps/infoalloggi/src/pages/area-riservata/scheda-annuncio-stampa/[id].tsx +++ b/apps/infoalloggi/src/pages/area-riservata/scheda-annuncio-stampa/[id].tsx @@ -15,6 +15,9 @@ type PageProps = { data: StringifiedAnnunciWithMedia; }; +/** + * Pagina della scheda annuncio stampabile: /area-riservata/scheda-annuncio-stampa/[id]?raw=true + */ const SchedaAnnuncioPage: NextPageWithLayout = ({ raw, data, diff --git a/apps/infoalloggi/src/pages/area-riservata/servizio/[servizioId].tsx b/apps/infoalloggi/src/pages/area-riservata/servizio/[servizioId].tsx index fb3f26a..9cd5c1d 100644 --- a/apps/infoalloggi/src/pages/area-riservata/servizio/[servizioId].tsx +++ b/apps/infoalloggi/src/pages/area-riservata/servizio/[servizioId].tsx @@ -14,6 +14,10 @@ import { api } from "~/utils/api"; type ServizioPageProps = { servizioId: ServizioServizioId; }; + +/** + * Pagina del servizio: /area-riservata/servizio/[servizioId] + */ const ServizioPage: NextPageWithLayout = ({ servizioId, }: ServizioPageProps) => { diff --git a/apps/infoalloggi/src/pages/auth/accetta-invito/[token].tsx b/apps/infoalloggi/src/pages/auth/accetta-invito/[token].tsx index ca78573..c16b5bf 100644 --- a/apps/infoalloggi/src/pages/auth/accetta-invito/[token].tsx +++ b/apps/infoalloggi/src/pages/auth/accetta-invito/[token].tsx @@ -35,7 +35,9 @@ type Invalid = { email: null; }; type InviteTokenProps = Valid | Invalid; - +/** + * Pagina di accettazione invito: /auth/accetta-invito/[token] + */ const AcceptInvitePage: NextPageWithLayout = ({ valid, token, diff --git a/apps/infoalloggi/src/pages/auth/aggiorna-password.tsx b/apps/infoalloggi/src/pages/auth/aggiorna-password.tsx index 35bec38..e2032ba 100644 --- a/apps/infoalloggi/src/pages/auth/aggiorna-password.tsx +++ b/apps/infoalloggi/src/pages/auth/aggiorna-password.tsx @@ -6,6 +6,9 @@ import { ChangePasswordForm } from "~/forms/FormChangePassword"; import { useTranslation } from "~/providers/I18nProvider"; import { useSession } from "~/providers/SessionProvider"; +/** + * Pagina di aggiornamento password: /auth/aggiorna-password + */ const AggiornaPasswordPage: NextPage = () => { const { t } = useTranslation(); const session = useSession(); diff --git a/apps/infoalloggi/src/pages/auth/new-password-reset.tsx b/apps/infoalloggi/src/pages/auth/new-password-reset.tsx index 476746c..553294c 100644 --- a/apps/infoalloggi/src/pages/auth/new-password-reset.tsx +++ b/apps/infoalloggi/src/pages/auth/new-password-reset.tsx @@ -3,6 +3,9 @@ import Head from "next/head"; import { FormPswReset } from "~/forms/FormNewPswReset"; import { useTranslation } from "~/providers/I18nProvider"; +/** + * Pagina di reset password: /auth/new-password-reset + */ const NewPasswordResetPage: NextPage = () => { const { t } = useTranslation(); diff --git a/apps/infoalloggi/src/pages/auth/nonvalid-password-reset-token.tsx b/apps/infoalloggi/src/pages/auth/nonvalid-password-reset-token.tsx index 5b50a96..0ab86b9 100644 --- a/apps/infoalloggi/src/pages/auth/nonvalid-password-reset-token.tsx +++ b/apps/infoalloggi/src/pages/auth/nonvalid-password-reset-token.tsx @@ -4,6 +4,9 @@ import { useRouter } from "next/router"; import { Button } from "~/components/ui/button"; import { useTranslation } from "~/providers/I18nProvider"; +/** + * Pagina di token non valido per reset password: /auth/password-reset/[token] + */ const NonValidPasswordResetToken: NextPage = () => { const router = useRouter(); const { t } = useTranslation(); diff --git a/apps/infoalloggi/src/pages/auth/password-reset/[token].tsx b/apps/infoalloggi/src/pages/auth/password-reset/[token].tsx index 855e870..1d68531 100644 --- a/apps/infoalloggi/src/pages/auth/password-reset/[token].tsx +++ b/apps/infoalloggi/src/pages/auth/password-reset/[token].tsx @@ -8,7 +8,9 @@ import { generateSSGHelper } from "~/server/utils/ssgHelper"; type ResetWTokenProps = { token: string; }; - +/** + * Pagina di reset password con token: /auth/password-reset/[token] + */ const ResetWToken: NextPageWithLayout = ({ token, }: ResetWTokenProps) => { diff --git a/apps/infoalloggi/src/pages/chi-siamo.tsx b/apps/infoalloggi/src/pages/chi-siamo.tsx index 619a073..cebdc0c 100644 --- a/apps/infoalloggi/src/pages/chi-siamo.tsx +++ b/apps/infoalloggi/src/pages/chi-siamo.tsx @@ -4,6 +4,9 @@ import Image from "next/image"; import { Badge } from "~/components/ui/badge"; import { useTranslation } from "~/providers/I18nProvider"; +/** + * Pagina chi siamo: /chi-siamo + */ const ChiSiamo: NextPage = () => { const { t } = useTranslation(); return ( diff --git a/apps/infoalloggi/src/pages/contatti.tsx b/apps/infoalloggi/src/pages/contatti.tsx index 10afd2f..dede3e0 100644 --- a/apps/infoalloggi/src/pages/contatti.tsx +++ b/apps/infoalloggi/src/pages/contatti.tsx @@ -23,6 +23,9 @@ import { useZodForm } from "~/lib/zodForm"; import { useTranslation } from "~/providers/I18nProvider"; import { api } from "~/utils/api"; +/** + * Pagina contatti: /contatti + */ const Contatto: NextPage = () => { const { locale, t } = useTranslation(); const [hasSent, setHasSent] = useState(false); diff --git a/apps/infoalloggi/src/pages/guida.tsx b/apps/infoalloggi/src/pages/guida.tsx index 7de70bf..39fe07a 100644 --- a/apps/infoalloggi/src/pages/guida.tsx +++ b/apps/infoalloggi/src/pages/guida.tsx @@ -11,6 +11,9 @@ import { Badge } from "~/components/ui/badge"; import { Button } from "~/components/ui/button"; import { useTranslation } from "~/providers/I18nProvider"; +/** + * Pagina guida: /guida + */ const Guida: NextPage = () => { const { t } = useTranslation(); diff --git a/apps/infoalloggi/src/pages/index.tsx b/apps/infoalloggi/src/pages/index.tsx index deea50e..3e65640 100644 --- a/apps/infoalloggi/src/pages/index.tsx +++ b/apps/infoalloggi/src/pages/index.tsx @@ -12,6 +12,9 @@ import { env } from "~/env"; import type { LangDict } from "~/i18n/locales"; import { useTranslation } from "~/providers/I18nProvider"; +/** + * Pagina principale: / + */ const Home: NextPage = () => { const { t } = useTranslation(); const description = diff --git a/apps/infoalloggi/src/pages/login.tsx b/apps/infoalloggi/src/pages/login.tsx index 0557664..cd49e6e 100644 --- a/apps/infoalloggi/src/pages/login.tsx +++ b/apps/infoalloggi/src/pages/login.tsx @@ -3,6 +3,9 @@ import Head from "next/head"; import { FormLogin } from "~/forms/FormLogin"; import { useTranslation } from "~/providers/I18nProvider"; +/** + * Pagina login: /login + */ const LoginPage: NextPage = () => { const { t } = useTranslation(); diff --git a/apps/infoalloggi/src/pages/prezzi.tsx b/apps/infoalloggi/src/pages/prezzi.tsx index a4e9e46..d79f309 100644 --- a/apps/infoalloggi/src/pages/prezzi.tsx +++ b/apps/infoalloggi/src/pages/prezzi.tsx @@ -16,6 +16,9 @@ import TipologiaPosizioneEnum from "~/schemas/public/TipologiaPosizioneEnum"; import { generateSSGHelper } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina prezzi: /prezzi + */ const Prezzi: NextPage = () => { const { t } = useTranslation(); diff --git a/apps/infoalloggi/src/pages/privacy-policy.tsx b/apps/infoalloggi/src/pages/privacy-policy.tsx index 9e34f35..a6d7fe8 100644 --- a/apps/infoalloggi/src/pages/privacy-policy.tsx +++ b/apps/infoalloggi/src/pages/privacy-policy.tsx @@ -5,6 +5,9 @@ import type { TestiEStringheStingaId } from "~/schemas/public/TestiEStringhe"; import { generateSSGHelper } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina privacy policy: /privacy-policy + */ const PrivacyPolicy: NextPage = () => { const { t, locale } = useTranslation(); const key = ( diff --git a/apps/infoalloggi/src/pages/proprietari.tsx b/apps/infoalloggi/src/pages/proprietari.tsx index 75d8379..09880a4 100644 --- a/apps/infoalloggi/src/pages/proprietari.tsx +++ b/apps/infoalloggi/src/pages/proprietari.tsx @@ -9,6 +9,9 @@ import { Button } from "~/components/ui/button"; import { Card, CardContent } from "~/components/ui/card"; import { useTranslation } from "~/providers/I18nProvider"; +/** + * Pagina proprietari: /proprietari + */ const Proprietari: NextPage = () => { const { t } = useTranslation(); diff --git a/apps/infoalloggi/src/pages/servizio/condizioni/[stringaId].tsx b/apps/infoalloggi/src/pages/servizio/condizioni/[stringaId].tsx index 61591b6..3fbf9f3 100644 --- a/apps/infoalloggi/src/pages/servizio/condizioni/[stringaId].tsx +++ b/apps/infoalloggi/src/pages/servizio/condizioni/[stringaId].tsx @@ -11,7 +11,9 @@ import { api } from "~/utils/api"; type CondizioniProps = { stringaId: TestiEStringheStingaId; }; - +/** + * Pagina condizioni: /servizio/condizioni/[stringaId] + */ const CondizioniPage: NextPageWithLayout = ({ stringaId, }: CondizioniProps) => { diff --git a/apps/infoalloggi/src/pages/servizio/conferma-immobile/[...slug].tsx b/apps/infoalloggi/src/pages/servizio/conferma-immobile/[...slug].tsx index 336ac0a..cc5bfe2 100644 --- a/apps/infoalloggi/src/pages/servizio/conferma-immobile/[...slug].tsx +++ b/apps/infoalloggi/src/pages/servizio/conferma-immobile/[...slug].tsx @@ -22,7 +22,9 @@ type ConfermaImmobileProps = { servizioId: ServizioServizioId; annuncioId: AnnunciId; }; - +/** + * Pagina di conferma immobile: /servizio/conferma-immobile/[servizioId]/[annuncioId] + */ const ConfermaImmobile: NextPageWithLayout = ({ servizioId, annuncioId, diff --git a/apps/infoalloggi/src/pages/servizio/contratto-registrazione/[...slug].tsx b/apps/infoalloggi/src/pages/servizio/contratto-registrazione/[...slug].tsx index 68d7980..acb9627 100644 --- a/apps/infoalloggi/src/pages/servizio/contratto-registrazione/[...slug].tsx +++ b/apps/infoalloggi/src/pages/servizio/contratto-registrazione/[...slug].tsx @@ -18,7 +18,9 @@ type ContrattoViewerProps = { servizioId: ServizioServizioId; annuncioId: AnnunciId; }; - +/** + * Pagina di visualizzazione del contratto di registrazione: /servizio/contratto-registrazione/[servizioId]/[annuncioId] + */ const ContrattoViewer: NextPageWithLayout = ({ servizioId, annuncioId, diff --git a/apps/infoalloggi/src/pages/servizio/contratto/[...slug].tsx b/apps/infoalloggi/src/pages/servizio/contratto/[...slug].tsx index 3f41a75..4e1429b 100644 --- a/apps/infoalloggi/src/pages/servizio/contratto/[...slug].tsx +++ b/apps/infoalloggi/src/pages/servizio/contratto/[...slug].tsx @@ -18,7 +18,9 @@ type ContrattoViewerProps = { servizioId: ServizioServizioId; annuncioId: AnnunciId; }; - +/** + * Pagina di visualizzazione del contratto: /servizio/contratto-registrazione/[servizioId]/[annuncioId] + */ const ContrattoViewer: NextPageWithLayout = ({ servizioId, annuncioId, diff --git a/apps/infoalloggi/src/pages/servizio/pagamento-status.tsx b/apps/infoalloggi/src/pages/servizio/pagamento-status.tsx index 5ad8b38..4ade2ac 100644 --- a/apps/infoalloggi/src/pages/servizio/pagamento-status.tsx +++ b/apps/infoalloggi/src/pages/servizio/pagamento-status.tsx @@ -93,6 +93,9 @@ export const getServerSideProps = (async (context) => { }; }) satisfies GetServerSideProps; +/** + * Pagina di stato del pagamento dopo un acquisto: /servizio/pagamento-status?payment_intent=paymentIntentId + */ export default function AcquistoProcessing({ servizioId, status, diff --git a/apps/infoalloggi/src/pages/servizio/riapri-conferma/[...slug].tsx b/apps/infoalloggi/src/pages/servizio/riapri-conferma/[...slug].tsx index 7b32001..941b4ab 100644 --- a/apps/infoalloggi/src/pages/servizio/riapri-conferma/[...slug].tsx +++ b/apps/infoalloggi/src/pages/servizio/riapri-conferma/[...slug].tsx @@ -19,7 +19,9 @@ type RiapriConfermaProps = { servizioId: ServizioServizioId; annuncioId: AnnunciId; }; - +/** + * Pagina di conferma di riapertura servizio: /servizio/riapri-conferma/[servizioId]/[annuncioId] + */ const RiapriConferma: NextPageWithLayout = ({ servizioId, annuncioId, diff --git a/apps/infoalloggi/src/pages/servizio/ricevuta-cortesia/[ordineId].tsx b/apps/infoalloggi/src/pages/servizio/ricevuta-cortesia/[ordineId].tsx index 45229b4..2d209d7 100644 --- a/apps/infoalloggi/src/pages/servizio/ricevuta-cortesia/[ordineId].tsx +++ b/apps/infoalloggi/src/pages/servizio/ricevuta-cortesia/[ordineId].tsx @@ -14,6 +14,9 @@ type PagamentoRecapProps = { ordineId: OrdiniOrdineId; }; +/** + * Pagina di ricevuta di cortesia dopo un acquisto: /servizio/ricevuta-cortesia/[ordineId]?raw=true|false + */ const PaymentRecapPage: NextPageWithLayout = ({ raw, ordineId, diff --git a/apps/infoalloggi/src/pages/sitemap.xml.ts b/apps/infoalloggi/src/pages/sitemap.xml.ts index 187984d..775a15f 100644 --- a/apps/infoalloggi/src/pages/sitemap.xml.ts +++ b/apps/infoalloggi/src/pages/sitemap.xml.ts @@ -51,6 +51,9 @@ async function generateSiteMap() { `; } +/** + * Pagina sitemap: /sitemap.xml + */ export const getServerSideProps = (async (context) => { const sitemap = await generateSiteMap(); context.res.setHeader("Content-Type", "text/xml"); diff --git a/apps/infoalloggi/src/pages/termini-condizioni.tsx b/apps/infoalloggi/src/pages/termini-condizioni.tsx index 91aa521..3fa15ec 100644 --- a/apps/infoalloggi/src/pages/termini-condizioni.tsx +++ b/apps/infoalloggi/src/pages/termini-condizioni.tsx @@ -5,6 +5,9 @@ import type { TestiEStringheStingaId } from "~/schemas/public/TestiEStringhe"; import { generateSSGHelper } from "~/server/utils/ssgHelper"; import { api } from "~/utils/api"; +/** + * Pagina termini e condizioni: /termini-condizioni + */ const Termini_Condizioni: NextPage = () => { const { t, locale } = useTranslation(); const key = (