diff --git a/apps/nextjs-app/src/features/app/blocks/view/search/SearchCommand.tsx b/apps/nextjs-app/src/features/app/blocks/view/search/SearchCommand.tsx index a5b3c17626..796a5e8e97 100644 --- a/apps/nextjs-app/src/features/app/blocks/view/search/SearchCommand.tsx +++ b/apps/nextjs-app/src/features/app/blocks/view/search/SearchCommand.tsx @@ -166,7 +166,7 @@ export const SearchCommand = (props: ISearchCommand) => { size={'sm'} className="flex flex-1 items-center truncate p-0" > - + {t('actions.showAllRow')} diff --git a/packages/common-i18n/src/locales/en/sdk.json b/packages/common-i18n/src/locales/en/sdk.json index 48881fc690..631eaf8603 100644 --- a/packages/common-i18n/src/locales/en/sdk.json +++ b/packages/common-i18n/src/locales/en/sdk.json @@ -182,6 +182,8 @@ "duplicateRecord": "Duplicate record", "copyRecordUrl": "Copy record URL", "deleteRecord": "Delete record", + "previousRecord": "Previous record", + "nextRecord": "Next record", "recordHistory": { "hiddenRecordHistory": "Hide record history", "showRecordHistory": "Show record history", diff --git a/packages/common-i18n/src/locales/pl/auth.json b/packages/common-i18n/src/locales/pl/auth.json new file mode 100644 index 0000000000..5e576457cd --- /dev/null +++ b/packages/common-i18n/src/locales/pl/auth.json @@ -0,0 +1,43 @@ +{ + "page": { + "title": "Logowanie" + }, + "button": { + "signin": "Zaloguj się", + "signup": "Zarejestruj się" + }, + "label": { + "email": "Email", + "password": "Hasło" + }, + "placeholder": { + "password": "Podaj swoje hasło...", + "email": "Podaj swój email..." + }, + "resetPassword": { + "header": "Reset hasła", + "description": "Wprowadź poniżej nowe hasło do konta.", + "label": "Nowe hasło", + "error": { + "requiredPassword": "Hasło jest wymagane", + "invalidLink": "Nieprawidłowy link resetowania hasła" + }, + "success": { + "title": "🎉 Pomyślne zresetowano hasło", + "description": "Hasło zostało pomyślnie zresetowane. Nastąpi przekierowanie do strony logowania." + }, + "buttonText": "Zresetuj hasło" + }, + "forgetPassword": { + "trigger": "Zapomniałeś hasła?", + "header": "Reset hasła", + "description": "Wprowadź poniżej swój adres e-mail, a my wyślemy Ci link do zresetowania hasła.", + "errorRequiredEmail": "Email jest wymagany", + "errorInvalidEmail": "Nieprawidłowy email", + "buttonText": "Zresetuj hasło", + "success": { + "title": "🎉 Wiadomość e-mail z resetem hasła wysłana", + "description": "Wysłaliśmy wiadomość e-mail z linkiem do zresetowania hasła. Sprawdź swoją skrzynkę odbiorczą." + } + } +} diff --git a/packages/common-i18n/src/locales/pl/common.json b/packages/common-i18n/src/locales/pl/common.json new file mode 100644 index 0000000000..d00241f862 --- /dev/null +++ b/packages/common-i18n/src/locales/pl/common.json @@ -0,0 +1,289 @@ +{ + "brand": "Teable", + "actions": { + "title": "Akcje", + "save": "Zapisz", + "doNotSave": "Nie zapisuj", + "submit": "Prześlij", + "confirm": "Potwierdź", + "close": "Zamknij", + "edit": "Edytuj", + "fill": "Wypełnij", + "update": "Zaktualizuj", + "create": "Stwórz", + "delete": "Usuń", + "cancel": "Anuluj", + "zoomIn": "Powiększ", + "zoomOut": "Pomniejsz", + "back": "Cofnij", + "saveSucceed": "Zmiany zostały zapisane!", + "submitSucceed": "Dane zostały wprowadzone!", + "editSucceed": "Edycja zakończona pomyślnie!", + "updateSucceed": "Aktualizacja zakończona pomyślnie!", + "deleteSucceed": "Usunięcie zakończono pomyślnie!", + "resetSucceed": "Czyszczenie kosza zakończono pomyślnie!", + "restoreSucceed": "Przywracanie zakończono pomyślnie!", + "loading": "Ładowanie...", + "refreshPage": "Odśwież stronę", + "yesDelete": "Tak, skasuj", + "rename": "Zmień nazwę", + "duplicate": "Powiel", + "change": "Zmień", + "upgrade": "Ulepsz", + "search": "Wyszukaj", + "loadMore": "Załaduj więcej", + "collapseSidebar": "Zwiń pasek boczny", + "restore": "Przywróć", + "permanentDelete": "Usuń na stałe", + "globalSearch": "Szukaj wszędzie", + "fieldSearch": "Wybierz pola", + "showAllRow": "Nie ukrywaj wierszy", + "hideNotMatchRow": "Ukryj niepasujące" + }, + "quickAction": { + "title": "Szybkie akcje...", + "placeHolder": "Wpisz komendę lub wyszukaj..." + }, + "settings": { + "title": "Ustawienia", + "back": "Back to home", + "account": { + "title": "Mój profil", + "tab": "Mój profil", + "updatePhoto": "Wgraj zdjęcie", + "updateNameDesc": "Nazwa będzie wyświetlana na liście zmian i we wzmiankach. Możesz ją zmienić w dowolnym momencie.", + "securityTitle": "Bezpieczeństwo konta", + "email": "Email", + "password": "Hasło", + "passwordDesc": "Stałe hasło do logowania się na konto.", + "changePassword": { + "title": "Zmień hasło", + "desc": "Podaj swoje dotychczasowe hasło i nowe", + "current": "Podaj swoje obecne hasło", + "new": "Podaj nowe hasło", + "confirm": "Potwórz nowe hasło" + }, + "changePasswordError": { + "disMatch": "Twoje nowe hasło się nie zgadza.", + "equal": "Nowe hasło musi różnić się od obecnego.", + "invalid": "Bieżące hasło jest nieprawidłowe.", + "invalidNew": "Twoje nowe hasło jest nieprawidłowe, minimum 8 znaków." + }, + "changePasswordSuccess": { + "title": "🎉 Pomyślnie zmieniono hasło.", + "desc": "Zostaniesz przekierowany na stronę logowania w ciągu 2 sekund." + }, + "manageToken": "Tokeny dostępu", + "addPassword": { + "title": "Dodaj hasło", + "desc": "Ustaw stałe hasło do logowania się na konto", + "password": "Podaj hasło", + "confirm": "Potwórz hasło" + }, + "addPasswordError": { + "disMatch": "Hasła się nie zgadzają.", + "invalid": "Podano nieprawidłowe hasło, minimum 8 znaków." + }, + "addPasswordSuccess": { + "title": "🎉 Pomyślnie dodano hasło." + } + }, + "notify": { + "title": "Powiadomienia", + "label": "Aktywność w Twojej przestrzeni", + "desc": "Otrzymuj wiadomości e-mail, gdy otrzymasz komentarze, wzmianki, zaproszenia do strony, przypomnienia, prośby o dostęp i zmiany właściwości." + }, + "setting": { + "title": "Personalizacja", + "theme": "Motyw", + "themeDesc": "Wybierz motyw dla aplikacji.", + "dark": "Ciemny", + "light": "Jasny", + "system": "Systemowy", + "version": "Wersja aplikacji", + "language": "Język" + }, + "nav": { + "settings": "Ustawienia", + "logout": "Wyloguj się" + }, + "integration": { + "title": "Integracje", + "description": "Liczba aplikacji mająca dostęp do Twojego konta: {{count}}.", + "lastUsed": "Ostatnio używane {{date}}", + "revoke": "Wycofaj", + "owner": "Właściciel: {{user}}", + "revokeTitle": "Czy na pewno chcesz cofnąć autoryzację?", + "revokeDesc": "{{name}} nie będzie już w stanie uzyskać dostępu do Teable API. Nie możesz cofnąć tej akcji.", + "scopeTitle": "Uprawnienia", + "scopeDesc": "Aplikacja będzie mogła korzystać z następujących obszarów:" + } + }, + "noun": { + "table": "Tabela", + "view": "Widok", + "space": "Przestrzeń", + "base": "Baza", + "field": "Pole", + "record": "Rekord", + "dashboard": "Pulpit", + "automation": "Automatyzacje", + "authorityMatrix": "Macierz uprawnień", + "adminPanel": "Panel administracyjny", + "license": "Licencja", + "instanceId": "ID instancji", + "beta": "Beta", + "trash": "Kosz", + "global": "Wszędzie" + }, + "level": { + "free": "Free", + "plus": "Plus", + "pro": "Pro", + "enterprise": "Enterprise" + }, + "noResult": "Brak wyników", + "untitled": "Bez nazwy", + "name": "Nazwa", + "description": "Opis", + "required": "Wymagane", + "atLeastOne": "At least reserve a {{noun}}", + "guide": { + "prev": "Prev", + "next": "Next", + "done": "Done", + "skip": "Skip", + "createSpaceTooltipTitle": "Create a space", + "createSpaceTooltipContent": "Teable is organized into spaces, where each space invites users to collaborate.

Spaces in Teable serve as a primary navigation element within the menu bar, offering a foundational platform for users to add and manage databases as needed.", + "createBaseTooltipTitle": "Create a base", + "createBaseTooltipContent": "A base (short for \"database\") is a place to store important data, and the workflows that depend on it.", + "createTableTooltipTitle": "Create a table", + "createTableTooltipContent": "Tables are designed to efficiently handle diverse datasets, offering a versatile display of information through various data types.", + "createViewTooltipTitle": "Create a view", + "createViewTooltipContent": "Currently, users can create Grid, Gallery, Kanban and Form views, with Calendar views planned for future releases.

This variety equips users with a comprehensive toolkit for various data management tasks.", + "viewFilteringTooltipTitle": "Filtering records", + "viewFilteringTooltipContent": "One of the core features of views is the ability to filter out records from a view according to the conditions you set.

When a record is filtered out based on a condition, it is not deleted—it's just hidden from the particular view you're using to look at your table.", + "viewSortingTooltipTitle": "Sorting records", + "viewSortingTooltipContent": "While in a view, you can sort your records so that they appear in a particular order according to the values in specific fields.

Sorting your records in one view doesn't affect the order of records in other views—it just applies to the view you're currently using to look at your table.", + "viewGroupingTooltipTitle": "Grouping records", + "viewGroupingTooltipContent": "Grouping records allows creators to build a set of one or more conditions that will help to categorize the dataset that is being presented within a particular view.", + "apiButtonTooltipTitle": "API", + "apiButtonTooltipContent": "Teable offers a powerful API that supports nearly all product features, allowing developers to make calls using an Token." + }, + "token": "Token", + "poweredBy": "Powered by <0>", + "invite": { + "dialog": { + "title": "{{spaceName}} space sharing", + "desc_one": "This space has {{count}} collaborator. Adding a space collaborator will give them access to all bases within this space.", + "desc_other": "This space has {{count}} collaborators. Adding a space collaborator will give them access to all bases within this space.", + "tabEmail": "Invite by email", + "emailPlaceholder": "Invite more collaborators via email", + "tabLink": "Invite by link", + "linkPlaceholder": "Create an invite link that grants <0/> access to anyone who opens it.", + "emailSend": "Send invite", + "linkSend": "Create link", + "spaceTitle": "Space collaborators", + "collaboratorSearchPlaceholder": "Znajdź członka przestrzeni według nazwy lub adresu e-mail", + "collaboratorJoin": "dołączył {{joinTime}}", + "collaboratorRemove": "Remove collaborator", + "linkTitle": "Invite links", + "linkCreatedTime": "created {{createdTime}}", + "linkCopySuccess": "Link copied", + "linkRemove": "Remove link" + }, + "base": { + "title": "Share {{baseName}}", + "desc_one": "This base is shared with {{count}} collaborator.", + "desc_other": "This base is shared with {{count}} collaborators.", + "baseTitle": "Base collaborators", + "collaboratorSearchPlaceholder": "Find a base collaborator by name or email" + } + }, + "help": { + "title": "Pomoc", + "mainLink": "https://help.teable.io", + "apiLink": "https://help.teable.io/developer/api" + }, + "pagePermissionChangeTip": "Page permissions have been updated. Please refresh the page to see the latest content.", + "listEmptyTips": "The list is empty", + "billing": { + "overLimits": "Over limits", + "overLimitsDescription": "Your current subscription has exceeded its usage limit. Please upgrade your plan to continue using this feature without interruption.", + "userLimitExceededDescription": "The current instance have reached the maximum number of users allowed by your license. Please deactivate some users or upgrade the license.", + "unavailableInPlanTips": "The current subscription plan does not support this feature", + "levelTips": "This space is currently on the {{level}} plan", + "spaceSubscriptionModal": { + "title": "Upgrade space's subscription plan", + "description": "You can only upgrade workspaces where you are an owner" + }, + "status": { + "active": "Active", + "canceled": "Canceled", + "incomplete": "Incomplete", + "incompleteExpired": "Incomplete Expired", + "trialing": "Trialing", + "pastDue": "Past Due", + "unpaid": "Unpaid", + "paused": "Paused", + "seatLimitExceeded": "Seat limit exceeded" + } + }, + "admin": { + "setting": { + "description": "Zmień ustawienia dla Twojej obecnej instancji", + "allowSignUp": "Zezwalaj na tworzenie nowych kont", + "allowSignUpDescription": "Wyłączenie tej opcji uniemożliwi nowe rejestracje użytkowników, a przycisk rejestracji nie będzie już pojawiał się na stronie logowania.", + "allowSpaceInvitation": "Zezwalaj na wysyłanie zaproszeń do przestrzeni", + "allowSpaceInvitationDescription": "Wyłączenie tej opcji uniemożliwi użytkownikom innych niż administratorzy zapraszanie innych do dołączenia do przestrzeni. Włączenie tej opcji pozwoli zaproszonym użytkownikom na utworzenie konta, nawet jeśli rejestracja jest wyłączona.", + "allowSpaceCreation": "Zezwalaj wszystkim na tworzenie nowych przestrzeni", + "allowSpaceCreationDescription": "Wyłączenie tej opcji uniemożliwi użytkownikom innych niż administratorzy tworzenie nowych przestrzeni." + } + }, + "notification": { + "title": "Powiadomienia", + "unread": "Nieodczytane", + "read": "Odczytane", + "markAs": "Oznacz to powiadomienie jako {{status}}", + "markAllAsRead": "Oznacz wszystkie jako odczytane", + "noUnread": "Brak powiadomień w folderze {{status}}", + "changeSetting": "Change page notification settings", + "new": "new {{count}}", + "showMore": "Show more" + }, + "role": { + "title": { + "owner": "Właściciel", + "creator": "Twórca", + "editor": "Edytor", + "commenter": "Komentujący", + "viewer": "Obserwator" + }, + "description": { + "owner": "Może w pełni konfigurować i edytować bazy, automatyzacje, macierze uprawnień oraz zarządzać ustawieniami przestrzeni i płatnościami", + "creator": "Może w pełni konfigurować i edytować bazy, automatyzacje i włączać macierze uprawnień", + "editor": "Może edytować rekordy i widoki, ale nie może konfigurować tabel ani pól", + "commenter": "Może komentować rekordy", + "viewer": "Nie może edytować ani komentować" + } + }, + "trash": { + "type": "Typ", + "resetTrash": "Opróźnij kosz", + "deletedBy": "Usunięte przez", + "deletedTime": "Czas usunięcia", + "fromSpace": "Z przestrzeni \"{{name}}\"", + "permanentDeleteTips": "Czy na pewno chcesz usunąć \"{{resource}}: {{name}}\"?", + "resetTrashConfirm": "Czy na pewno chcesz opróżnić kosz?" + }, + "pluginCenter": { + "pluginUrlEmpty": "Wtyczka nie ustawia adresu url", + "install": "Zainstaluj", + "publisher": "Wydawca", + "lastUpdated": "Ostatnio zaktualizowano", + "pluginNotFound": "Nie znaleziono wtyczki", + "pluginEmpty": { + "title": "Nie ma jeszcze wtyczek" + } + } +} diff --git a/packages/common-i18n/src/locales/pl/dashboard.json b/packages/common-i18n/src/locales/pl/dashboard.json new file mode 100644 index 0000000000..7013aab620 --- /dev/null +++ b/packages/common-i18n/src/locales/pl/dashboard.json @@ -0,0 +1,15 @@ +{ + "empty": { + "title": "Nie ma jeszcze żadnych pulpitów", + "description": "Wygląda na to, że nie utworzono jeszcze żadnych pulpitów. Pulpity pomagają wizualizować dane i zarządzać nimi w bardziej efektywny sposób.", + "create": "Utwórz swój pierwszy pulpit" + }, + "addPlugin": "Dodaj wtyczkę", + "createDashboard": { + "button": "Stwórz pulpit", + "title": "Utwórz nowy pulpit", + "placeholder": "Wprowadź nazwę pulpitu" + }, + "findDashboard": "Znajdź pulpit...", + "expand": "Rozwiń" +} diff --git a/packages/common-i18n/src/locales/pl/developer.json b/packages/common-i18n/src/locales/pl/developer.json new file mode 100644 index 0000000000..7474352311 --- /dev/null +++ b/packages/common-i18n/src/locales/pl/developer.json @@ -0,0 +1,21 @@ +{ + "apiQueryBuilder": "API query builder", + "subTitle": "You can quickly build your query requests through a interactive UI and copy the code that can be run directly", + "apiList": "Complete API List", + "cellFormat": "Cell result format", + "fieldKeyType": "Field key type", + "fieldKeyTypeDesc": "The type of the field key in the result", + "chooseSource": "Choose a data source", + "action": { + "selectBase": "Select a database...", + "selectTable": "Select a table..." + }, + "pickParams": "Select and configure the parameters", + "buildResult": "Build result", + "buildResultEmpty": "No result yet", + "previewReturnValue": "Return value preview", + "replaceToken": "Replace token", + "createNewToken": "Create new token", + "showPagination": "Pagination parameters are displayed in JSON mode", + "addSort": "Add a sort" +} diff --git a/packages/common-i18n/src/locales/pl/oauth.json b/packages/common-i18n/src/locales/pl/oauth.json new file mode 100644 index 0000000000..b580e2682e --- /dev/null +++ b/packages/common-i18n/src/locales/pl/oauth.json @@ -0,0 +1,63 @@ +{ + "add": "New OAuth Apps", + "title": { + "add": "New OAuth Apps", + "edit": "Edit OAuth Apps" + }, + "form": { + "name": { + "label": "OAuth App name", + "description": "The name of your OAuth App." + }, + "description": { + "label": "Description", + "description": "A short description of your OAuth App." + }, + "homePageUrl": { + "label": "Homepage URL", + "description": "The full URL to your OAuth App’s website." + }, + "logo": { + "label": "Logo", + "description": "A square image is recommended.", + "placeholder": "Drag and drop your logo here or click to upload", + "button": "Upload a logo", + "clear": "Clear", + "lengthError": "Only one file is allowed.", + "typeError": "Only image file is allowed." + }, + "callbackUrl": { + "label": "Callback URL", + "description": "The full URL to redirect to after a user authorizing your integration.", + "add": "Add Callback URL" + }, + "scopes": { + "label": "Scopes", + "description": "The permissions your OAuth App needs." + }, + "secret": { + "label": "Client secrets", + "add": "Generate a new client secret", + "newDescription": "Make sure to copy your new client secret now. You won’t be able to see it again.", + "empty": "You need a client secret to authenticate as the application to the API.", + "lastUsed": "Last used at {{date}}", + "tag": "Client secret", + "neverUsed": "Never used" + }, + "clientId": { + "label": "Client ID: " + } + }, + "formType": { + "basic": "Basic information", + "scopes": "Scopes", + "identify": "Identifying and authorizing users", + "clientInfo": "Client information" + }, + "decision": { + "title": "{{name}} is requesting access to your account", + "scopes": "This application will be able to get the following scopes:", + "redirectDescription": "Authorizing will redirect to", + "authorize": "Authorize" + } +} diff --git a/packages/common-i18n/src/locales/pl/plugin.json b/packages/common-i18n/src/locales/pl/plugin.json new file mode 100644 index 0000000000..62127e3130 --- /dev/null +++ b/packages/common-i18n/src/locales/pl/plugin.json @@ -0,0 +1,56 @@ +{ + "add": "New Plugins", + "title": { + "add": "New Plugins", + "edit": "Edit Plugins" + }, + "pluginUser": { + "name": "Plugin User", + "description": "Plugin User as a plugin auto generated by the system" + }, + "secret": "Secret", + "regenerateSecret": "Regenerate Secret", + "form": { + "name": { + "label": "Name", + "description": "name of the plugin" + }, + "description": { + "label": "Description", + "description": "description of the plugin" + }, + "detailDesc": { + "label": "Detail Description", + "description": "detail description of the plugin" + }, + "logo": { + "label": "Logo", + "description": "logo of the plugin, you can upload a picture or use a URL", + "upload": "Upload", + "clear": "Clear", + "placeholder": "Drag and drop your logo here or click to upload", + "lengthError": "Only one file is allowed.", + "typeError": "Only image file is allowed." + }, + "helpUrl": { + "label": "Help Url", + "description": "URL of the help document of the plugin" + }, + "positions": { + "label": "Positions", + "description": "positions of the plugin" + }, + "i18n": { + "label": "I18n", + "description": "i18n of the plugin, contains(name, description, detail description)" + }, + "url": { + "label": "Url", + "description": "URL of the plugin" + } + }, + "markdown": { + "write": "Write", + "preview": "Preview" + } +} diff --git a/packages/common-i18n/src/locales/pl/sdk.json b/packages/common-i18n/src/locales/pl/sdk.json new file mode 100644 index 0000000000..c27444512c --- /dev/null +++ b/packages/common-i18n/src/locales/pl/sdk.json @@ -0,0 +1,730 @@ +{ + "common": { + "comingSoon": "Coming Soon", + "empty": "Pusto", + "noRecords": "No records available", + "unnamedRecord": "Nienazwany rekord", + "untitled": "Untitled", + "cancel": "Anuluj", + "confirm": "Potwierdź", + "back": "Back", + "done": "Done", + "create": "Dodaj", + "search": { + "placeholder": "Wyszukaj...", + "empty": "Brak wyników" + }, + "selectPlaceHolder": "Wybierz...", + "loading": "Ładowanie...", + "loadMore": "Wczytaj więcej", + "uploadFailed": "Upload failed", + "rowCount": "{{count}} records", + "summary": "Summary", + "summaryTip": "Hover to select summary", + "actions": "Akcje" + }, + "preview": { + "previewFileLimit": "Preview file size limit: {{size}}MB, please download to view instead.", + "loadFileError": "Failed to load file" + }, + "undoRedo": { + "undo": "Cofnij", + "redo": "Przywróć", + "undoFailed": "Cofnięcie nie udało się", + "redoFailed": "Przywrócenie nie udało się", + "nothingToUndo": "Nie ma co cofnąć", + "nothingToRedo": "Nie ma co przywrócić", + "undoSucceed": "Cofnięto", + "redoSucceed": "Przywrócono", + "undoing": "cofanie...", + "redoing": "przywracanie..." + }, + "editor": { + "attachment": { + "uploadDragOver": "Release to upload file", + "uploadDragDefault": "Paste or drag and drop to upload here", + "upload": "upload" + }, + "date": { + "placeholder": "Pick a date", + "today": "Today" + }, + "formula": { + "title": "Edytor formuł", + "guideSyntax": "Składnia", + "guideExample": "Przykład", + "helperExample": "Przykład: ", + "fieldValue": "Zwraca wartość w komórkach „{{fieldName}}”." + }, + "link": { + "placeholder": "Wybierz rekordy do powiązania", + "searchPlaceholder": "Szukaj w rekordach...", + "create": "Stwórz inny rekord", + "selectRecord": "Wybór rekordu", + "unselected": "Niewybrane", + "selected": "Wybrane", + "expandRecordError": "No permission to view this record.", + "alreadyOpen": "This record is already open.", + "goToForeignTable": "Przejdź do tej tabeli" + }, + "user": { + "searchPlaceholder": "Znajdź użytkowników po nazwie", + "notify": "Notify users once they're selected" + }, + "select": { + "addOption": "Add an option '{{option}}'" + } + }, + "filter": { + "label": "Filtrowanie", + "displayLabel": "Przefiltruj według", + "displayLabel_other": "Filter by {{fieldName}} and {{count}} other fields", + "addCondition": "Dodaj warunek", + "addConditionGroup": "Dodaj grupę warunków", + "nestedLimitTip": "Filter conditions can only be nested {{depth}} levels deep", + "linkInputPlaceholder": "Enter a value", + "groupDescription": "Any of the following are true…", + "currentUser": "Me (current user)", + "tips": { + "scope": "W tym widoku wyświetlane są rekordy" + }, + "invalidateSelected": "Invalid value", + "invalidateSelectedTips": "The selected value has been deleted, please select again", + "default": { + "empty": "Nie są stosowane żadne warunki filtrowania", + "placeholder": "Enter a value" + }, + "conjunction": { + "and": "oraz", + "or": "lub", + "where": "gdzie" + }, + "operator": { + "is": "jest równe", + "isNot": "nie jest równe", + "contains": "zawiera", + "doesNotContain": "nie zawiera", + "isEmpty": "jest pusty", + "isNotEmpty": "nie jest pusty", + "isGreater": "jest większy niż", + "isGreaterEqual": "jest większy lub równy", + "isLess": "jest mniejszy niż", + "isLessEqual": "jest mniejszy lub równy", + "isAnyOf": "jest jednym z", + "isNoneOf": "nie jest żadnym z", + "hasAnyOf": "ma jakiekolwiek z", + "hasAllOf": "ma wszystkie z", + "hasNoneOf": "nie ma żadnego z", + "isExactly": "jest dokładnie", + "isWithIn": "jest w", + "isBefore": "jest przed", + "isAfter": "jest po", + "isOnOrBefore": "jest w lub przed", + "isOnOrAfter": "jest w lub po", + "number": { + "is": "=", + "isNot": "≠", + "isGreater": ">", + "isGreaterEqual": "≥", + "isLess": "<", + "isLessEqual": "≤" + } + }, + "component": { + "date": { + "today": "today", + "tomorrow": "tomorrow", + "yesterday": "yesterday", + "oneWeekAgo": "one week ago", + "oneWeekFromNow": "one week from now", + "oneMonthAgo": "one month ago", + "oneMonthFromNow": "one month from now", + "daysAgo": "days ago", + "daysFromNow": "days from now", + "exactDate": "exact date", + "pastWeek": "past week", + "pastMonth": "past month", + "pastYear": "past year", + "nextWeek": "next week", + "nextMonth": "next Month", + "nextYear": "next Year", + "pastNumberOfDays": "past number of days", + "nextNumberOfDays": "next number of days" + } + } + }, + "color": { + "label": "color" + }, + "rowHeight": { + "short": "niski", + "medium": "średni", + "tall": "wysoki", + "extraTall": "bardzo wysoki" + }, + "share": { + "title": "share" + }, + "extensions": { + "title": "extensions" + }, + "hidden": { + "label": "Ukrywanie pól", + "configLabel_one": "{{count}} hidden field", + "configLabel_other": "{{count}} hidden fields", + "configLabel_other_visible": "{{count}} visible fields", + "showAll": "Pokaż wszystkie", + "hideAll": "Ukryj wszystkie", + "primaryKey": "Primary field: Identifies records\ncannot be hidden or deleted, visible in linked records." + }, + "expandRecord": { + "copy": "Skopiuj do schowka", + "duplicateRecord": "Zduplikuj rekord", + "copyRecordUrl": "Skopiuj link do rekordu", + "deleteRecord": "Usuń rekord", + "previousRecord": "Poprzedni rekord", + "nextRecord": "Następny rekord", + "recordHistory": { + "hiddenRecordHistory": "Ukryj historię rekordu", + "showRecordHistory": "Pokaż historię rekordu", + "createdTime": "Data", + "createdBy": "Autor", + "before": "Przed", + "after": "Po", + "viewRecord": "Zobacz rekord" + }, + "showHiddenFields": "Pokaż ukryte pola ({{count}})", + "hideHiddenFields": "Schowaj ukryte pola ({{count}})" + }, + "sort": { + "label": "Sortowanie", + "displayLabel_one": "Sort by {{count}} field", + "displayLabel_other": "Sort by {{count}} fields", + "setTips": "Posortuj według", + "addButton": "Add another sort", + "autoSort": "Automatically sort records", + "selectASCLabel": "first → last", + "selectDESCLabel": "last → first" + }, + "group": { + "label": "Grupowanie", + "displayLabel_one": "Group by {{count}} fields", + "displayLabel_other": "Group by {{count}} fields", + "setTips": "Pogrupuj według", + "addButton": "Add Subgroup" + }, + "field": { + "title": { + "singleLineText": "Tekst jednoliniowy", + "longText": "Tekst długi", + "singleSelect": "Wybór pojedynczy", + "number": "Liczba", + "multipleSelect": "Wybór wielokrotny", + "link": "Link do innego rekordu", + "formula": "Formuła", + "date": "Data", + "createdTime": "Czas utworzenia", + "lastModifiedTime": "Czas ostatniej modyfikacji", + "attachment": "Załącznik", + "checkbox": "Pole wyboru", + "rollup": "Podsumowanie", + "user": "Użytkownik", + "rating": "Ocena", + "autoNumber": "Numer automatyczny", + "lookup": "Pole z innego rekordu", + "button": "Przycisk", + "createdBy": "Utworzone przez", + "lastModifiedBy": "Ostatnia modyfikacja przez" + } + }, + "permission": { + "actionDescription": { + "spaceCreate": "Create space", + "spaceDelete": "Delete space", + "spaceRead": "Read space", + "spaceUpdate": "Update space", + "spaceInviteEmail": "Invite via email in space", + "spaceInviteLink": "Invite via link in space", + "spaceGrantRole": "Grant role in space", + "baseCreate": "Create base", + "baseDelete": "Delete base", + "baseRead": "Read base", + "baseUpdate": "Update base", + "baseInviteEmail": "Invite via email in base", + "baseInviteLink": "Invite via link in base", + "baseTableImport": "Import data into base", + "baseTableExport": "Export data from base", + "baseAuthorityMatrixConfig": "Configure authority matrix", + "baseDbConnect": "Connect to database", + "tableCreate": "Create table", + "tableRead": "Read table", + "tableDelete": "Delete table", + "tableUpdate": "Update table", + "tableImport": "Import data into table", + "tableExport": "export table data", + "viewCreate": "Create view", + "viewDelete": "Delete view", + "viewRead": "Read view", + "viewUpdate": "Update view", + "viewShare": "Share view", + "fieldCreate": "Create field", + "fieldDelete": "Delete field", + "fieldRead": "Read field", + "fieldUpdate": "Update field", + "recordCreate": "Create record", + "recordComment": "Comment on record", + "recordDelete": "Delete record", + "recordRead": "Read record", + "recordUpdate": "Update record", + "automationCreate": "Create automation", + "automationDelete": "Delete automation", + "automationRead": "Read automation", + "automationUpdate": "Update automation", + "userEmailRead": "Read user email", + "recordHistoryRead": "Read record history", + "baseQuery": "Query base", + "instanceRead": "Read instance", + "instanceUpdate": "Update instance" + } + }, + "noun": { + "table": "Tabela", + "view": "Widok", + "space": "Przestrzeń", + "base": "Baza", + "field": "Pole", + "record": "Rekord", + "automation": "Automatyzacje", + "user": "Użytkownik", + "recordHistory": "Historia zmian rekordów", + "you": "Ty", + "instance": "Instancja" + }, + "formula": { + "SUM": { + "summary": "Dodaje liczby. Równoważne z number1 + number2 + ...", + "example": "SUM(100, 200, 300) => 600" + }, + "AVERAGE": { + "summary": "Zwraca średnią z podanych liczb.", + "example": "AVERAGE(100, 200, 300) => 200" + }, + "MAX": { + "summary": "Zwraca największą z podanych liczb.", + "example": "MAX(100, 200, 300) => 300" + }, + "MIN": { + "summary": "Zwraca najmniejszą z podanych liczb.", + "example": "MIN(100, 200, 300) => 100" + }, + "ROUND": { + "summary": "Zaokrągla wartość do liczby miejsc dziesiętnych określonej przez „precyzję” (ROUND zaokrągla do najbliższej liczby całkowitej przy określonej precyzji, przy czym remisy są rozstrzygane przez zaokrąglanie w górę do nieskończoności).", + "example": "ROUND(1.99, 0) => 2\nROUND(16.8, -1) => 20" + }, + "ROUNDUP": { + "summary": "Zaokrągla wartość do liczby miejsc dziesiętnych określonej przez „precyzję”, zawsze zaokrąglając w górę, czyli od zera. (Musisz podać wartość precyzji, inaczej funkcja nie zadziała.)", + "example": "ROUNDUP(1.1, 0) => 2\nROUNDUP(-1.1, 0) => -2" + }, + "ROUNDDOWN": { + "summary": "Zaokrągla wartość do liczby miejsc dziesiętnych określonej przez „precyzję”, zawsze zaokrąglając w dół, czyli w kierunku zera. (Musisz podać wartość precyzji, inaczej funkcja nie zadziała.)", + "example": "ROUNDDOWN(1.9, 0) => 1\nROUNDDOWN(-1.9, 0) => -1" + }, + "CEILING": { + "summary": "Zwraca najbliższą wielokrotność znaczącej liczby, która jest większa lub równa wartości. Jeśli nie podano znaczącej liczby, przyjmuje się wartość 1.", + "example": "CEILING(2.49) => 3\nCEILING(2.49, 1) => 2.5\nCEILING(2.49, -1) => 10" + }, + "FLOOR": { + "summary": "Zwraca najbliższą wielokrotność znaczącej liczby, która jest mniejsza lub równa wartości. Jeśli nie podano znaczącej liczby, przyjmuje się wartość 1.", + "example": "FLOOR(2.49) => 2\nFLOOR(2.49, 1) => 2.4\nFLOOR(2.49, -1) => 0" + }, + "EVEN": { + "summary": "Zwraca najmniejszą liczbę parzystą, która jest większa lub równa podanej wartości.", + "example": "EVEN(0.1) => 2\nEVEN(-0.1) => -2" + }, + "ODD": { + "summary": "Zaokrągla wartość dodatnią w górę do najbliższej liczby nieparzystej, a ujemną w dół do najbliższej liczby nieparzystej.", + "example": "ODD(0.1) => 1\nODD(-0.1) => -1" + }, + "INT": { + "summary": "Zwraca number1, jeśli warunek logiczny jest prawdziwy, w przeciwnym razie zwraca number2. Może być także użyta do zagnieżdżonych instrukcji IF.\nMoże również sprawdzić, czy komórka jest pusta.", + "example": "INT(1.9) => 1\nINT(-1.9) => -2" + }, + "ABS": { + "summary": "Zwraca wartość bezwzględną.", + "example": "ABS(-1) => 1" + }, + "SQRT": { + "summary": "Zwraca pierwiastek kwadratowy z liczby nieujemnej.", + "example": "SQRT(4) => 2" + }, + "POWER": { + "summary": "Oblicza potęgowanie podanej podstawy do podanej potęgi.", + "example": "POWER(2) => 4" + }, + "EXP": { + "summary": "Oblicza liczbę Eulera (e) podniesioną do podanej potęgi.", + "example": "EXP(0) => 1\nEXP(1) => 2.718" + }, + "LOG": { + "summary": "Oblicza logarytm wartości w podanej bazie. Jeśli baza nie jest podana, domyślnie jest to 10.", + "example": "LOG(100) => 2\nLOG(1024, 2) => 10" + }, + "MOD": { + "summary": "Zwraca resztę po podzieleniu pierwszego argumentu przez drugi.", + "example": "MOD(9, 2) => 1\nMOD(9, 3) => 0" + }, + "VALUE": { + "summary": "Konwertuje ciąg tekstowy na liczbę.", + "example": "VALUE(\"$1,000,000\") => 1000000" + }, + "CONCATENATE": { + "summary": "Łączy różne typy wartości w jeden ciąg tekstowy.", + "example": "CONCATENATE(\"Hello \", \"Teable\") => Hello Teable" + }, + "FIND": { + "summary": "Znajduje wystąpienie stringToFind w ciągu whereToSearch, zaczynając od opcjonalnej pozycji startFromPosition (domyślnie 0). Jeśli nie znaleziono wystąpienia, wynik będzie 0.", + "example": "FIND(\"Teable\", \"Hello Teable\") => 7\nFIND(\"Teable\", \"Hello Teable\", 5) => 7\nFIND(\"Teable\", \"Hello Teable\", 10) => 0" + }, + "SEARCH": { + "summary": "Wyszukuje wystąpienie stringToFind w ciągu whereToSearch, zaczynając od opcjonalnej pozycji startFromPosition (domyślnie 0). Jeśli nie znaleziono wystąpienia, wynik będzie pusty.\nPodobne do FIND(), ale FIND() zwraca 0 zamiast pustego wyniku, gdy nie znaleziono stringToFind.", + "example": "SEARCH(\"Teable\", \"Hello Teable\") => 7\nSEARCH(\"Teable\", \"Hello Teable\", 5) => 7\nSEARCH(\"Teable\", \"Hello Teable\", 10) => \"\"" + }, + "MID": { + "summary": "Wyodrębnia podciąg o długości count znaków, zaczynając od whereToStart.", + "example": "MID(\"Hello Teable\", 6, 6) => \"Teable\"" + }, + "LEFT": { + "summary": "Wyodrębnia howMany znaków od początku ciągu.", + "example": "LEFT(\"2023-09-06\", 4) => \"2023\"" + }, + "RIGHT": { + "summary": "Wyodrębnia howMany znaków od końca ciągu.", + "example": "RIGHT(\"2023-09-06\", 5) => \"09-06\"" + }, + "REPLACE": { + "summary": "Zastępuje określoną liczbę znaków, zaczynając od pozycji startowej, nowym tekstem.\n(Jeśli szukasz sposobu na zamianę wszystkich wystąpień starego_tekstu na nowy_tekst, zobacz SUBSTITUTE().)", + "example": "REPLACE(\"Hello Table\", 7, 5, \"Teable\") => \"Hello Teable\"" + }, + "REGEXP_REPLACE": { + "summary": "Zastępuje wszystkie podciągi pasujące do wyrażenia regularnego zamiennikiem.", + "example": "REGEXP_REPLACE(\"Hello Table\", \"H.* \", \"\") => \"Teable\"" + }, + "SUBSTITUTE": { + "summary": "Zastępuje wystąpienia old_text nowym tekstem.\nMożna opcjonalnie określić, które wystąpienie tekstu zastąpić.", + "example": "SUBSTITUTE(\"Hello Table\", \"Table\", \"Teable\") => \"Hello Teable\"" + }, + "LOWER": { + "summary": "Zwraca wartość string_value przekształconą na małe litery.", + "example": "LOWER(\"Hello Teable\") => \"hello teable\"" + }, + "UPPER": { + "summary": "Zwraca wartość string_value przekształconą na wielkie litery.", + "example": "UPPER(\"Hello Teable\") => \"HELLO TEABLE\"" + }, + "REPT": { + "summary": "Powtarza ciąg znaków określoną liczbę razy.", + "example": "REPT(\"Hello!\") => \"Hello!Hello!Hello!\"" + }, + "TRIM": { + "summary": "Usuwa spacje na początku i na końcu ciągu znaków.", + "example": "TRIM(\" Hello \") => \"Hello\"" + }, + "LEN": { + "summary": "Zwraca liczbę znaków w ciągu tekstowym.", + "example": "LEN(\"Hello\") => 5" + }, + "T": { + "summary": "Zwraca argument, jeśli jest tekstem, w przeciwnym razie zwraca pustą wartość.", + "example": "T(\"Hello\") => \"Hello\"\nT(100) => null" + }, + "ENCODE_URL_COMPONENT": { + "summary": "Zamienia niektóre znaki na ich zakodowane odpowiedniki, używane przy konstruowaniu adresów URL lub URI. Nie koduje następujących znaków: - _ . ~", + "example": "ENCODE_URL_COMPONENT(\"Hello Teable\") => \"Hello%20Teable\"" + }, + "IF": { + "summary": "Zwraca wartość1, jeśli warunek logiczny jest prawdziwy, w przeciwnym razie zwraca wartość2. Może być również używana do tworzenia zagnieżdżonych instrukcji IF.\nMoże także sprawdzać, czy komórka jest pusta.", + "example": "IF(2 > 1, \"A\", \"B\") => \"A\"\nIF(2 > 1, TRUE, FALSE) => TRUE" + }, + "SWITCH": { + "summary": "Przyjmuje wyrażenie, listę możliwych wartości tego wyrażenia oraz dla każdej z nich wartość, którą powinno przyjąć wyrażenie w tym przypadku. Może również przyjmować wartość domyślną, jeśli dane wejściowe nie pasują do żadnego z określonych wzorców. W wielu przypadkach SWITCH() można użyć zamiast zagnieżdżonego IF().", + "example": "SWITCH(\"B\", \"A\", \"Wartość A\", \"B\", \"Wartość B\", \"Domyślna wartość\") => \"Wartość B\"" + }, + "AND": { + "summary": "Zwraca prawdę, jeśli wszystkie argumenty są prawdziwe, w przeciwnym razie zwraca fałsz.", + "example": "AND(1 < 2, 5 > 3) => true\nAND(1 < 2, 5 < 3) => false" + }, + "OR": { + "summary": "Zwraca prawdę, jeśli którekolwiek z argumentów jest prawdziwe.", + "example": "OR(1 < 2, 5 < 3) => true\nOR(1 > 2, 5 < 3) => false" + }, + "XOR": { + "summary": "Zwraca prawdę, jeśli nieparzysta liczba argumentów jest prawdziwa.", + "example": "XOR(1 < 2, 5 < 3, 8 < 10) => false\nXOR(1 > 2, 5 < 3, 8 < 10) => true" + }, + "NOT": { + "summary": "Odwraca wartość logiczną swojego argumentu.", + "example": "NOT(1 < 2) => false\nNOT(1 > 2) => true" + }, + "BLANK": { + "summary": "Zwraca pustą wartość.", + "example": "BLANK() => null\nIF(2 > 3, \"Yes\", BLANK()) => null" + }, + "ERROR": { + "summary": "Zwraca wartość błędu.", + "example": "IF(2 > 3, \"Yes\", ERROR(\"Calculation\")) => \"#ERROR: Calculation\"" + }, + "IS_ERROR": { + "summary": "Zwraca prawdę, jeśli wyrażenie powoduje błąd.", + "example": "IS_ERROR(ERROR()) => true" + }, + "TODAY": { + "summary": "Zwraca bieżącą datę.", + "example": "TODAY() => \"2023-09-08 00:00\"" + }, + "NOW": { + "summary": "Zwraca bieżącą datę i godzinę.", + "example": "NOW() => \"2023-09-08 16:50\"" + }, + "YEAR": { + "summary": "Zwraca czterocyfrowy rok z daty.", + "example": "YEAR(\"2023-09-08\") => 2023" + }, + "MONTH": { + "summary": "Zwraca miesiąc z daty jako liczbę od 1 (styczeń) do 12 (grudzień).", + "example": "MONTH(\"2023-09-08\") => 9" + }, + "WEEKNUM": { + "summary": "Zwraca numer tygodnia w roku.", + "example": "WEEKNUM(\"2023-09-08\") => 36" + }, + "WEEKDAY": { + "summary": "Zwraca dzień tygodnia jako liczbę od 0 do 6. Opcjonalnie można podać drugi argument (\"Niedziela\" lub \"Poniedziałek\"), aby rozpocząć tydzień od tego dnia. Domyślnie tygodnie zaczynają się w niedzielę.", + "example": "WEEKNUM(\"2023-09-08\") => 5" + }, + "DAY": { + "summary": "Zwraca dzień miesiąca jako liczbę od 1 do 31.", + "example": "DAY(\"2023-09-08\") => 8" + }, + "HOUR": { + "summary": "Zwraca godzinę z daty jako liczbę od 0 (12:00am) do 23 (11:00pm).", + "example": "HOUR(\"2023-09-08 16:50\") => 16" + }, + "MINUTE": { + "summary": "Zwraca minuty z daty jako liczbę od 0 do 59.", + "example": "MINUTE(\"2023-09-08 16:50\") => 50" + }, + "SECOND": { + "summary": "Zwraca sekundy z daty jako liczbę od 0 do 59.", + "example": "SECOND(\"2023-09-08 16:50:30\") => 30" + }, + "FROMNOW": { + "summary": "Oblicza liczbę dni między bieżącą datą a inną datą.", + "example": "FROMNOW({Date}, \"day\") => 25" + }, + "TONOW": { + "summary": "Oblicza liczbę dni między bieżącą datą a inną datą.", + "example": "TONOW({Date}, \"day\") => 25" + }, + "DATETIME_DIFF": { + "summary": "Zwraca różnicę między datami w określonych jednostkach. Domyślne jednostki to sekundy. (Zobacz listę specyfikatorów jednostek tutaj.)\nRóżnica między datami jest określana przez odjęcie [date2] od [date1]. Jeśli [date2] jest późniejsza niż [date1], wynik będzie ujemny.", + "example": "DATETIME_DIFF(\"2022-08-01\", \"2023-09-08\", \"day\") => 403" + }, + "WORKDAY": { + "summary": "Zwraca dzień roboczy dla daty początkowej, z pominięciem określonych świąt.", + "example": "WORKDAY(\"2023-09-08\", 200) => \"2024-06-14 00:00:00\"\nWORKDAY(\"2023-09-08\", 200, \"2024-01-22, 2024-01-23, 2024-01-24, 2024-01-25\") => \"2024-06-20 00:00:00\"" + }, + "WORKDAY_DIFF": { + "summary": "Zwraca liczbę dni roboczych między datą1 a datą2. Dni robocze wykluczają weekendy oraz opcjonalną listę świąt, sformatowaną jako ciąg dat w formacie ISO oddzielony przecinkami.", + "example": "WORKDAY_DIFF(\"2023-06-18\", \"2023-10-01\") => 75\nWORKDAY(\"2023-06-18\", \"2023-10-01\", \"2023-07-12, 2023-08-18, 2023-08-19\") => 73" + }, + "IS_SAME": { + "summary": "Porównuje dwie daty do jednostki i ustala, czy są identyczne. Zwraca true, jeśli tak, false, jeśli nie.", + "example": "IS_SAME(\"2023-09-08\", \"2023-09-10\") => false\nIS_SAME(\"2023-09-08\", \"2023-09-10\", \"month\") => true" + }, + "IS_AFTER": { + "summary": "Określa, czy data1 jest późniejsza niż data2. Zwraca true, jeśli tak, false, jeśli nie.", + "example": "IS_AFTER(\"2023-09-10\", \"2023-09-08\") => true\nIS_AFTER(\"2023-09-10\", \"2023-09-08\", \"month\") => false" + }, + "IS_BEFORE": { + "summary": "Określa, czy data1 jest wcześniejsza niż data2. Zwraca true, jeśli tak, false, jeśli nie.", + "example": "IS_BEFORE(\"2023-09-08\", \"2023-09-10\") => true\nIS_BEFORE(\"2023-09-08\", \"2023-09-10\", \"month\") => false" + }, + "DATE_ADD": { + "summary": "Dodaje określoną liczbę jednostek do daty i godziny.", + "example": "DATE_ADD(\"2023-09-08 18:00:00\", 10, \"day\") => \"2023-09-18 18:00:00\"" + }, + "DATESTR": { + "summary": "Formatuje datę i godzinę na ciąg (RRRR-MM-DD).", + "example": "DATESTR(\"2023/09/08\") => \"2023-09-08\"" + }, + "TIMESTR": { + "summary": "Formatuje datę i godzinę na ciąg czasu (GG:mm:ss).", + "example": "DATESTR(\"2023/09/08 16:50:30\") => \"16:50:30\"" + }, + "DATETIME_FORMAT": { + "summary": "Formatuje datę i godzinę na określony ciąg. Aby uzyskać wyjaśnienie, jak używać tej funkcji z polami daty, kliknij tutaj. Aby zobaczyć listę obsługiwanych specyfikatorów formatu, kliknij tutaj.", + "example": "DATETIME_FORMAT(\"2023-09-08\", \"DD-MM-YYYY\") => \"08-09-2023\"" + }, + "DATETIME_PARSE": { + "summary": "Interpretuje ciąg tekstowy jako zorganizowaną datę, z opcjonalnymi parametrami formatu wejściowego i lokalizacji. Format wyjściowy będzie zawsze sformatowany jako \"M/D/YYYY h:mm a\".", + "example": "DATETIME_PARSE(\"8 Sep 2023 18:00\", \"D MMM YYYY HH:mm\") => \"2023-09-08 18:00:00\"" + }, + "CREATED_TIME": { + "summary": "Zwraca czas utworzenia bieżącego rekordu.", + "example": "CREATED_TIME() => \"2023-09-08 18:00:00\"" + }, + "LAST_MODIFIED_TIME": { + "summary": "Zwraca datę i godzinę ostatniej modyfikacji dokonanej przez użytkownika w nieobliczanym polu w tabeli.", + "example": "LAST_MODIFIED_TIME() => \"2023-09-08 18:00:00\"" + }, + "COUNTALL": { + "summary": "Zwraca liczbę wszystkich elementów, w tym tekstu i pustych wartości.", + "example": "COUNTALL(100, 200, \"\", \"Teable\", TRUE()) => 5" + }, + "COUNTA": { + "summary": "Zwraca liczbę niepustych wartości. Ta funkcja zlicza zarówno wartości numeryczne, jak i tekstowe.", + "example": "COUNTA(100, 200, 300, \"\", \"Teable\", TRUE) => 4" + }, + "COUNT": { + "summary": "Zwraca liczbę elementów numerycznych.", + "example": "COUNT(100, 200, 300, \"\", \"Teable\", TRUE) => 3" + }, + "ARRAY_JOIN": { + "summary": "Łączy tablicę elementów rollup w ciąg z separatorem.", + "example": "ARRAY_JOIN([\"Tom\", \"Jerry\", \"Mike\"], \"; \") => \"Tom; Jerry; Mike\"" + }, + "ARRAY_UNIQUE": { + "summary": "Zwraca tylko unikalne elementy w tablicy.", + "example": "ARRAY_UNIQUE([1, 2, 3, 2, 1]) => [1, 2, 3]" + }, + "ARRAY_FLATTEN": { + "summary": "Spłaszcza tablicę, usuwając wszelkie zagnieżdżone tablice. Wszystkie elementy stają się elementami jednej tablicy.", + "example": "ARRAY_FLATTEN([1, 2, \" \", 3, true], [\"ABC\"]) => [1, 2, 3, \" \", true, \"ABC\"]" + }, + "ARRAY_COMPACT": { + "summary": "Usuwa puste ciągi i wartości null z tablicy. Zachowuje \"false\" oraz ciągi zawierające jeden lub więcej pustych znaków.", + "example": "ARRAY_COMPACT([1, 2, 3, \"\", null, \"ABC\"]) => [1, 2, 3, \"ABC\"]" + }, + "TEXT_ALL": { + "summary": "Zwraca wszystkie wartości tekstowe.", + "example": "TEXT_ALL(\"t\") => t" + }, + "RECORD_ID": { + "summary": "Zwraca ID bieżącego rekordu.", + "example": "RECORD_ID() => \"recxxxxxx\"" + }, + "AUTO_NUMBER": { + "summary": "Zwraca unikalne i zwiększające się numery dla każdego rekordu.", + "example": "AUTO_NUMBER() => 1" + }, + "FORMULA": { + "summary": "Uzupełnij zmienne, znaki operacyjne i funkcje, aby stworzyć formuły do obliczeń.", + "example": "Cytowanie kolumny: {Nazwa pola}\n\nUżycie operatora: 100 * 2 + 300\n\nUżycie funkcji: SUM({Pole liczby 1}, 100)\n\nUżycie instrukcji IF: \nIF(warunek logiczny, \"wartość 1\", \"wartość 2\")" + } + }, + "functionType": { + "fields": "Pola", + "numeric": "Liczbowe", + "text": "Tekstowe", + "logical": "Logiczne", + "date": "Daty", + "array": "Tablicowe", + "system": "Systemowe" + }, + "statisticFunc": { + "none": "None", + "count": "Count", + "empty": "Empty", + "filled": "Filled", + "unique": "Unique", + "max": "Max", + "min": "Min", + "sum": "Sum", + "average": "Average", + "checked": "Checked", + "unChecked": "Unchecked", + "percentEmpty": "Percent Empty", + "percentFilled": "Percent Filled", + "percentUnique": "Percent Unique", + "percentChecked": "Percent Checked", + "percentUnChecked": "Percent Unchecked", + "earliestDate": "Earliest Date", + "latestDate": "Latest Date", + "dateRangeOfDays": "Date Range (days)", + "dateRangeOfMonths": "Date Range (months)", + "totalAttachmentSize": "Total Attachment Size" + }, + "baseQuery": { + "add": "Add", + "error": { + "invalidCol": "Invalid column, please reselect", + "invalidCols": "Invalid columns: {{colNames}}", + "invalidTable": "Invalid table, please reselect", + "requiredSelect": "You must select one" + }, + "from": { + "title": "From", + "fromTable": "Select Table", + "fromQuery": "From Query" + }, + "select": { + "title": "Select" + }, + "where": { + "title": "Where" + }, + "groupBy": { + "title": "Group By" + }, + "orderBy": { + "title": "Order By", + "asc": "Ascending", + "desc": "Descending" + }, + "limit": { + "title": "Limit" + }, + "offset": { + "title": "Offset" + }, + "join": { + "title": "Join", + "joinType": "Join Type", + "leftJoin": "Left Join", + "rightJoin": "Right Join", + "innerJoin": "Inner Join", + "fullJoin": "Full Join", + "data": "From" + }, + "aggregation": { + "title": "Aggregation" + } + }, + "comment": { + "title": "Komentarze", + "placeholder": "Dodaj komentarz...", + "emptyComment": "Brak wpisów, zacznij dyskusję", + "deletedComment": "Komentarz usunięty", + "imageSizeLimit": "Rozmiar obrazu nie może być większy niż {{size}}", + "tip": { + "editing": "Edytujesz komentarz...", + "edited": "(zedytowano)", + "onNotify": "Wyłącz powiadomienia o komentarzach oprócz tych, które dotyczą Ciebie", + "offNotify": "Włącz powiadomienia o wszystkich komentarzach, nie tylko na Twój temat", + "reactionUserSuffix": "zareagował emotką {{emoji}}", + "me": "Twój użytkownik", + "connection": "oraz" + }, + "toolbar": { + "link": "Link", + "image": "Obraz" + }, + "floatToolbar": { + "editLink": "Edytuj link", + "caption": "Podpis", + "delete": "Usuń", + "linkText": "Wyświetlana nazwa", + "enterUrl": "Wprowadź link" + } + } +} diff --git a/packages/common-i18n/src/locales/pl/setting.json b/packages/common-i18n/src/locales/pl/setting.json new file mode 100644 index 0000000000..3819e8ecdf --- /dev/null +++ b/packages/common-i18n/src/locales/pl/setting.json @@ -0,0 +1,5 @@ +{ + "personalAccessToken": "Personal access tokens", + "oauthApps": "OAuth Apps", + "plugins": "Plugins" +} diff --git a/packages/common-i18n/src/locales/pl/share.json b/packages/common-i18n/src/locales/pl/share.json new file mode 100644 index 0000000000..884d58b9d7 --- /dev/null +++ b/packages/common-i18n/src/locales/pl/share.json @@ -0,0 +1,12 @@ +{ + "auth": { + "title": "Wprowadź hasło, aby wyświetlić tę stronę", + "submit": "Prześlij", + "password": "Hasło" + }, + "toolbar": { + "filterLinkSelectPlaceholder": "Wybierz..." + }, + "openOnNewPage": "Otwórz na nowej stronie", + "errorTips": "Macierz uprawnień została aktywowana, wyświetlanie jest niedozwolone" +} diff --git a/packages/common-i18n/src/locales/pl/space.json b/packages/common-i18n/src/locales/pl/space.json new file mode 100644 index 0000000000..edc9d0d44a --- /dev/null +++ b/packages/common-i18n/src/locales/pl/space.json @@ -0,0 +1,52 @@ +{ + "initialSpaceName": "Przestrzeń {{name}}", + "page": { + "title": "Teable App" + }, + "action": { + "createBase": "Stwórz bazę", + "createSpace": "Stwórz przestrzeń", + "invite": "Zaproś" + }, + "allSpaces": "Wszystkie przestrzenie", + "spaceIsEmpty": "Ta przestrzeń jest pusta", + "baseModal": { + "copy": "Kopia", + "duplicate": "Powiel \"{{baseName}}\"", + "createBaseFromTemplate": "Tworzenie bazy z szablonu", + "duplicateRecords": "Powiel rekordy", + "duplicateRecordsTip": "Historia zmian nie zostanie zduplikowana.", + "toSpace": "Do przestrzeni", + "copyToSpace": "Skopiuj do przestrzeni", + "duplicateBase": "Powiel bazę", + "missTargetTip": "Wybierz miejsce do powielenia bazy.", + "copying": "Trwa duplikowanie bazy, może to chwilę potrwać...", + "copyingTemplate": "Trwa tworzenie bazy z szablonu, może to chwilę potrwać...", + "howToCreate": "Jak chcesz zacząć?", + "fromScratch": "Od zera", + "fromTemplate": "Z szablonu" + }, + "spaceSetting": { + "title": "Ustawienia przestrzeni", + "general": "Ogólne", + "collaborators": "Członkowie", + "generalDescription": "Zmiana ustawień bieżącej przestrzeni", + "collaboratorDescription": "Zarządzaj członkami Twojej przestrzeni i ustaw im uprawnienia dostępu", + "spaceName": "Nazwa przestrzeni", + "spaceId": "ID przestrzeni" + }, + "pin": { + "add": "Dodaj do przypiętych", + "remove": "Usuń z przypiętych", + "pin": "Przypięte", + "empty": "To miejsce na przypięte bazy i przestrzenie" + }, + "tip": { + "delete": "Czy na pewno chcesz usunąć <0/>?" + }, + "sharedBase": { + "title": "Współdzielone bazy", + "description": "Pojawią się tutaj bazy, które zostały udostępnione Tobie.", + "empty": "Nie ma jeszcze współdzielonych baz" + } +} diff --git a/packages/common-i18n/src/locales/pl/system.json b/packages/common-i18n/src/locales/pl/system.json new file mode 100644 index 0000000000..022055e676 --- /dev/null +++ b/packages/common-i18n/src/locales/pl/system.json @@ -0,0 +1,16 @@ +{ + "notFound": { + "title": "404 - Page Not Found" + }, + "links": { + "backToHome": "Back to home" + }, + "forbidden": { + "title": "403 - Forbidden", + "description": "You don't have permission to access this page." + }, + "paymentRequired": { + "title": "402 - Subscription Upgrade Required", + "description": "Your current subscription does not support access to this feature.

Please upgrade your subscription to continue." + } +} diff --git a/packages/common-i18n/src/locales/pl/table.json b/packages/common-i18n/src/locales/pl/table.json new file mode 100644 index 0000000000..6c00d1bb43 --- /dev/null +++ b/packages/common-i18n/src/locales/pl/table.json @@ -0,0 +1,498 @@ +{ + "toolbar": { + "comingSoon": "Coming soon", + "viewFilterInShare": "W tym widoku zostało włączone udostępnianie za pomocą linku. Edycja reguł filtrowania spowoduje również zmianę widoku dla każdego posiadającego link.", + "createFieldButtonText": "Create a new <0/> field", + "others": { + "share": { + "label": "Udostępnij", + "statusLabel": "Udostępnianie", + "noPermission": "Brak uprawnień do udostępniania widoku", + "shareLink": "Udostępnij link", + "copied": "Skopiowano", + "genLink": "Wygeneruj nowy link", + "allowCopy": "Zezwól na kopiowanie danych z tego widoku", + "showAllFields": "Pokaż wszystkie pola po rozwinięciu rekordów", + "restrict": "Ogranicz hasłem", + "tips": "Osoby posiadające link mogą zobaczyć ten widok.", + "passwordTitle": "Wprowadź hasło", + "passwordTips": "Ograniczenie widoku współdzielonego za pomocą hasła", + "embed": "Osadzenie", + "embedPreview": "Podgląd osadzenia", + "hideToolbar": "Ukryj pasek narzędzi", + "URLSetting": "Konfiguracja parametrów linku", + "URLSettingDescription": "Zmiana poniższych ustawień nie wpłynie na już udostępnione linki. Aby zmiany weszły w życie musisz skopiować nowy link", + "cancel": "Anuluj", + "save": "Zapisz", + "requireLogin": "Require login submit" + }, + "extensions": { + "label": "Rozszerzenia", + "graph": "Wykres" + }, + "api": { + "label": "API", + "restfulApi": "Interfejs REST API", + "databaseConnection": "Połączenie z bazą danych" + } + } + }, + "welcome": { + "title": "Brak tabel", + "description": "Kliknij przycisk + na lewym pasku bocznym, aby utworzyć tabelę.", + "help": "Odwiedź po więcej informacji.", + "helpCenter": "Centrum pomocy" + }, + "field": { + "fieldManagement": "Zarządzanie polami", + "fieldManagementDesc": "Szczegółowe parametry dla wszystkich pól bieżącej tabeli", + "advancedProps": "Zaawansowane właściwości", + "hide": "hide", + "default": { + "singleLineText": { + "title": "Label" + }, + "longText": { + "title": "Notes" + }, + "number": { + "title": "Number", + "formatType": "Typ formatu", + "currencySymbol": "Currency Symbol", + "defaultSymbol": "$", + "precision": "Poziom precyzji", + "decimalExample": "Liczba (1.0)", + "currencyExample": "Waluta ($100)", + "percentExample": "Procent (20%)" + }, + "singleSelect": { + "title": "Status", + "options": { + "todo": "To Do", + "inProgress": "In Progress", + "done": "Done" + } + }, + "multipleSelect": { + "title": "Tags" + }, + "attachment": { + "title": "Attachments" + }, + "user": { + "title": "Collaborator" + }, + "date": { + "title": "Data", + "dateFormatting": "Formatowanie daty", + "timeFormatting": "Formatowanie czasu", + "timeZone": "Strefa czasowa", + "yearMonth": "Rok/Miesiąc", + "monthDay": "Miesiąc/Dzień", + "year": "Rok", + "month": "Miesiąc", + "day": "Dzień", + "local": "Local", + "friendly": "Friendly", + "us": "US", + "european": "European", + "asia": "Asia", + "custom": "Custom", + "12Hour": "12-godzinowy", + "24Hour": "24-godzinowy", + "noDisplay": "Nie wyświetlaj" + }, + "autoNumber": { + "title": "ID" + }, + "createdTime": { + "title": "Created time" + }, + "lastModifiedTime": { + "title": "Last modified time" + }, + "createdBy": { + "title": "Created by" + }, + "lastModifiedBy": { + "title": "Last modified by" + }, + "rating": { + "title": "Rating" + }, + "checkbox": { + "title": "Done" + }, + "formula": { + "title": "Calculation", + "formula": "Formula" + }, + "lookup": { + "title": "{{lookupFieldName}} (from {{linkFieldName}})" + }, + "rollup": { + "title": "{{lookupFieldName}} Podsumowanie (z {{linkFieldName}})", + "rollup": "Podsumowanie", + "selectAnRollupFunction": "Wybierz funkcję podsumowania", + "func": { + "and": "ORAZ", + "arrayCompact": "OCZYŚĆ.TABLICE", + "arrayJoin": "POŁĄCZ.TABLICE", + "arrayUnique": "UNIKALNE.TABLICE", + "average": "ŚREDNIA", + "concatenate": "POŁĄCZ.TEKSTY", + "count": "LICZ", + "countA": "LICZ.A", + "countAll": "LICZ.WSZYSTKO", + "max": "MAX", + "min": "MIN", + "or": "LUB", + "sum": "SUMA", + "xor": "XOR" + }, + "funcDesc": { + "and": "Zwraca prawdę, jeśli wszystkie wartości są prawdziwe", + "arrayCompact": "Usuwa puste ciągi i wartości null z tablicy. Zatrzymuje 'fałszywe' i ciągi, które zawierają jeden lub więcej znaków spacji.", + "arrayJoin": "Łączy wszystkie wartości w jeden ciąg rozdzielony przecinkami.", + "arrayUnique": "Zwraca tylko unikalne elementy.", + "average": "Średnia arytmetyczna wartości.", + "concatenate": "Łączy wartości tekstowe w jedną wartość tekstową.", + "count": "Liczy tylko niepuste wartości numeryczne. Jeśli chcesz zliczyć wszystkie rekordy, użyj LICZ.WSZYSTKO.", + "countA": "Zlicza liczbę niepustych wartości. Ta funkcja zlicza zarówno wartości numeryczne, jak i tekstowe.", + "countAll": "Zlicza wszystkie wartości, w tym puste rekordy.", + "max": "Zwraca największą z podanych liczb.", + "min": "Zwraca najmniejszą z podan ych liczb.", + "or": "Zwraca prawdę, jeśli którakolwiek z wartości jest prawdziwa.", + "sum": "Sumuje wartości.", + "xor": "Zwraca prawdę tylko wtedy, gdy nieparzysta liczba wartości jest prawdziwa." + } + } + }, + "editor": { + "addField": "Tworzenie pola", + "editField": "Edycja pola", + "insertField": "Wstawianie pola", + "graph": "Wykres", + "defaultValue": "Wartość domyślna", + "reset": "Reset", + "fieldUpdated": "Field has been updated", + "fieldCreated": "Field has been created", + "previewDependenciesGraph": "Preview Dependencies Graph", + "areYouSurePerformIt": "Are you sure you want to perform it?", + "addDescription": "Dołącz opis do pola", + "description": "Description", + "descriptionPlaceholder": "Opisz to pole (opcjonalnie)", + "type": "Typ", + "showAs": "Pokaż jako", + "color": "Kolor", + "number": "Liczba", + "chartBar": "Chart Bar", + "chartLine": "Chart Line", + "ring": "Pierścień", + "bar": "Pasek", + "text": "Tekst", + "url": "Link", + "email": "Email", + "phone": "Telefon", + "maxNumber": "Maksymalna liczba", + "showNumber": "Pokaż liczbę", + "autoFillDate": "Automatyczne wypełnianie aktualną datą", + "createSymmetricLink": "Stwórz w podłączonej tabeli odpowiadające pole", + "allowLinkMultipleRecords": "Zezwalaj na wielokrotny wybór", + "allowLinkToDuplicateRecords": "Pozwalaj rekordom aby mogły być wybrane więcej niż jeden raz", + "allowSymmetricFieldLinkMultipleRecords": "Pozwalaj rekordom aby mogły być wybrane więcej niż jeden raz", + "oneToOne": "Jedno do jednego", + "oneToMany": "Jedno do wielu", + "manyToOne": "Wiele do jednego", + "manyToMany": "Wiele do wielu", + "self": "Ta sama", + "selectTable": "Wybierz tabelę...", + "selectBase": "Wybierz bazę...", + "linkFromExternalBase": "Połącz z zewnętrzną bazą", + "inSelfLink": "pomiędzy sobą", + "betweenTwoTables": "pomiędzy dwoma tabelami", + "linkTipMessage": "Ciekawostka: Ta konfiguracja reprezentuje relację

{{relationship}} {{linkType}}", + "style": "Style", + "maximum": "Maksimum", + "addOption": "Dodaj opcję", + "allowMultiUsers": "Zezwalaj na dodawanie wielu użytkowników", + "notifyUsers": "Powiadom użytkowników gdy zostaną wybrani", + "searchTable": "Search table...", + "calculating": "Calculating...", + "doSaveChanges": "Czy chcesz zapisać wprowadzone zmiany?", + "linkFieldToLookup": "Pole typu „Link do innego rekordu”", + "lookupToTable": "Pole z tabeli „{{tableName}}”, które chcesz wyświetlić", + "selectField": "Wybierz pole...", + "linkTable": "Połączona tabela", + "linkBase": "Połączona baza", + "tableNoPermission": "Brak uprawnień do tabeli", + "baseNoPermission": "Brak uprawnień do bazy", + "noLinkTip": "Brak połączonych rekordów do przeszukania. Dodaj pole „Link do innego rekordu”, a potem spróbuj skonfigurować to pole jeszcze raz.", + "fieldValidationRules": "Reguły weryfikacji wartości pól", + "enableValidateFieldUnique": "Nie zezwalaj na zduplikoawne wartości", + "enableValidateFieldNotNull": "Nie zezwalaj na puste wartości", + "knowMore": "dowiedz się więcej", + "linkFieldKnowMoreLink": "https://help.teable.io/product/fields/field-type/link", + "filterByView": "Filtrowanie według widoku", + "filter": "Filtrowanie", + "hideFields": "Ukrywanie pól", + "moreOptions": "Więcej opcji", + "allowNewOptionsWhenEditing": "Pozwól dodawać nowe opcje podczas edycji" + }, + "subTitle": { + "link": "Załączaj rekordy z innej, wybranej tabeli", + "singleLineText": "Wprowadzaj tekst lub wypełniaj każdą nową komórkę wartością domyślną.", + "longText": "Wprowadzaj wieloliniowy tekst.", + "attachment": "Dodawaj obrazy, dokumenty lub inne pliki do przeglądania lub pobierania.", + "checkbox": "Zaznaczaj i odznaczaj pole wyboru, aby wskazać status.", + "multipleSelect": "Wybieraj jedną lub więcej opcji z wcześniej zdefiniowanej listy.", + "singleSelect": "Wybieraj jedną opcję z wcześniej ustawionej listy lub wypełniaj każdą nową komórkę opcją domyślną.", + "user": "Przypisuj użytkownika do rekordu.", + "date": "Wybieraj daty przy pomocy kalendarza lub wprowadzaj je ręcznie (np. 11/12/2023).", + "number": "Podawaj liczbę lub wypełniaj każdą nową komórkę wartością domyślną.", + "duration": "Wprowadzaj czas trwania w godzinach, minutach lub sekundach (np. 1:23).", + "rating": "Dodawaj oceny za pomocą wcześniej zdefiniowanej skali.", + "formula": "Obliczaj wartości na podstawie pól.", + "rollup": "Podsumowuj dane z powiązanych rekordów.", + "count": "Licz powiązane rekordy.", + "createdTime": "Zobacz datę i czas utworzenia każdego rekordu.", + "lastModifiedTime": "Zobacz datę i czas ostatniej edycji niektórych lub wszystkich pól w rekordzie.", + "createdBy": "Zobacz, który użytkownik utworzył rekord.", + "lastModifiedBy": "Zobacz, który użytkownik dokonał ostatniej edycji niektórych lub wszystkich pól w rekordzie.", + "autoNumber": "Automatycznie generuj unikalne numery przyrostowe dla każdego rekordu.", + "button": "Wywołuj wcześniej zdefiniowaną akcję.", + "lookup": "Wczytuj wartości z pola w innym, powiązanym rekordzie." + }, + "fieldName": "Nazwa pola", + "fieldNameOptional": "Nazwa pola (opcjonalnie)", + "fieldType": "Rodzaj pola" + }, + "table": { + "newTableLabel": "Nowa tabela", + "rename": "Zmień nazwę", + "design": "Projekt", + "tableRecordHistory": "Historia zmian rekordów", + "deleteConfirm": "Czy na pewno chcesz usunąć \"{{tableName}}\" ?", + "dbTableName": "Nazwa tabeli w rzeczywistej bazie danych", + "schemaName": "Nazwa schematu w rzeczywistej bazie danych", + "tableInfo": "Informacje o tabeli", + "tableInfoDetail": "Podstawowe informacje dotyczące tabeli", + "typeOfDatabase": "Rodzaj bazy danych", + "descriptionForTable": "Dodatkowe informacje o tej tabeli", + "nameForTable": "Wyświetlana nazwa tej tabeli", + "deleteTip1": "W innych tabelach zostaną usunięte pola korzystające z tej tabeli.", + "deleteTip2": "Tabelę po skasowaniu możesz zawsze przywrócić z kosza.", + "operator": { + "createBlank": "Utwórz pustą tabelę" + }, + "actionTips": { + "copyAndPasteEnvironment": "Kopiowanie i wklejanie działa tylko pod HTTPS albo localhost", + "copyAndPasteBrowser": "Kopiowanie i wklejanie nie jest obsługiwane w tej przeglądarce", + "copying": "Kopiowanie...", + "copySuccessful": "Skopiowano pomyślnie", + "copyFailed": "Kopiowanie nie udało się", + "pasting": "Wklejanie...", + "pasteSuccessful": "Wklejono pomyślnie", + "pasteFailed": "Wklejanie nie udało się", + "clearing": "Czyszczenie...", + "clearSuccessful": "Wyczyszczono", + "deleting": "Usuwanie...", + "deleteSuccessful": "Usunięto", + "pasteFileFailed": "Pliki można wklejać tylko do pola typu „Załącznik”" + }, + "graph": { + "tableLabel": "Table label", + "effectCells": "May effect cells", + "estimatedTime": "Estimated time" + } + }, + "import": { + "title": { + "upload": "Upload", + "import": "Import", + "localFile": "Local Files", + "linkUrl": "Link(URL)", + "linkUrlInputTitle": "Add file from URL", + "importTitle": "Create a new table", + "incrementImportTitle": "Import Into — ", + "optionsTitle": "Import option", + "primitiveFields": "Primitive Fields", + "importFields": "Import Field", + "primaryField": "Primary Field", + "tipsTitle": "Tips", + "confirm": "Confirm and continue" + }, + "menu": { + "addFromOtherSource": "Dodaj z innych źródeł", + "excelFile": "Microsoft Excel", + "csvFile": "Plik Csv", + "cancel": "Cancel", + "leave": "Leave", + "downAsCsv": "Pobierz CSV", + "importData": "Importuj dane" + }, + "tips": { + "importWayTip": "Click or drag file to this area to upload", + "leaveTip": "Your data will still be imported.", + "fileExceedSizeTip": "This type file size exceeds the limit of", + "analyzing": "analyzing", + "importing": "Importing", + "notSupportFieldType": "Field type is not supported", + "resultEmpty": "No results found.", + "searchPlaceholder": "Search...", + "importAlert": "Once the import begins, it cannot be stopped until it is either successfully completed or terminated due to failure. The import status is displayed in the upper right corner of the table. The results of import process will be notified to you once completed. You should not update the field during the import as it may cause errors.", + "noTips": "I know that, don't show again" + }, + "options": { + "autoSelectFieldOptionName": "Auto-select field types", + "useFirstRowAsHeaderOptionName": "Use first row as header", + "importDataOptionName": "Import Data", + "sheetKey": "SheetName: ", + "excludeFirstRow": "Exclude first row in import" + }, + "form": { + "defaultFieldName": "Field!", + "error": { + "urlEmptyTip": "URL should not be empty!", + "errorFileFormat": "File format is incorrect!", + "uniqueFieldName": "Field name should be unique!", + "fieldNameEmpty": "Field name should not be empty!", + "atLeastAImportField": "Please set a import field at least", + "urlValidateTip": "Couldn't parse URL. Try a different URL!" + }, + "option": { + "doNotImport": "Do not import" + } + } + }, + "export": { + "menu": { + "exportCsv": "Pobierz plik Csv" + } + }, + "grid": { + "prefillingRowTitle": "Dodawanie rekordu", + "prefillingRowTooltip": "Wprowadź poniżej dane nowego rekordu. Rekord zostanie zapisany automatycznie po kliknięciu gdzieś indziej.", + "presortRowTitle": "This record has been filtered or moved due to sorting rules" + }, + "form": { + "fieldsManagement": "Pola", + "addAll": "Wszystkie", + "removeAll": "Żadne", + "hideFieldTip": "Ukryj tutaj pola", + "unableAddFieldTip": "Nie można dodać tego rodzaju pola", + "removeFromFormTip": "Usuń z formularza", + "descriptionPlaceholder": "Wprowadź opis formularza", + "dragToFormTip": "Przeciągnij i upuść pole tutaj, aby dodać je do formularza" + }, + "kanban": { + "toolbar": { + "hideFieldName": "Ukryj nazwę pola", + "customizeCards": "Dostosowanie kart", + "stackedBy": "Grupowanie według <0/>", + "chooseStackingField": "Wybierz pole grupujące", + "chooseStackingFieldDescription": "Którego pola chcesz użyć w tym widoku kanban? Rekordy zostaną ułożone w stos na podstawie tego pola.", + "hideEmptyStack": "Ukryj puste grupy", + "imageSetting": "Ustawienia zdjęć", + "fit": "Fit", + "noImage": "Brak zdjęć", + "chooseAttachmentField": "Wybierz pole typu „Załącznik”" + }, + "stack": { + "addStack": "Dodaj szyld", + "noCards": "Brak kart", + "uncategorized": "Bez kategorii" + }, + "stackMenu": { + "collapseStack": "Zwiń szyld", + "renameStack": "Zmień nazwę szyldu", + "deleteStack": "Usuń szyld" + }, + "cardMenu": { + "insertCardAbove": "Insert card above", + "insertCardBelow": "Insert card below", + "expandCard": "Expand card", + "deleteCard": "Delete card", + "duplicateCard": "Duplicate card" + } + }, + "calendar": { + "toolbar": { + "config": "Dostosowanie kalendarza", + "startDateField": "Pole daty rozpoczęcia", + "endDateField": "Pole daty zakończenia", + "titleField": "Pole tytułu", + "colorField": "Pole koloru", + "colorType": "Wyświetlanie koloru", + "customColor": "Wybrany kolor", + "alignWithRecords": "Pobierz z rekordu" + }, + "placeholder": { + "selectColorField": "Wybierz pole koloru" + }, + "dialog": { + "startDate": "Data rozpoczęcia", + "endDate": "Data zakończenia", + "notAdd": "Nie dodawaj", + "addDateField": "Utwórz pola dat", + "content": "Aby utworzyć widok kalendarza, tabela musi zawierać dwa pola dat: datę rozpoczęcia i datę zakończenia" + }, + "moreLinkText": "Pokaż wszystkie {{count}} rekordy" + }, + "menu": { + "insertRecordAbove": "Wstaw rekordy powyżej", + "insertRecordBelow": "Wstaw rekordy poniżej", + "copyCells": "Kopiuj komórki", + "deleteRecord": "Usuń rekord", + "deleteAllSelectedRecords": "Usuń wszystkie zaznaczone rekordy", + "editField": "Ustawienia pola", + "insertFieldLeft": "Utwórz pole po lewo", + "insertFieldRight": "Utwórz pole po prawo", + "freezeUpField": "Przypnij kolumny po lewo", + "hideField": "Ukryj pole", + "deleteField": "Usuń pole", + "deleteAllSelectedFields": "Usuń wszystkie zaznaczone pola", + "filterField": "Filtruj według tego pola", + "sortField": "Sortuj według tego pola", + "groupField": "Grupuj według tego pola" + }, + "connection": { + "title": "Połączenie z bazą danych", + "description": "Dostęp do bazy danych można uzyskać bezpośrednio przez połączenie z bazą, w tym do wszystkich tabel dostępnych tutaj", + "noPermission": "Nie masz uprawnień dostępu do bazy danych", + "connectionCountTip": "Maksymalna liczba połączeń z bazą danych wynosi {{max}} a bieżąca liczba połączeń wynosi {{current}}", + "helpLink": "https://help.teable.io/developer/database-connection" + }, + "view": { + "addRecord": "Dodaj rekord", + "searchView": "Przeszukaj widok...", + "dragToolTip": "Automatyczne sortowanie jest włączone, ręczne przeciąganie nie jest dostępne", + "insertToolTip": "Automatyczne sortowanie jest włączone, wstawianie w środku nie jest dostępne", + "action": { + "rename": "Zmień nazwę", + "delete": "Usuń widok" + }, + "category": { + "table": "Tabela", + "form": "Formularz", + "kanban": "Szyld kanban", + "gallery": "Galeria", + "calendar": "Kalendarz" + }, + "crash": { + "title": "Awaria!", + "description": "Ten widok jest uszkodzony. Jeśli odświeżenie strony nie zadziała, skontaktuj się z nami. support@teable.io" + }, + "addPluginView": "Dodaj wtyczkę", + "search": { + "field_one": "{{name}}", + "field_other": "{{length}} więcej" + } + }, + "lastModifiedTime": "Ostatnia data modyfikacji", + "lastModify": "Ostatnia modyfikacja: ", + "pasteNewRecords": { + "title": "Chcesz dodać wiele rekordów?", + "description": "Liczba pól, które zostaną wstawione: {{count}}." + } +} diff --git a/packages/common-i18n/src/locales/pl/token.json b/packages/common-i18n/src/locales/pl/token.json new file mode 100644 index 0000000000..341511c2c1 --- /dev/null +++ b/packages/common-i18n/src/locales/pl/token.json @@ -0,0 +1,56 @@ +{ + "access": "Access", + "name": "Name", + "description": "Description", + "scopes": "Scopes", + "expiration": "Expiration", + "createdTime": "Created", + "lastUse": "Last use", + "allSpace": "The space, all current and future bases in this space", + "formLabelTips": { + "name": "Provide a token name", + "description": "What is this token for?", + "scopes": "With this token, you will be able to:", + "access": "This token can access the following bases and spaces. You can only grant access to bases and spaces you have access to." + }, + "new": { + "headerTitle": "Create new token", + "title": "Personal access tokens are required to use the Teable API.", + "description": "This token will grant access to the data in the selected spaces and bases. This token will also allow usage of other, non-space/base API endpoints. Only use this token for your own development. Don’t share it with third-party services and applications.", + "button": "Create new token", + "success": { + "title": "Token successfully generated", + "description": "Make sure to copy your token. It will never be displayed again." + }, + "expirationList": { + "days": "days", + "custom": "Custom", + "pick": "Pick a date" + } + }, + "edit": { + "title": "Edit token", + "name": "Name", + "scopes": "Scopes" + }, + "refresh": { + "title": "Regenerate personal access token", + "description": "Submitting this form will generate a new token. Be aware that any scripts or applications using this token will need to be updated", + "button": "Regenerate token" + }, + "accessSelect": { + "button": "Add base or space", + "empty": "No access found.", + "spaceSelectItem": "All base in space", + "inputPlaceholder": "Find space or base..." + }, + "moreScopes": "and {{len}} more", + "empty": { + "list": "No personal access tokens found.", + "access": "No access" + }, + "deleteConfirm": { + "title": "Are you sure you want to delete this token?", + "description": "Any applications or scripts using this token will no longer be able to access the Teable API. You cannot undo this action." + } +} diff --git a/packages/common-i18n/src/locales/pl/zod.json b/packages/common-i18n/src/locales/pl/zod.json new file mode 100644 index 0000000000..65dee9fc7e --- /dev/null +++ b/packages/common-i18n/src/locales/pl/zod.json @@ -0,0 +1,113 @@ +{ + "errors": { + "invalid_type": "Expected {{expected}}, received {{received}}", + "invalid_type_received_undefined": "Required", + "invalid_type_received_null": "Required", + "invalid_literal": "Invalid literal value, expected {{expected}}", + "unrecognized_keys": "Unrecognized key(s) in object: {{- keys}}", + "invalid_union": "Invalid input", + "invalid_union_discriminator": "Invalid discriminator value. Expected {{- options}}", + "invalid_enum_value": "Invalid enum value. Expected {{- options}}, received '{{received}}'", + "invalid_arguments": "Invalid function arguments", + "invalid_return_type": "Invalid function return type", + "invalid_date": "Invalid date", + "custom": "Invalid input", + "invalid_intersection_types": "Intersection results could not be merged", + "not_multiple_of": "Number must be a multiple of {{multipleOf}}", + "not_finite": "Number must be finite", + "invalid_string": { + "email": "Invalid {{validation}}", + "url": "Invalid {{validation}}", + "uuid": "Invalid {{validation}}", + "cuid": "Invalid {{validation}}", + "regex": "Invalid", + "datetime": "Invalid {{validation}}", + "startsWith": "Invalid input: must start with \"{{startsWith}}\"", + "endsWith": "Invalid input: must end with \"{{endsWith}}\"" + }, + "too_small": { + "array": { + "exact": "Array must contain exactly {{minimum}} element(s)", + "inclusive": "Array must contain at least {{minimum}} element(s)", + "not_inclusive": "Array must contain more than {{minimum}} element(s)" + }, + "string": { + "exact": "String must contain exactly {{minimum}} character(s)", + "inclusive": "String must contain at least {{minimum}} character(s)", + "not_inclusive": "String must contain over {{minimum}} character(s)" + }, + "number": { + "exact": "Number must be exactly {{minimum}}", + "inclusive": "Number must be greater than or equal to {{minimum}}", + "not_inclusive": "Number must be greater than {{minimum}}" + }, + "set": { + "exact": "Invalid input", + "inclusive": "Invalid input", + "not_inclusive": "Invalid input" + }, + "date": { + "exact": "Date must be exactly {{- minimum, datetime}}", + "inclusive": "Date must be greater than or equal to {{- minimum, datetime}}", + "not_inclusive": "Date must be greater than {{- minimum, datetime}}" + } + }, + "too_big": { + "array": { + "exact": "Array must contain exactly {{maximum}} element(s)", + "inclusive": "Array must contain at most {{maximum}} element(s)", + "not_inclusive": "Array must contain less than {{maximum}} element(s)" + }, + "string": { + "exact": "String must contain exactly {{maximum}} character(s)", + "inclusive": "String must contain at most {{maximum}} character(s)", + "not_inclusive": "String must contain under {{maximum}} character(s)" + }, + "number": { + "exact": "Number must be exactly {{maximum}}", + "inclusive": "Number must be less than or equal to {{maximum}}", + "not_inclusive": "Number must be less than {{maximum}}" + }, + "set": { + "exact": "Invalid input", + "inclusive": "Invalid input", + "not_inclusive": "Invalid input" + }, + "date": { + "exact": "Date must be exactly {{- maximum, datetime}}", + "inclusive": "Date must be smaller than or equal to {{- maximum, datetime}}", + "not_inclusive": "Date must be smaller than {{- maximum, datetime}}" + } + } + }, + "validations": { + "email": "email", + "url": "url", + "uuid": "uuid", + "cuid": "cuid", + "regex": "regex", + "datetime": "datetime" + }, + "types": { + "function": "function", + "number": "number", + "string": "string", + "nan": "nan", + "integer": "integer", + "float": "float", + "boolean": "boolean", + "date": "date", + "bigint": "bigint", + "undefined": "undefined", + "symbol": "symbol", + "null": "null", + "array": "array", + "object": "object", + "unknown": "unknown", + "promise": "promise", + "void": "void", + "never": "never", + "map": "map", + "set": "set" + } +} diff --git a/packages/sdk/src/components/expand-record/ExpandRecordHeader.tsx b/packages/sdk/src/components/expand-record/ExpandRecordHeader.tsx index 791dbbe9ef..44d3088030 100644 --- a/packages/sdk/src/components/expand-record/ExpandRecordHeader.tsx +++ b/packages/sdk/src/components/expand-record/ExpandRecordHeader.tsx @@ -85,7 +85,7 @@ export const ExpandRecordHeader = (props: IExpandRecordHeader) => { )} >
- + - +