gen.tmp.ts (3483B)
1 // this file was created with @radroots gen-localised-routes 2 3 import { get_locales, type Locales } from "@radroots/locales"; 4 5 export const locale_routes: Record<string, string> = { 6 "/login": "/login", 7 "/login/confirm": "/login/confirm", 8 "/signup": "/signup", 9 "/signup/confirm": "/signup/confirm", 10 "/acceso": "/login", 11 "/acceso/confirmar": "/login/confirm", 12 "/régistrarse": "/signup", 13 "/régistrarse/confirmar": "/signup/confirm", 14 "/about": "/about", 15 "/blog": "/blog", 16 "/contact": "/contact", 17 "/faq": "/faq", 18 "/acerca": "/about", 19 "/contacto": "/contact", 20 "/profile": "/profile", 21 "/perfil": "/profile", 22 // (simple) routes 23 "/map": "/map", 24 "/mapa": "/map", 25 }; 26 27 export type LocalisedRoutesSimpleEntries = { 28 "map": string; 29 }; 30 31 export const locales_routes_simple_map: Record<Locales, LocalisedRoutesSimpleEntries> = { 32 en: { 33 map: "/map" 34 }, 35 es: { 36 map: "/mapa" 37 }, 38 }; 39 40 export const localise_simple_route = (locale: string, key: keyof LocalisedRoutesSimpleEntries): string => { 41 const loc = get_locales(locale); 42 return locales_routes_simple_map[loc][key]; 43 }; 44 45 export const set_locales_routes_map = new Set(["map", "mapa"]); 46 47 export type LocalisedRoutesAuthEntries = { 48 "login": string; 49 "login_confirm": string; 50 "signup": string; 51 "signup_confirm": string; 52 }; 53 54 export const locales_routes_auth_map: Record<Locales, LocalisedRoutesAuthEntries> = { 55 en: { 56 login: "/login", 57 login_confirm: "/login/confirm", 58 signup: "/signup", 59 signup_confirm: "/signup/confirm", 60 }, 61 es: { 62 login: "/acceso", 63 login_confirm: "/acceso/confirmar", 64 signup: "/régistrarse", 65 signup_confirm: "/régistrarse/confirmar", 66 }, 67 }; 68 export const set_locales_routes_auth = new Set(["/login", "/login/confirm", "/signup", "/signup/confirm", "acceso", "acceso/confirmar", "régistrarse", "régistrarse/confirmar"]); 69 70 export const localise_auth_route = (locale: string, key: keyof LocalisedRoutesAuthEntries): string => { 71 const loc = get_locales(locale); 72 return locales_routes_auth_map[loc][key]; 73 }; 74 75 export type LocalisedRoutesInfoEntries = { 76 "about": string; 77 "blog": string; 78 "contact": string; 79 "faq": string; 80 }; 81 82 export const locales_routes_info_map: Record<Locales, LocalisedRoutesInfoEntries> = { 83 en: { 84 about: "/about", 85 blog: "/blog", 86 contact: "/contact", 87 faq: "/faq", 88 }, 89 es: { 90 about: "/acerca", 91 blog: "/blog", 92 contact: "/contacto", 93 faq: "/faq", 94 }, 95 }; 96 export const set_locales_routes_info = new Set(["/about", "/blog", "/contact", "/faq", "acerca", "blog", "contacto", "faq"]); 97 98 export const localise_info_route = (locale: string, key: keyof LocalisedRoutesInfoEntries): string => { 99 const loc = get_locales(locale); 100 return locales_routes_info_map[loc][key]; 101 }; 102 103 export type LocalisedRoutesProtectedEntries = { 104 "profile": string; 105 }; 106 107 export const locales_routes_protected_map: Record<Locales, LocalisedRoutesProtectedEntries> = { 108 en: { 109 profile: "/profile", 110 }, 111 es: { 112 profile: "/perfil", 113 }, 114 }; 115 export const set_locales_routes_protected = new Set(["/profile", "perfil"]); 116 117 export const localise_protected_route = (locale: string, key: keyof LocalisedRoutesProtectedEntries): string => { 118 const loc = get_locales(locale); 119 return locales_routes_protected_map[loc][key]; 120 };