diff --git a/Cartesian.Frontend/messages/en.json b/Cartesian.Frontend/messages/en.json index 658f448..21a2044 100644 --- a/Cartesian.Frontend/messages/en.json +++ b/Cartesian.Frontend/messages/en.json @@ -37,5 +37,177 @@ "tag_religious": "Religious", "tag_study": "Study", "tag_market": "Market", - "tag_political": "Political" + "tag_political": "Political", + "error_something_went_wrong": "Something went wrong", + "error_page_not_found": "The page you are looking for does not exist. It might have been moved or deleted.", + "error_unexpected": "An unexpected error occurred. Please try again later.", + "return_home": "Return Home", + "sign_in": "Sign in", + "sign_up": "Sign up", + "sign_in_title": "Sign in", + "sign_in_subtitle": "Enter your credentials to continue", + "signing_in": "Signing in...", + "email": "Email", + "password": "Password", + "dont_have_account": "Don't have an account?", + "create_account": "Create an account", + "create_account_subtitle": "Enter your details to get started", + "creating_account": "Creating account...", + "username": "Username", + "confirm_password": "Confirm Password", + "already_have_account": "Already have an account?", + "profile": "Profile", + "events": "Events", + "logout": "Logout", + "settings": "Settings", + "settings_description": "Customize your experience", + "theme": "Theme", + "light": "Light", + "dark": "Dark", + "system": "System", + "language": "Language", + "close": "Close", + "cancel": "Cancel", + "new_event": "New Event", + "new_event_subtitle": "Create a public gathering", + "edit_event": "Edit Event", + "edit_event_subtitle": "Update your event details", + "event_title": "Event Title", + "event_title_placeholder": "What are you planning?", + "description": "Description", + "description_placeholder": "Add details about your event...", + "details": "Details", + "location": "Location", + "location_placeholder": "Search location...", + "use_current": "Use Current", + "pick_on_map": "Pick on Map", + "start_time": "Start Time", + "end_time": "End Time", + "start_time_placeholder": "Pick start time", + "end_time_placeholder": "Pick end time", + "images": "Images", + "window_images": "Window Images", + "session_title": "Session Title", + "session_title_placeholder": "Session Title", + "optional_description": "Optional description", + "filter_categories": "Filter categories...", + "publish_event": "Publish Event", + "keep_editing": "Keep Editing", + "discard": "Discard", + "delete_event": "Delete Event", + "delete_event_confirmation": "Are you sure you want to delete \"{eventName}\"? This action cannot be undone. All participants and favorites will be removed.", + "delete": "Delete", + "deleting": "Deleting...", + "hosted_by": "Hosted by", + "participate": "Participate", + "dont_participate": "Don't participate", + "share": "Share", + "share_event": "Share event", + "edit_event_tooltip": "Edit event", + "delete_event_tooltip": "Delete event", + "view_details": "View Details", + "add": "Add", + "create_an_event": "Create an Event", + "add_event_here": "Add event here", + "loading_address": "Loading address...", + "failed_to_load_address": "Failed to load address", + "unknown_location": "Unknown location", + "search_events": "Search events...", + "manage_events_schedule": "Manage your events and schedule", + "favorited": "Favorited", + "created": "Created", + "attending": "Attending", + "no_favorited_events": "No favorited events", + "no_events_match_search": "No events match your search query", + "events_favorited_appear_here": "Events you favorite will appear here", + "no_created_events": "No created events", + "events_created_appear_here": "Events you create will appear here", + "no_attending_events": "No attending events", + "events_attending_appear_here": "Events you attend will appear here", + "toggle_ai_mode": "Toggle AI mode", + "refresh_events": "Refresh events", + "enhance_with_ai": "Enhance with AI", + "new_community": "New Community", + "new_community_subtitle": "Create a space for people to gather", + "community_name": "Community Name", + "community_name_placeholder": "e.g. Hiking Enthusiasts", + "community_description_placeholder": "What is this community about?", + "privacy": "Privacy", + "toggle_invite_only": "Toggle invite only", + "private_community": "Private Community", + "leave_community": "Leave Community", + "banned_users": "Banned Users", + "delete_community": "Delete Community", + "no_pinned_messages": "No pinned messages", + "pinned_messages": "Pinned Messages", + "pinned_messages_count": "{count} pinned message(s)", + "pinned_by": "Pinned by {name}", + "members": "Members", + "members_list": "Community members list", + "banned_users_list": "Banned users list", + "admin": "Admin", + "open_menu": "Open menu", + "view_profile": "View Profile", + "make_member": "Make Member", + "make_admin": "Make Admin", + "kick": "Kick", + "ban": "Ban", + "kick_member": "Kick Member", + "kick_member_confirmation": "Are you sure you want to kick {name} from this community? They will be removed but can rejoin.", + "kicking": "Kicking...", + "ban_member": "Ban Member", + "ban_member_confirmation": "Are you sure you want to ban {name} from this community? They will be removed and cannot rejoin until unbanned.", + "reason_optional": "Reason (optional)", + "ban_reason_placeholder": "Enter reason for ban...", + "banning": "Banning...", + "no_banned_users": "No banned users", + "loading": "Loading...", + "unban": "Unban", + "unban_user": "Unban User", + "unban_user_confirmation": "Are you sure you want to unban {name}? They will be able to rejoin the community.", + "unbanning": "Unbanning...", + "banned": "Banned", + "joined": "Joined", + "joining": "Joining...", + "join": "Join", + "error_loading_community": "Error loading community", + "error_loading_communities": "Error loading communities", + "no_communities_joined": "No communities joined", + "your_communities": "Your Communities", + "discover": "Discover", + "profile_picture": "Profile Picture", + "profile_picture_info": "JPG, GIF or PNG. Max size of 5MB.", + "upload": "Upload", + "change": "Change", + "remove": "Remove", + "display_name": "Display Name", + "display_name_placeholder": "Your display name", + "email_address": "Email Address", + "manage_account_preferences": "Manage your account preferences", + "security": "Security", + "blocked": "Blocked", + "blocked_users": "Blocked Users", + "current_password": "Current Password", + "new_password": "New Password", + "updating": "Updating...", + "update_password": "Update Password", + "failed_to_load_profile": "Failed to load profile", + "this_user_blocked_you": "This user has blocked you", + "account_required": "Account Required", + "account_required_description": "You need to sign up before you can create an event.", + "log_in": "Log In", + "message_placeholder": "Message...", + "send": "Send", + "welcome_to_beginning": "Welcome to the beginning", + "be_first_to_say_something": "Be the first to say something.", + "view": "View", + "direct_message": "Direct Message", + "error_loading_messages": "Error loading messages", + "no_conversations_yet": "No conversations yet", + "drawer_content_placeholder": "Drawer content goes here", + "toggle_sidebar": "Toggle Sidebar", + "previous_slide": "Previous slide", + "next_slide": "Next slide", + "sidebar": "Sidebar", + "recenter_map": "Recenter map on my location" } diff --git a/Cartesian.Frontend/messages/pl.json b/Cartesian.Frontend/messages/pl.json index f7471fb..ad104c4 100644 --- a/Cartesian.Frontend/messages/pl.json +++ b/Cartesian.Frontend/messages/pl.json @@ -37,5 +37,177 @@ "tag_religious": "Religia", "tag_study": "Nauka", "tag_market": "Targ", - "tag_political": "Polityka" + "tag_political": "Polityka", + "error_something_went_wrong": "Coś poszło nie tak", + "error_page_not_found": "Strona, której szukasz, nie istnieje. Mogła zostać przeniesiona lub usunięta.", + "error_unexpected": "Wystąpił nieoczekiwany błąd. Spróbuj ponownie później.", + "return_home": "Wróć do strony głównej", + "sign_in": "Zaloguj się", + "sign_up": "Zarejestruj się", + "sign_in_title": "Zaloguj się", + "sign_in_subtitle": "Wprowadź swoje dane, aby kontynuować", + "signing_in": "Logowanie...", + "email": "Email", + "password": "Hasło", + "dont_have_account": "Nie masz konta?", + "create_account": "Utwórz konto", + "create_account_subtitle": "Wprowadź swoje dane, aby rozpocząć", + "creating_account": "Tworzenie konta...", + "username": "Nazwa użytkownika", + "confirm_password": "Potwierdź hasło", + "already_have_account": "Masz już konto?", + "profile": "Profil", + "events": "Wydarzenia", + "logout": "Wyloguj", + "settings": "Ustawienia", + "settings_description": "Dostosuj swoje preferencje", + "theme": "Motyw", + "light": "Jasny", + "dark": "Ciemny", + "system": "Systemowy", + "language": "Język", + "close": "Zamknij", + "cancel": "Anuluj", + "new_event": "Nowe wydarzenie", + "new_event_subtitle": "Utwórz publiczne spotkanie", + "edit_event": "Edytuj wydarzenie", + "edit_event_subtitle": "Zaktualizuj szczegóły wydarzenia", + "event_title": "Tytuł wydarzenia", + "event_title_placeholder": "Co planujesz?", + "description": "Opis", + "description_placeholder": "Dodaj szczegóły o swoim wydarzeniu...", + "details": "Szczegóły", + "location": "Lokalizacja", + "location_placeholder": "Szukaj lokalizacji...", + "use_current": "Użyj obecnej", + "pick_on_map": "Wybierz na mapie", + "start_time": "Czas rozpoczęcia", + "end_time": "Czas zakończenia", + "start_time_placeholder": "Wybierz czas rozpoczęcia", + "end_time_placeholder": "Wybierz czas zakończenia", + "images": "Zdjęcia", + "window_images": "Zdjęcia okna", + "session_title": "Tytuł sesji", + "session_title_placeholder": "Tytuł sesji", + "optional_description": "Opcjonalny opis", + "filter_categories": "Filtruj kategorie...", + "publish_event": "Opublikuj wydarzenie", + "keep_editing": "Kontynuuj edycję", + "discard": "Odrzuć", + "delete_event": "Usuń wydarzenie", + "delete_event_confirmation": "Czy na pewno chcesz usunąć \"{eventName}\"? Tej akcji nie można cofnąć. Wszyscy uczestnicy i ulubione zostaną usunięte.", + "delete": "Usuń", + "deleting": "Usuwanie...", + "hosted_by": "Organizator", + "participate": "Weź udział", + "dont_participate": "Zrezygnuj", + "share": "Udostępnij", + "share_event": "Udostępnij wydarzenie", + "edit_event_tooltip": "Edytuj wydarzenie", + "delete_event_tooltip": "Usuń wydarzenie", + "view_details": "Zobacz szczegóły", + "add": "Dodaj", + "create_an_event": "Utwórz wydarzenie", + "add_event_here": "Dodaj wydarzenie tutaj", + "loading_address": "Ładowanie adresu...", + "failed_to_load_address": "Nie udało się załadować adresu", + "unknown_location": "Nieznana lokalizacja", + "search_events": "Szukaj wydarzeń...", + "manage_events_schedule": "Zarządzaj swoimi wydarzeniami i harmonogramem", + "favorited": "Ulubione", + "created": "Utworzone", + "attending": "Uczestnictwo", + "no_favorited_events": "Brak ulubionych wydarzeń", + "no_events_match_search": "Żadne wydarzenia nie pasują do wyszukiwania", + "events_favorited_appear_here": "Ulubione wydarzenia pojawią się tutaj", + "no_created_events": "Brak utworzonych wydarzeń", + "events_created_appear_here": "Utworzone wydarzenia pojawią się tutaj", + "no_attending_events": "Brak wydarzeń z uczestnictwem", + "events_attending_appear_here": "Wydarzenia, w których uczestniczysz, pojawią się tutaj", + "toggle_ai_mode": "Przełącz tryb AI", + "refresh_events": "Odśwież wydarzenia", + "enhance_with_ai": "Ulepsz za pomocą AI", + "new_community": "Nowa społeczność", + "new_community_subtitle": "Stwórz przestrzeń dla ludzi do spotkań", + "community_name": "Nazwa społeczności", + "community_name_placeholder": "np. Entuzjaści wędrówek", + "community_description_placeholder": "O czym jest ta społeczność?", + "privacy": "Prywatność", + "toggle_invite_only": "Przełącz tylko na zaproszenie", + "private_community": "Prywatna społeczność", + "leave_community": "Opuść społeczność", + "banned_users": "Zablokowani użytkownicy", + "delete_community": "Usuń społeczność", + "no_pinned_messages": "Brak przypiętych wiadomości", + "pinned_messages": "Przypięte wiadomości", + "pinned_messages_count": "{count} przypiętych wiadomości", + "pinned_by": "Przypięte przez {name}", + "members": "Członkowie", + "members_list": "Lista członków społeczności", + "banned_users_list": "Lista zablokowanych użytkowników", + "admin": "Admin", + "open_menu": "Otwórz menu", + "view_profile": "Zobacz profil", + "make_member": "Zmień na członka", + "make_admin": "Zmień na admina", + "kick": "Wyrzuć", + "ban": "Zablokuj", + "kick_member": "Wyrzuć członka", + "kick_member_confirmation": "Czy na pewno chcesz wyrzucić {name} z tej społeczności? Zostanie usunięty, ale może dołączyć ponownie.", + "kicking": "Wyrzucanie...", + "ban_member": "Zablokuj członka", + "ban_member_confirmation": "Czy na pewno chcesz zablokować {name} w tej społeczności? Zostanie usunięty i nie będzie mógł dołączyć ponownie, dopóki nie zostanie odblokowany.", + "reason_optional": "Powód (opcjonalnie)", + "ban_reason_placeholder": "Wprowadź powód blokady...", + "banning": "Blokowanie...", + "no_banned_users": "Brak zablokowanych użytkowników", + "loading": "Ładowanie...", + "unban": "Odblokuj", + "unban_user": "Odblokuj użytkownika", + "unban_user_confirmation": "Czy na pewno chcesz odblokować {name}? Będzie mógł ponownie dołączyć do społeczności.", + "unbanning": "Odblokowywanie...", + "banned": "Zablokowany", + "joined": "Dołączył", + "joining": "Dołączanie...", + "join": "Dołącz", + "error_loading_community": "Błąd ładowania społeczności", + "error_loading_communities": "Błąd ładowania społeczności", + "no_communities_joined": "Nie dołączono do żadnej społeczności", + "your_communities": "Twoje społeczności", + "discover": "Odkryj", + "profile_picture": "Zdjęcie profilowe", + "profile_picture_info": "JPG, GIF lub PNG. Maksymalny rozmiar 5MB.", + "upload": "Prześlij", + "change": "Zmień", + "remove": "Usuń", + "display_name": "Nazwa wyświetlana", + "display_name_placeholder": "Twoja nazwa wyświetlana", + "email_address": "Adres email", + "manage_account_preferences": "Zarządzaj preferencjami konta", + "security": "Bezpieczeństwo", + "blocked": "Zablokowani", + "blocked_users": "Zablokowani użytkownicy", + "current_password": "Obecne hasło", + "new_password": "Nowe hasło", + "updating": "Aktualizowanie...", + "update_password": "Zaktualizuj hasło", + "failed_to_load_profile": "Nie udało się załadować profilu", + "this_user_blocked_you": "Ten użytkownik Cię zablokował", + "account_required": "Wymagane konto", + "account_required_description": "Musisz się zarejestrować, aby móc utworzyć wydarzenie.", + "log_in": "Zaloguj się", + "message_placeholder": "Wiadomość...", + "send": "Wyślij", + "welcome_to_beginning": "Witaj na początku", + "be_first_to_say_something": "Bądź pierwszy, który coś napisze.", + "view": "Zobacz", + "direct_message": "Wiadomość prywatna", + "error_loading_messages": "Błąd ładowania wiadomości", + "no_conversations_yet": "Brak rozmów", + "drawer_content_placeholder": "Zawartość szuflady", + "toggle_sidebar": "Przełącz pasek boczny", + "previous_slide": "Poprzedni slajd", + "next_slide": "Następny slajd", + "sidebar": "Pasek boczny", + "recenter_map": "Wyśrodkuj mapę na mojej lokalizacji" } diff --git a/Cartesian.Frontend/project.inlang/settings.json b/Cartesian.Frontend/project.inlang/settings.json index 5333405..786af8c 100644 --- a/Cartesian.Frontend/project.inlang/settings.json +++ b/Cartesian.Frontend/project.inlang/settings.json @@ -7,6 +7,6 @@ "https://cdn.jsdelivr.net/npm/@inlang/plugin-m-function-matcher@2/dist/index.js" ], "plugin.inlang.messageFormat": { - "pathPattern": "./messages/{locale}.json" + "pathPattern": "../messages/{locale}.json" } } diff --git a/Cartesian.Frontend/src/lib/components/auth/login-alert-dialog.svelte b/Cartesian.Frontend/src/lib/components/auth/login-alert-dialog.svelte index a05d119..a2cf5d7 100644 --- a/Cartesian.Frontend/src/lib/components/auth/login-alert-dialog.svelte +++ b/Cartesian.Frontend/src/lib/components/auth/login-alert-dialog.svelte @@ -2,11 +2,12 @@ import * as AlertDialog from "$lib/components/ui/alert-dialog"; import { Button } from "$lib/components/ui/button"; import { goto } from "$app/navigation"; + import * as m from "$lib/paraglide/messages"; let { open = $bindable(false), - title = "Account Required", - description = "You need to sign up before you can create an event." + title = m.account_required(), + description = m.account_required_description(), }: { open: boolean; title?: string; description?: string } = $props(); @@ -19,7 +20,7 @@ - Cancel + {m.cancel()} diff --git a/Cartesian.Frontend/src/lib/components/chat/chat-input.svelte b/Cartesian.Frontend/src/lib/components/chat/chat-input.svelte index 104044e..dd4ae30 100644 --- a/Cartesian.Frontend/src/lib/components/chat/chat-input.svelte +++ b/Cartesian.Frontend/src/lib/components/chat/chat-input.svelte @@ -3,6 +3,7 @@ import { Textarea } from "$lib/components/ui/textarea"; import { SentIcon } from "@hugeicons/core-free-icons"; import { HugeiconsIcon } from "@hugeicons/svelte"; + import * as m from "$lib/paraglide/messages"; let { onSend, disabled = false } = $props<{ onSend: (content: string) => void; @@ -25,16 +26,18 @@ } -
+