Skip to content

Commit

Permalink
feat(Languages): 👽 add pl-PL language (#4064)
Browse files Browse the repository at this point in the history
Co-authored-by: crazywoola <427733928@qq.com>
  • Loading branch information
patryk20120 and crazywoola committed May 4, 2024
1 parent d3b81d3 commit 708b763
Show file tree
Hide file tree
Showing 24 changed files with 3,034 additions and 1 deletion.
3 changes: 2 additions & 1 deletion api/constants/languages.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@


languages = ['en-US', 'zh-Hans', 'zh-Hant', 'pt-BR', 'es-ES', 'fr-FR', 'de-DE', 'ja-JP', 'ko-KR', 'ru-RU', 'it-IT', 'uk-UA', 'vi-VN']
languages = ['en-US', 'zh-Hans', 'zh-Hant', 'pt-BR', 'es-ES', 'fr-FR', 'de-DE', 'ja-JP', 'ko-KR', 'ru-RU', 'it-IT', 'uk-UA', 'vi-VN', 'pl-PL']

language_timezone_mapping = {
'en-US': 'America/New_York',
Expand All @@ -16,6 +16,7 @@
'it-IT': 'Europe/Rome',
'uk-UA': 'Europe/Kyiv',
'vi-VN': 'Asia/Ho_Chi_Minh',
'pl-PL': 'Europe/Warsaw',
}


Expand Down
9 changes: 9 additions & 0 deletions web/i18n/language.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ export type I18nText = {
'vi-VN': string
'de_DE': string
'zh_Hant': string
'pl-PL': string
}

export const languages = [
Expand Down Expand Up @@ -112,6 +113,12 @@ export const languages = [
example: 'Xin chào, Dify!',
supported: true,
},
{
value: 'pl-PL',
name: 'Polski (Polish)',
example: 'Cześć, Dify!',
supported: true,
},
]

export const LanguagesSupported = languages.filter(item => item.supported).map(item => item.value)
Expand All @@ -133,6 +140,7 @@ export const NOTICE_I18N = {
de_DE: 'Wichtiger Hinweis',
ja_JP: '重要なお知らせ',
ko_KR: '중요 공지',
pl_PL: 'Ważne ogłoszenie',
uk_UA: 'Важливе повідомлення',
vi_VN: 'Thông báo quan trọng',
},
Expand All @@ -145,6 +153,7 @@ export const NOTICE_I18N = {
de_DE: 'Our system will be unavailable from 19:00 to 24:00 UTC on August 28 for an upgrade. For questions, kindly contact our support team (support@dify.ai). We value your patience.',
ja_JP: 'Our system will be unavailable from 19:00 to 24:00 UTC on August 28 for an upgrade. For questions, kindly contact our support team (support@dify.ai). We value your patience.',
ko_KR: 'Our system will be unavailable from 19:00 to 24:00 UTC on August 28 for an upgrade. For questions, kindly contact our support team (support@dify.ai). We value your patience.',
pl_PL: 'Nasz system będzie niedostępny od 19:00 do 24:00 UTC 28 sierpnia w celu aktualizacji. W przypadku pytań prosimy o kontakt z naszym zespołem wsparcia (support@dify.ai). Doceniamy Twoją cierpliwość.',
uk_UA: 'Наша система буде недоступна з 19:00 до 24:00 UTC 28 серпня для оновлення. Якщо у вас виникнуть запитання, будь ласка, зв’яжіться з нашою службою підтримки (support@dify.ai). Дякуємо за терпіння.',
vi_VN: 'Hệ thống của chúng tôi sẽ ngừng hoạt động từ 19:00 đến 24:00 UTC vào ngày 28 tháng 8 để nâng cấp. Nếu có thắc mắc, vui lòng liên hệ với nhóm hỗ trợ của chúng tôi (support@dify.ai). Chúng tôi đánh giá cao sự kiên nhẫn của bạn.',
},
Expand Down
89 changes: 89 additions & 0 deletions web/i18n/pl-PL/app-annotation.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
const translation = {
title: 'Adnotacje',
name: 'Odpowiedź adnotacji',
editBy: 'Odpowiedź edytowana przez {{author}}',
noData: {
title: 'Brak adnotacji',
description:
'Możesz edytować adnotacje podczas debugowania aplikacji lub importować adnotacje tutaj w celu uzyskania wysokiej jakości odpowiedzi.',
},
table: {
header: {
question: 'pytanie',
answer: 'odpowiedź',
createdAt: 'utworzono',
hits: 'trafienia',
actions: 'akcje',
addAnnotation: 'Dodaj adnotację',
bulkImport: 'Masowy import',
bulkExport: 'Masowy eksport',
clearAll: 'Wyczyść wszystkie adnotacje',
},
},
editModal: {
title: 'Edytuj odpowiedź adnotacji',
queryName: 'Zapytanie użytkownika',
answerName: 'Bot opowiadający historie',
yourAnswer: 'Twoja odpowiedź',
answerPlaceholder: 'Wpisz tutaj swoją odpowiedź',
yourQuery: 'Twoje zapytanie',
queryPlaceholder: 'Wpisz tutaj swoje zapytanie',
removeThisCache: 'Usuń tę adnotację',
createdAt: 'Utworzono',
},
addModal: {
title: 'Dodaj odpowiedź adnotacji',
queryName: 'Pytanie',
answerName: 'Odpowiedź',
answerPlaceholder: 'Wpisz tutaj odpowiedź',
queryPlaceholder: 'Wpisz tutaj zapytanie',
createNext: 'Dodaj kolejną odpowiedź adnotacji',
},
batchModal: {
title: 'Masowy import',
csvUploadTitle: 'Przeciągnij i upuść tutaj swój plik CSV, lub ',
browse: 'przeglądaj',
tip: 'Plik CSV musi spełniać następującą strukturę:',
question: 'pytanie',
answer: 'odpowiedź',
contentTitle: 'zawartość fragmentu',
content: 'zawartość',
template: 'Pobierz szablon tutaj',
cancel: 'Anuluj',
run: 'Uruchom batch',
runError: 'Uruchomienie batcha nie powiodło się',
processing: 'Przetwarzanie batcha',
completed: 'Import zakończony',
error: 'Błąd importu',
ok: 'OK',
},
errorMessage: {
answerRequired: 'Odpowiedź jest wymagana',
queryRequired: 'Pytanie jest wymagane',
},
viewModal: {
annotatedResponse: 'Odpowiedź adnotacji',
hitHistory: 'Historia trafień',
hit: 'Trafienie',
hits: 'Trafienia',
noHitHistory: 'Brak historii trafień',
},
hitHistoryTable: {
query: 'Zapytanie',
match: 'Dopasowanie',
response: 'Odpowiedź',
source: 'Źródło',
score: 'Wynik',
time: 'Czas',
},
initSetup: {
title: 'Początkowa konfiguracja odpowiedzi adnotacji',
configTitle: 'Konfiguracja odpowiedzi adnotacji',
confirmBtn: 'Zapisz i włącz',
configConfirmBtn: 'Zapisz',
},
embeddingModelSwitchTip:
'Model wektoryzacji tekstu adnotacji, przełączanie modeli spowoduje ponowne osadzenie, co wiąże się z dodatkowymi kosztami.',
}

export default translation
102 changes: 102 additions & 0 deletions web/i18n/pl-PL/app-api.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
const translation = {
apiServer: 'Serwer API',
apiKey: 'Klucz API',
status: 'Status',
disabled: 'Wyłączony',
ok: 'W usłudze',
copy: 'Kopiuj',
copied: 'Skopiowane',
play: 'Graj',
pause: 'Pauza',
playing: 'Gra',
loading: 'Ładowanie',
merMaind: {
rerender: 'Przerób Renderowanie',
},
never: 'Nigdy',
apiKeyModal: {
apiSecretKey: 'Tajny klucz API',
apiSecretKeyTips:
'Aby zapobiec nadużyciom API, chron swój klucz API. Unikaj używania go jako zwykłego tekstu w kodzie front-end. :)',
createNewSecretKey: 'Utwórz nowy tajny klucz',
secretKey: 'Tajny Klucz',
created: 'UTWORZONY',
lastUsed: 'OSTATNIO UŻYWANY',
generateTips: 'Przechowuj ten klucz w bezpiecznym i dostępnym miejscu.',
},
actionMsg: {
deleteConfirmTitle: 'Usunąć ten tajny klucz?',
deleteConfirmTips: 'Tej akcji nie można cofnąć.',
ok: 'OK',
},
completionMode: {
title: 'Zakończenie App API',
info: 'Do generowania tekstu wysokiej jakości, takiego jak artykuły, podsumowania i tłumaczenia, użyj API completion-messages z danymi wejściowymi użytkownika. Generowanie tekstu zależy od parametrów modelu i szablonów promptów ustawionych w Dify Prompt Engineering.',
createCompletionApi: 'Utwórz Wiadomość Zakończenia',
createCompletionApiTip:
'Utwórz Wiadomość Zakończenia, aby obsługiwać tryb pytanie-odpowiedź.',
inputsTips:
'(Opcjonalnie) Podaj pola wejściowe użytkownika jako pary klucz-wartość, odpowiadające zmiennym w Prompt Eng. Klucz to nazwa zmiennej, Wartość to wartość parametru. Jeśli typ pola to Wybierz, przesłana Wartość musi być jednym z predefiniowanych wyborów.',
queryTips: 'Treść tekstu wprowadzanego przez użytkownika.',
blocking:
'Typ blokujący, czekanie na zakończenie wykonania i zwrócenie wyników. (Żądania mogą być przerywane, jeśli proces jest długi)',
streaming:
'zwraca strumieniowo. Implementacja strumieniowego zwrotu na podstawie SSE (Server-Sent Events).',
messageFeedbackApi: 'Informacje zwrotne o wiadomości (lubię)',
messageFeedbackApiTip:
'Oceniaj otrzymane wiadomości w imieniu użytkowników końcowych na podstawie polubień lub niepolubień. Te dane są widoczne na stronie Logi i adnotacje i są używane do przyszłego dostrojenia modelu.',
messageIDTip: 'ID wiadomości',
ratingTip: 'lubię lub nie lubię, null to cofnięcie',
parametersApi: 'Uzyskaj informacje o parametrach aplikacji',
parametersApiTip:
'Pobierz skonfigurowane parametry wejściowe, w tym nazwy zmiennych, nazwy pól, typy i domyślne wartości. Zwykle używane do wyświetlania tych pól w formularzu lub wypełniania domyślnych wartości po załadowaniu klienta.',
},
chatMode: {
title: 'Chat App API',
info: 'Do wszechstronnych aplikacji konwersacyjnych w formacie Q&A, wywołaj API chat-messages, aby rozpocząć dialog. Utrzymuj trwające rozmowy, przekazując zwrócone conversation_id. Parametry odpowiedzi i szablony zależą od ustawień Dify Prompt Eng.',
createChatApi: 'Utwórz wiadomość czatu',
createChatApiTip:
'Utwórz nową wiadomość konwersacji lub kontynuuj istniejący dialog.',
inputsTips:
'(Opcjonalnie) Podaj pola wejściowe użytkownika jako pary klucz-wartość, odpowiadające zmiennym w Prompt Eng. Klucz to nazwa zmiennej, Wartość to wartość parametru. Jeśli typ pola to Wybierz, przesłana Wartość musi być jednym z predefiniowanych wyborów.',
queryTips: 'Treść pytania/wprowadzanej przez użytkownika',
blocking:
'Typ blokujący, czekanie na zakończenie wykonania i zwrócenie wyników. (Żądania mogą być przerywane, jeśli proces jest długi)',
streaming:
'zwraca strumieniowo. Implementacja strumieniowego zwrotu na podstawie SSE (Server-Sent Events).',
conversationIdTip:
'(Opcjonalnie) ID rozmowy: pozostaw puste dla pierwszej rozmowy; przekaż conversation_id z kontekstu, aby kontynuować dialog.',
messageFeedbackApi: 'Informacje zwrotne od użytkownika terminala, lubię',
messageFeedbackApiTip:
'Oceniaj otrzymane wiadomości w imieniu użytkowników końcowych na podstawie polubień lub niepolubień. Te dane są widoczne na stronie Logi i adnotacje i są używane do przyszłego dostrojenia modelu.',
messageIDTip: 'ID wiadomości',
ratingTip: 'lubię lub nie lubię, null to cofnięcie',
chatMsgHistoryApi: 'Pobierz historię wiadomości czatu',
chatMsgHistoryApiTip:
'Pierwsza strona zwraca najnowsze `limit` wiadomości, które są w odwrotnej kolejności.',
chatMsgHistoryConversationIdTip: 'ID rozmowy',
chatMsgHistoryFirstId:
'ID pierwszego rekordu czatu na bieżącej stronie. Domyślnie brak.',
chatMsgHistoryLimit: 'Ile czatów jest zwracanych w jednym żądaniu',
conversationsListApi: 'Pobierz listę rozmów',
conversationsListApiTip:
'Pobiera listę sesji bieżącego użytkownika. Domyślnie zwraca ostatnie 20 sesji.',
conversationsListFirstIdTip:
'ID ostatniego rekordu na bieżącej stronie, domyślnie brak.',
conversationsListLimitTip: 'Ile czatów jest zwracanych w jednym żądaniu',
conversationRenamingApi: 'Zmiana nazwy rozmowy',
conversationRenamingApiTip:
'Zmień nazwy rozmów; nazwa jest wyświetlana w interfejsach klienta wielosesyjnego.',
conversationRenamingNameTip: 'Nowa nazwa',
parametersApi: 'Uzyskaj informacje o parametrach aplikacji',
parametersApiTip:
'Pobierz skonfigurowane parametry wejściowe, w tym nazwy zmiennych, nazwy pól, typy i domyślne wartości. Zwykle używane do wyświetlania tych pól w formularzu lub wypełniania domyślnych wartości po załadowaniu klienta.',
},
develop: {
requestBody: 'Ciało żądania',
pathParams: 'Parametry ścieżki',
query: 'Zapytanie',
},
}

export default translation

0 comments on commit 708b763

Please sign in to comment.