refactor: Norwegian URL paths
User-visible SPA routes were a mix of English and Norwegian. Bring them in line with the rest of the project's language: /home → /hjem /a/:id → /aktivitet/:id /<username>/list → /<username>/liste /tags/:tag → /etiketter/:etikett /invite/:token → /invitasjon/:token The English forms remain accepted by the SPA router (parsePath) and the server OG handlers so links shared before the rename — invite URLs in particular — still resolve. Outgoing links always use the Norwegian forms. API paths (/api/users/:username/list etc.) stay in English — they're internal contracts between client and server, not user-visible URLs. Server OG registration orders /<username>/liste before /aktivitet/:id so a hypothetical user with the slug "aktivitet" still gets their profile page rather than an activity-not-found. For normal activity URLs the user-list route doesn't match (second segment must be the literal "liste"). Profile copy referencing the URL slug also updated.
This commit is contained in:
parent
ef07e3f785
commit
f4816502ed
11 changed files with 80 additions and 51 deletions
|
|
@ -43,7 +43,7 @@ export interface SettingsUpdateRequest {
|
|||
// --- Invites ---------------------------------------------------------------
|
||||
export interface InviteEntry {
|
||||
/** The token itself. The shareable URL is built client-side as
|
||||
* `${window.location.origin}/invite/${token}` — server-side URL
|
||||
* `${window.location.origin}/invitasjon/${token}` — server-side URL
|
||||
* construction would point at the API host in split-process dev
|
||||
* environments. */
|
||||
token: string;
|
||||
|
|
@ -203,7 +203,7 @@ export interface ActivityPublic {
|
|||
*/
|
||||
owner_display: string | null;
|
||||
// Owner's URL slug, if they've opted into a public list. When non-null, the
|
||||
// client renders the owner attribution as a link to /<owner_username>/list.
|
||||
// client renders the owner attribution as a link to /<owner_username>/liste.
|
||||
owner_username: string | null;
|
||||
title: string;
|
||||
/** Optional free-text body. Plain text. Empty string and null treated the same client-side. */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue