fix: properly translate static table headers (#904)

This commit is contained in:
Daniel Lautzenheiser 2023-10-03 12:42:43 -04:00 committed by GitHub
parent 8d82966165
commit a606e4c9fe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
47 changed files with 3242 additions and 302 deletions

View File

@ -4,7 +4,7 @@ site_url: 'https://example.com'
media_folder: assets/uploads
media_library:
folder_support: true
locale: en
locale: fr
i18n:
# Required and can be one of multiple_folders, multiple_files or single_file
# multiple_folders - persists files in `<folder>/<locale>/<slug>.<extension>`

View File

@ -1,8 +1,9 @@
import React, { useCallback, useMemo } from 'react';
import { translate } from 'react-polyglot';
import { VIEW_STYLE_TABLE } from '@staticcms/core/constants/views';
import useTranslate from '@staticcms/core/lib/hooks/useTranslate';
import { selectFields, selectInferredField } from '@staticcms/core/lib/util/collection.util';
import { isNullish } from '@staticcms/core/lib/util/null.util';
import { toTitleCaseFromKey } from '@staticcms/core/lib/util/string.util';
import entriesClasses from './Entries.classes';
import EntryListingGrid from './EntryListingGrid';
@ -15,7 +16,6 @@ import type {
Collections,
Entry,
Field,
TranslatedProps,
} from '@staticcms/core/interface';
import type Cursor from '@staticcms/core/lib/util/Cursor';
import type { FC } from 'react';
@ -42,16 +42,17 @@ export type EntryListingProps =
| SingleCollectionEntryListingProps
| MultipleCollectionEntryListingProps;
const EntryListing: FC<TranslatedProps<EntryListingProps>> = ({
const EntryListing: FC<EntryListingProps> = ({
entries,
cursor,
viewStyle,
isLoadingEntries,
filterTerm,
handleCursorActions,
t,
...otherProps
}) => {
const t = useTranslate();
const hasMore = useMemo(() => cursor?.actions?.has('append_next'), [cursor?.actions]);
const handleLoadMore = useCallback(() => {
@ -84,20 +85,47 @@ const EntryListing: FC<TranslatedProps<EntryListingProps>> = ({
[],
);
const summaryFields = useMemo(() => {
let fields: string[] | undefined;
if ('collection' in otherProps) {
fields = otherProps.collection.summary_fields;
}
return fields ?? ['summary'];
}, [otherProps]);
const isSingleCollectionInList = useMemo(
() => !('collections' in otherProps) || Object.keys(otherProps.collections).length === 1,
[otherProps],
);
const summaryFields: {
name: string;
label: string;
}[] = useMemo(() => {
const summaryField = [
{
name: 'summary',
label: t('collection.table.summary'),
},
];
if (!isSingleCollectionInList) {
return summaryField;
}
if (!('collection' in otherProps) || isNullish(otherProps.collection.summary_fields)) {
return summaryField;
}
const fieldNames = otherProps.collection.summary_fields;
const collectionFields = selectFields(otherProps.collection).reduce((acc, f) => {
acc[f.name] = f;
return acc;
}, {} as Record<string, Field>);
return fieldNames.map(summaryField => {
const field = collectionFields[summaryField];
return {
name: summaryField,
label: !field
? toTitleCaseFromKey(summaryField)
: field.label ?? toTitleCaseFromKey(field.name),
};
});
}, [isSingleCollectionInList, otherProps, t]);
const entryData: CollectionEntryData[] = useMemo(() => {
if ('collection' in otherProps) {
const inferredFields = inferFields(otherProps.collection);
@ -108,7 +136,6 @@ const EntryListing: FC<TranslatedProps<EntryListingProps>> = ({
viewStyle,
entry,
key: entry.slug,
summaryFields,
}));
}
@ -129,29 +156,11 @@ const EntryListing: FC<TranslatedProps<EntryListingProps>> = ({
viewStyle,
collectionLabel,
key: entry.slug,
summaryFields,
}
: null;
})
.filter(e => e) as CollectionEntryData[];
}, [entries, inferFields, isSingleCollectionInList, otherProps, summaryFields, viewStyle]);
const summaryFieldHeaders = useMemo(() => {
if ('collection' in otherProps) {
const collectionFields = selectFields(otherProps.collection).reduce((acc, f) => {
acc[f.name] = f;
return acc;
}, {} as Record<string, Field>);
return summaryFields.map(summaryField => {
const field = collectionFields[summaryField];
return !field
? toTitleCaseFromKey(summaryField)
: field.label ?? toTitleCaseFromKey(field.name);
});
}
return [];
}, [otherProps, summaryFields]);
}, [entries, inferFields, isSingleCollectionInList, otherProps, viewStyle]);
if (viewStyle === VIEW_STYLE_TABLE) {
return (
@ -160,7 +169,7 @@ const EntryListing: FC<TranslatedProps<EntryListingProps>> = ({
key="table"
entryData={entryData}
isSingleCollectionInList={isSingleCollectionInList}
summaryFieldHeaders={summaryFieldHeaders}
summaryFields={summaryFields}
loadNext={handleLoadMore}
canLoadMore={Boolean(hasMore && handleLoadMore)}
isLoadingEntries={isLoadingEntries}
@ -182,4 +191,4 @@ const EntryListing: FC<TranslatedProps<EntryListingProps>> = ({
);
};
export default translate()(EntryListing) as FC<EntryListingProps>;
export default EntryListing;

View File

@ -16,7 +16,10 @@ import type { t } from 'react-polyglot';
export interface EntryListingTableProps {
isSingleCollectionInList: boolean;
entryData: CollectionEntryData[];
summaryFieldHeaders: string[];
summaryFields: {
name: string;
label: string;
}[];
canLoadMore: boolean;
isLoadingEntries: boolean;
loadNext: () => void;
@ -26,7 +29,7 @@ export interface EntryListingTableProps {
const EntryListingTable: FC<EntryListingTableProps> = ({
isSingleCollectionInList,
entryData,
summaryFieldHeaders,
summaryFields,
canLoadMore,
isLoadingEntries,
loadNext,
@ -70,6 +73,18 @@ const EntryListingTable: FC<EntryListingTableProps> = ({
fetchMoreOnBottomReached(scrollHeight, scrollTop, clientHeight);
}, [clientHeight, fetchMoreOnBottomReached, scrollHeight, scrollTop]);
const baseColumnHeaders = useMemo(() => {
const cols = [...summaryFields.map(f => f.label), ''];
if (!isSingleCollectionInList) {
cols.unshift(t('collection.table.collection'));
}
return cols;
}, [isSingleCollectionInList, summaryFields, t]);
const columnFields = useMemo(() => [...summaryFields.map(f => f.name)], [summaryFields]);
return (
<div className={entriesClasses['entry-listing-table']}>
<div
@ -80,13 +95,7 @@ const EntryListingTable: FC<EntryListingTableProps> = ({
'CMS_Scrollbar_secondary',
)}
>
<Table
columns={
!isSingleCollectionInList
? ['Collection', ...summaryFieldHeaders, '']
: [...summaryFieldHeaders, '']
}
>
<Table columns={baseColumnHeaders}>
{paddingTop > 0 && (
<tr>
<td style={{ height: `${paddingTop}px` }} />
@ -98,8 +107,9 @@ const EntryListingTable: FC<EntryListingTableProps> = ({
<EntryRow
key={virtualRow.index}
collection={data.collection}
collectionLabel={data.collectionLabel}
entry={data.entry}
summaryFields={data.summaryFields}
columnFields={columnFields}
t={t}
/>
);

View File

@ -25,14 +25,14 @@ export interface EntryRowProps {
entry: Entry;
collection: Collection;
collectionLabel?: string;
summaryFields: string[];
columnFields: string[];
}
const EntryRow: FC<TranslatedProps<EntryRowProps>> = ({
collection,
entry,
collectionLabel,
summaryFields,
columnFields,
t,
}) => {
const path = useMemo(
@ -89,7 +89,7 @@ const EntryRow: FC<TranslatedProps<EntryRowProps>> = ({
{collectionLabel}
</TableCell>
) : null}
{summaryFields.map(fieldName => {
{columnFields.map(fieldName => {
if (fieldName === 'summary') {
return (
<TableCell key={fieldName} to={path}>

View File

@ -568,11 +568,6 @@ export abstract class BackendClass {
}>;
}
export interface LocalePhrasesRoot {
[property: string]: LocalePhrases;
}
export type LocalePhrases = string | { [property: string]: LocalePhrases };
export type CustomIcon = FunctionComponent;
export type WidgetValueSerializer = {
@ -1193,6 +1188,5 @@ export interface CollectionEntryData {
viewStyle: ViewStyle;
entry: Entry;
key: string;
summaryFields: string[];
collectionLabel?: string;
}

View File

@ -8,3 +8,4 @@ export { default as useMediaFiles } from './useMediaFiles';
export { default as useMediaInsert } from './useMediaInsert';
export { default as useMediaPersist } from './useMediaPersist';
export { default as useUUID } from './useUUID';
export { default as useTranslate } from './useTranslate';

View File

@ -0,0 +1,7 @@
import { useTranslate as useReactPolyglotTranslate } from 'react-polyglot';
import type { t } from 'react-polyglot';
export default function useTranslate(): t {
return useReactPolyglotTranslate() as t;
}

View File

@ -17,7 +17,6 @@ import type {
EventData,
EventListener,
FieldPreviewComponent,
LocalePhrasesRoot,
LoginEventListener,
LogoutEventListener,
MountedEventListener,
@ -36,6 +35,7 @@ import type {
WidgetParam,
WidgetValueSerializer,
} from '../interface';
import type { LocalePhrasesRoot } from '../locales/types';
export const allowedEvents = [
'mounted',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const bg: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const bg: LocalePhrasesRoot = {
errors: {
email: 'Въведете вашия имейл.',
password: 'Въведете паролата.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Няма достъп до настройките. Ако използвате git-gateway, не забравяйте да активирате услугата Identity и Git Gateway.',
},
@ -25,6 +28,7 @@ const bg: LocalePhrasesRoot = {
app: {
errorHeader: 'Грешка при зареждането на конфигурацията на CMS',
configErrors: 'Грешки в конфигурацията',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Проверете вашия файл config.yml.',
loadingConfig: 'Зареждане на конфигурация ...',
waitingBackend: 'В очакване на отговор от бекенда ...',
@ -61,6 +65,10 @@ const bg: LocalePhrasesRoot = {
other: 'Други',
negateLabel: 'Не %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Автор',
@ -69,6 +77,7 @@ const bg: LocalePhrasesRoot = {
label: 'Обновено',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -81,15 +90,17 @@ const bg: LocalePhrasesRoot = {
required: '%{fieldLabel} е задължително.',
regexPattern: '%{fieldLabel} не съответства на модела: %{pattern}.',
processing: '%{fieldLabel} се обработва.',
min: '%{fieldLabel} трябва да бъде поне %{minValue}.',
range: '%{fieldLabel} трябва да бъде между %{minValue} и %{maxValue}.',
min: '%{fieldLabel} трябва да бъде поне %{minValue}.',
max: '%{fieldLabel} трябва да бъде %{maxValue} или по-малко.',
rangeCount: '%{fieldLabel} трябва да има между %{minCount} и %{maxCount} елемент(и).',
rangeCountExact: '%{fieldLabel} трябва да има точно %{count} елемент(и).',
minCount: '%{fieldLabel} трябва да бъде поне %{minCount} елемент(и).',
maxCount: '%{fieldLabel} трябва да бъде %{maxCount} или по-малко елемент(и).',
invalidPath: `'%{path}' не е валиден път`,
pathExists: `Пътят '%{path}' вече съществува`,
rangeMin: undefined, // English translation: '%{fieldLabel} must have at least %{minCount} item(s).'
rangeMax: undefined, // English translation: '%{fieldLabel} must have %{maxCount} or less item(s).'
invalidPath: "'%{path}' не е валиден път",
pathExists: "Пътят '%{path}' вече съществува",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Писане на %{locale}',
@ -97,12 +108,16 @@ const bg: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Наистина ли искате да напуснете тази страница?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Наистина ли искате да изтриете този публикуван запис, както и незаписаните промени от текущата сесия?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Наистина ли искате да изтриете този публикуван запис?',
loadingEntry: 'Зареждане на запис...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: 'Превключване i18n',
togglePreview: 'Превключване на визуализация',
toggleScrollSync: 'Синхронизирай превъртане',
@ -115,6 +130,9 @@ const bg: LocalePhrasesRoot = {
publishAndDuplicate: 'Публикувай и дублирай',
deleteEntry: 'Изтрий запис',
publishNow: 'Публикувай сега',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -130,22 +148,40 @@ const bg: LocalePhrasesRoot = {
addComponent: 'Добави Компонент',
richText: 'Форматиране на текст',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Избери изображение',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: 'Вмъкване от URL',
replaceUrl: 'Замяна с URL',
promptUrl: 'Въведете URL адреса на изображението',
chooseDifferent: 'Избери различно изображение',
addMore: undefined, // English translation: 'Add more images'
remove: 'Премахни изображение',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Избери файл file',
chooseUrl: 'Вмъкване от URL',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: 'Замяна с URL',
promptUrl: 'Въведете URL адреса на файла',
chooseDifferent: 'Избери различен файл',
addMore: undefined, // English translation: 'Add more files'
remove: 'Премахни файл',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Няма контрол за приспособлението '%{widget}'.",
@ -163,6 +199,18 @@ const bg: LocalePhrasesRoot = {
},
datetime: {
now: 'Сега',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -176,9 +224,13 @@ const bg: LocalePhrasesRoot = {
copied: 'Копирано',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Наистина ли искате да изтриете избрания медиен файл?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Файлът е твърде голям.\nНастройките не позволяват запазване на файлове по-големи от %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Зареждане...',
@ -194,12 +246,30 @@ const bg: LocalePhrasesRoot = {
deleting: 'Изтриване...',
deleteSelected: 'Изтрай избрани',
chooseSelected: 'Избери избрани',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Обратно към сайта',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Грешка',
details: 'Възникна грешка - моля ',
@ -214,13 +284,15 @@ const bg: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Изход',
},
toast: {
onFailToLoadEntries: 'Неуспешно зареждане на записа: %{details}',
onFailToLoadDeployPreview: 'Неуспешно зареждане на визуализация: %{details}',
onFailToPersist: 'Неуспешно запазване на записа: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Неуспешно изтриване на записа: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Неуспешно актуализиране на състоянието: %{details}',
missingRequiredField:
'Извинете, пропуснахте задължително поле. Моля, попълнете преди запазване.',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const ca: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const ca: LocalePhrasesRoot = {
errors: {
email: 'Comprova que has escrit el teu email.',
password: 'Si us plau escriu la teva contrasenya.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
"No s'ha pogut obtenir accés a les configuracions d'identitat. Quan feu servir backend de git-gateway, assegureu-vos que activeu el servei didentitat i la passarel·la de Git.",
},
@ -25,6 +28,7 @@ const ca: LocalePhrasesRoot = {
app: {
errorHeader: 'Error al carregar la configuració del CMS',
configErrors: 'Errors de configuració',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: "Comprovi l'arxiu config.yml.",
loadingConfig: 'Carregant configuració....',
waitingBackend: 'Esperant al servidor...',
@ -61,6 +65,10 @@ const ca: LocalePhrasesRoot = {
other: 'Altre',
negateLabel: 'No %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Autor',
@ -69,6 +77,7 @@ const ca: LocalePhrasesRoot = {
label: 'Actualitzat el',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -88,8 +97,10 @@ const ca: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} ha de tenir exactament %{count} element(s).',
rangeMin: "%{fieldLabel} ha de tenir com a mínim %{minCount} d'element(s).",
rangeMax: '%{fieldLabel} ha de ser %{maxCount} o inferior.',
invalidPath: `'%{path}' no és una ruta valida`,
pathExists: `'%{path}' ja existeix`,
invalidPath: "'%{path}' no és una ruta valida",
pathExists: "'%{path}' ja existeix",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Escriure en %{locale}',
@ -97,14 +108,19 @@ const ca: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Estàs segur que vols deixar aquesta pàgina?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Està segur que vol eliminar aquesta entrada publicada, així com els canvis no guardats de la sessió actual?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Està segur que vol eliminar aquesta entrada publicada?',
loadingEntry: 'Carregant entrada...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: 'Mostrar/Amagar traduccions',
togglePreview: 'Mostrar/Amagar previsualització',
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'Publicar',
@ -114,6 +130,9 @@ const ca: LocalePhrasesRoot = {
publishAndDuplicate: 'Publica i duplica',
deleteEntry: 'Eliminar entrada',
publishNow: 'Publicar ara',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -123,27 +142,46 @@ const ca: LocalePhrasesRoot = {
link: 'Enllaç',
linkPrompt: "Introdueix l'URL de l'enllaç",
headings: 'Encapçalaments',
quote: undefined, // English translation: 'Quote'
bulletedList: 'Llista',
numberedList: 'Llista numèrica',
addComponent: 'Afegir component',
richText: 'Text enriquit',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Escull una imatge',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: 'Introdueix una URL',
replaceUrl: 'Substitueix per una URL',
promptUrl: "Introdueix l'URL de la imatge",
chooseDifferent: 'Escull una imatge diferent',
addMore: undefined, // English translation: 'Add more images'
remove: 'Treu la imatge',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Escull un arxiu',
chooseUrl: 'Introdueix una URL',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: 'Substitueix per una URL',
promptUrl: "Introdueix l'URL de l'arxiu",
chooseDifferent: 'Escull un arxiu diferent',
addMore: undefined, // English translation: 'Add more files'
remove: 'Esborrar arxiu',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "No existeix un control per al widget '%{widget}'.",
@ -161,6 +199,18 @@ const ca: LocalePhrasesRoot = {
},
datetime: {
now: 'Ara',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -174,9 +224,13 @@ const ca: LocalePhrasesRoot = {
copied: 'Copiat',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Està segur de que vol eliminar el mitjà seleccionat?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'El fitxer és massa gran.\nLa configuració no permet fitxers més grans de %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Carregant...',
@ -192,17 +246,36 @@ const ca: LocalePhrasesRoot = {
deleting: 'Eliminant...',
deleteSelected: 'Eliminar selecció',
chooseSelected: 'Confirmar selecció',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Torna enrere al lloc',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Error',
details: "S'ha produït un error - si us plau ",
reportIt: "Informa'ns d'això a GitHub.",
detailsHeading: 'Detalls',
privacyWarning: undefined, // English translation: 'Opening an issue pre-populates it with the error message and debugging data.\nPlease verify the information is correct and remove sensitive data if exists.'
recoveredEntry: {
heading: 'Document recuperat',
warning:
@ -211,13 +284,15 @@ const ca: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Tancar sessió',
},
toast: {
onFailToLoadEntries: "No s'ha ha pogut carregar l'entrada: %{details}",
onFailToLoadDeployPreview: "No s'ha pogut carregar la vista prèvia: %{details}",
onFailToPersist: "No s'ha pogut guardar l'entrada: %{details}",
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: "No s'ha pogut eliminar l'entrada: %{details}",
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: "No s'ha pogut actualitzar l'estat: %{details}",
missingRequiredField:
"Ups, no ha omplert un camp obligatori. Si us plau, ompli'l abans de guardar.",

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const cs: LocalePhrasesRoot = {
auth: {
@ -12,9 +12,11 @@ const cs: LocalePhrasesRoot = {
errors: {
email: 'Vyplňte e-mailovou adresu.',
password: 'Vyplňte heslo.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Nastavení identity nenalezeno. Používáte-li git-gateway server nezapomeňte aktivovat službu Identity a Git Gateway' +
'.',
'Nastavení identity nenalezeno. Používáte-li git-gateway server nezapomeňte aktivovat službu Identity a Git Gateway.',
},
},
app: {
@ -26,6 +28,7 @@ const cs: LocalePhrasesRoot = {
app: {
errorHeader: 'Chyba při načítání CMS konfigurace',
configErrors: 'Chyba konfigurace',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Zkontrolujte soubor config.yml.',
loadingConfig: 'Načítání konfigurace…',
waitingBackend: 'Čekání na server…',
@ -62,6 +65,10 @@ const cs: LocalePhrasesRoot = {
other: 'Ostatní',
negateLabel: 'Není %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Autor',
@ -70,6 +77,7 @@ const cs: LocalePhrasesRoot = {
label: 'Poslední aktualizace',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -89,8 +97,10 @@ const cs: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} musí mít přesně %{count} položek.',
rangeMin: '%{fieldLabel} musí mít nejméně %{minCount} položky.',
rangeMax: '%{fieldLabel} musí mít %{maxCount} nebo méně položek.',
invalidPath: `'%{path}' není platnou cestou.`,
pathExists: `Cesta '%{path}' už existuje.`,
invalidPath: "'%{path}' není platnou cestou.",
pathExists: "Cesta '%{path}' už existuje.",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Psát v %{locale}',
@ -98,12 +108,16 @@ const cs: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Chcete opravdu opustit tuto stránku?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Chcete opravdu vymazat tento publikovaný záznam a všechny neuložené změny z této relace?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Chcete opravdu smazat tento publikovaný záznam?',
loadingEntry: 'Načítání záznamu…',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: 'Přepnout lokalizaci',
togglePreview: 'Přepnout náhled',
toggleScrollSync: 'Sladit skrolování',
@ -116,6 +130,9 @@ const cs: LocalePhrasesRoot = {
publishAndDuplicate: 'Publikovat a duplikovat',
deleteEntry: 'Vymazat záznam',
publishNow: 'Publikovat teď',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -131,22 +148,40 @@ const cs: LocalePhrasesRoot = {
addComponent: 'Přidat součástku',
richText: 'Rich Text',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Vyberte obrázek',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: 'Přidat z URL',
replaceUrl: 'Nahradit z URL',
promptUrl: 'Zadejte URL obrázku',
chooseDifferent: 'Vyberte jiný obrázek',
addMore: undefined, // English translation: 'Add more images'
remove: 'Odstranit obrázek',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Vyberte soubor',
chooseUrl: 'Přidat z URL',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: 'Nahradit z URL',
promptUrl: 'Zadejte URL souboru',
chooseDifferent: 'Vyberte jiný soubor',
addMore: undefined, // English translation: 'Add more files'
remove: 'Odebrat soubor',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Žádné ovládání pro widget '%{widget}'.",
@ -164,6 +199,18 @@ const cs: LocalePhrasesRoot = {
},
datetime: {
now: 'Teď',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -177,8 +224,12 @@ const cs: LocalePhrasesRoot = {
copied: 'Zkopírováno',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Chcete skutečně vymazat označená média?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody: 'Soubor je příliš velký.\nSoubor musí být menší než %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Načítání…',
@ -194,12 +245,30 @@ const cs: LocalePhrasesRoot = {
deleting: 'Vymazávání…',
deleteSelected: 'Smazat označené',
chooseSelected: 'Vybrat označené',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Vrátit se na stránku',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Chyba',
details: 'Nastala chyba prosím ',
@ -214,13 +283,15 @@ const cs: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Odhlásit',
},
toast: {
onFailToLoadEntries: 'Chyba při načítání záznamu: %{details}',
onFailToLoadDeployPreview: 'Chyba při načítání náhledu: %{details}',
onFailToPersist: 'Chyba při ukládání záznamu: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Chyba při vymazávání záznamu: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Chyba při změně stavu záznamu: %{details}',
missingRequiredField: 'Vynechali jste povinné pole. Prosím vyplňte ho.',
entrySaved: 'Záznam uložen',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const da: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const da: LocalePhrasesRoot = {
errors: {
email: 'Vær sikker på du har indtastet din e-mail.',
password: 'Indtast dit kodeord.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Kunne ikke tilgå identity opsætning. Ved brug af git-gateway som bagvedliggende service, sørg for at aktivere Identity service og Git Gateway.',
},
@ -25,6 +28,7 @@ const da: LocalePhrasesRoot = {
app: {
errorHeader: 'Fejl ved indlæsning af CMS opsætningen',
configErrors: 'Opsætningsfejl',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Kontroller din config.yml fil.',
loadingConfig: 'Indlæser opsætning...',
waitingBackend: 'Venter på bagvedliggende service...',
@ -61,6 +65,10 @@ const da: LocalePhrasesRoot = {
other: 'Anden',
negateLabel: 'Ikke %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Forfatter',
@ -69,6 +77,7 @@ const da: LocalePhrasesRoot = {
label: 'Opdateret ',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -88,8 +97,10 @@ const da: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} skal have præcis %{count} element(er).',
rangeMin: '%{fieldLabel} skal have mindst %{minCount} element(er).',
rangeMax: '%{fieldLabel} skal have %{maxCount} eller færre element(er).',
invalidPath: `'%{path}' er ikke en gyldig sti`,
pathExists: `Stien '%{path}' findes allerede`,
invalidPath: "'%{path}' er ikke en gyldig sti",
pathExists: "Stien '%{path}' findes allerede",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Skriver på %{locale}',
@ -97,12 +108,21 @@ const da: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Er du sikker på at du vil forlade siden?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Er du sikker på at du vil slette dette tidliere publiceret dokument, samt dine nuværende ugemte ændringer fra denne session?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody:
'Er du sikker på at du vil slette dette tidliere publiceret dokument?',
loadingEntry: 'Indlæser dokument...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'Publicer',
published: 'Publiceret',
@ -111,6 +131,9 @@ const da: LocalePhrasesRoot = {
publishAndDuplicate: 'Publicer og kopier',
deleteEntry: 'Slet dokument',
publishNow: 'Publicer nu',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -126,16 +149,40 @@ const da: LocalePhrasesRoot = {
addComponent: 'Tilføj komponent',
richText: 'Formatteret tekst',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Vælg et billede',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: 'Vælg et andet billede',
addMore: undefined, // English translation: 'Add more images'
remove: 'Fjern billede',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Vælg fil',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: 'Vælg en anden fil',
addMore: undefined, // English translation: 'Add more files'
remove: 'Fjern fil',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Ingen kontrol finden for '%{widget}'.",
@ -153,17 +200,38 @@ const da: LocalePhrasesRoot = {
},
datetime: {
now: 'Nu',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: 'Kladde',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Er du sikker på at du vil slette det valgte medie?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Filen er for stor.\nOpsætningen tillader ikke filer større end %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Indlæser...',
@ -179,12 +247,30 @@ const da: LocalePhrasesRoot = {
deleting: 'Slet...',
deleteSelected: 'Slet valgte',
chooseSelected: 'Anvend valgte',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Tilbage til hjemmesiden',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Fejl',
details: 'Der opstod en fejl - venligst ',
@ -199,13 +285,15 @@ const da: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Log af',
},
toast: {
onFailToLoadEntries: 'Fejl ved indlæsning af dokumenter: %{details}',
onFailToLoadDeployPreview: 'Preview kunne ikke indlæses: %{details}',
onFailToPersist: 'Dokumentet kunne ikke gemmes: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Dokumentet kunne ikke slettes: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Status kunne ikke opdateres: %{details}',
missingRequiredField:
'Ups, du mangler et påkrævet felt. Udfyld de påkrævede felter før dokumentet gemmes.',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const de: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,7 @@ const de: LocalePhrasesRoot = {
errors: {
email: 'Stellen Sie sicher, Ihre E-Mail-Adresse einzugeben.',
password: 'Bitte geben Sie Ihr Passwort ein.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: 'Fehler beim Anmelden',
netlifyIdentityNotFound: 'Das Netlify Identity Plugin wurde nicht gefunden',
identitySettings:
@ -64,6 +65,10 @@ const de: LocalePhrasesRoot = {
other: 'Andere',
negateLabel: 'Nicht %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Autor',
@ -72,6 +77,7 @@ const de: LocalePhrasesRoot = {
label: 'Änderungsdatum',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -91,10 +97,10 @@ const de: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} muss exakt %{count} Element(e) enthalten.',
rangeMin: '%{fieldLabel} muss mindestens %{minCount} Element(e) enthalten.',
rangeMax: '%{fieldLabel} darf maximal %{maxCount} Element(e) enthalten.',
invalidPath: `'%{path}' ist kein gültiger Pfad`,
pathExists: `Pfad '%{path}' existiert bereits`,
invalidColor: `Farbe '%{color}' is ungültig`,
invalidHexCode: `Hex Codes müssen mit einem #-Zeichen anfangen`,
invalidPath: "'%{path}' ist kein gültiger Pfad",
pathExists: "Pfad '%{path}' existiert bereits",
invalidColor: "Farbe '%{color}' is ungültig",
invalidHexCode: 'Hex Codes müssen mit einem #-Zeichen anfangen',
},
i18n: {
writingInLocale: 'Aktuelle Sprache: %{locale}',
@ -142,6 +148,7 @@ const de: LocalePhrasesRoot = {
addComponent: 'Komponente hinzufügen',
richText: 'Rich Text',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Bild wählen',
@ -192,12 +199,18 @@ const de: LocalePhrasesRoot = {
},
datetime: {
now: 'Jetzt',
invalitDateTitle: 'Ungültiges Datum',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: 'Das eingegebene Datum ist ungültig.',
},
list: {
add: '%{item} hinzufügen',
addType: '%{item} hinzufügen',
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -232,6 +245,8 @@ const de: LocalePhrasesRoot = {
deleting: 'Löschen...',
deleteSelected: 'Ausgewähltes Element löschen',
chooseSelected: 'Ausgewähltes Element verwenden',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: 'Neuer Ordner',
@ -246,6 +261,7 @@ const de: LocalePhrasesRoot = {
common: {
yes: 'Ja',
no: 'Nein',
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Zurück zur Seite',

View File

@ -1,6 +1,6 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { BaseLocalePhrasesRoot } from '../types';
const en: LocalePhrasesRoot = {
const en: BaseLocalePhrasesRoot = {
auth: {
login: 'Login',
loggingIn: 'Logging in...',
@ -65,6 +65,10 @@ const en: LocalePhrasesRoot = {
other: 'Other',
negateLabel: 'Not %{label}',
},
table: {
summary: 'Summary',
collection: 'Collection',
},
defaultFields: {
author: {
label: 'Author',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const es: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const es: LocalePhrasesRoot = {
errors: {
email: 'Asegúrate de introducir tu correo electrónico.',
password: 'Por favor introduce tu contraseña.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'No se pudo acceder a la configuración de Identity. Cuando uses el backend git-gateway asegurate de habilitar el servicio Identity y Git Gateway.',
},
@ -25,6 +28,7 @@ const es: LocalePhrasesRoot = {
app: {
errorHeader: 'Error al cargar la configuración del CMS',
configErrors: 'Errores de configuración',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Compruebe el archivo config.yml.',
loadingConfig: 'Cargando configuración....',
waitingBackend: 'Esperando al servidor...',
@ -36,7 +40,9 @@ const es: LocalePhrasesRoot = {
collection: {
sidebar: {
collections: 'Colecciones',
allCollections: undefined, // English translation: 'All Collections'
searchAll: 'Buscar todas',
searchIn: undefined, // English translation: 'Search in'
},
collectionTop: {
sortBy: 'Ordenar por',
@ -44,6 +50,10 @@ const es: LocalePhrasesRoot = {
newButton: 'Nuevo %{collectionLabel}',
ascending: 'Ascendente',
descending: 'Descendente',
searchResults: undefined, // English translation: 'Search Results for "%{searchTerm}"'
searchResultsInCollection: undefined, // English translation: 'Search Results for "%{searchTerm}" in %{collection}'
filterBy: undefined, // English translation: 'Filter by'
groupBy: undefined, // English translation: 'Group by'
},
entries: {
loadingEntries: 'Cargando entradas',
@ -51,6 +61,14 @@ const es: LocalePhrasesRoot = {
longerLoading: 'Esto puede tardar varios minutos',
noEntries: 'Ninguna entrada',
},
groups: {
other: undefined, // English translation: 'Other'
negateLabel: undefined, // English translation: 'Not %{label}'
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Autor',
@ -59,6 +77,7 @@ const es: LocalePhrasesRoot = {
label: 'Actualizado en',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -78,39 +97,91 @@ const es: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} debe tener exactamente %{count} elemento(s).',
rangeMin: '%{fieldLabel} debe ser por lo menos %{minCount} elemento(s).',
rangeMax: '%{fieldLabel} debe ser %{maxCount} o menos elemento(s).',
invalidPath: undefined, // English translation: ''%{path}' is not a valid path.'
pathExists: undefined, // English translation: 'Path '%{path}' already exists.'
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: undefined, // English translation: 'Writing in %{locale}'
},
},
editor: {
onLeavePage: '¿Estás seguro de que quieres dejar esta página?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'¿Está seguro de que desea eliminar esta entrada publicada, así como los cambios no guardados de la sesión actual?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: '¿Estás seguro de que quieres borrar esta entrada publicada?',
loadingEntry: 'Cargando entrada...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'Publicar',
published: 'Publicado',
unpublish: 'Retirar',
duplicate: 'Duplicar',
publishAndCreateNew: 'Publicar y crear nuevo',
publishAndDuplicate: 'Publicar y duplicar',
deleteEntry: 'Eliminar entrada',
publishNow: 'Publicar ahora',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
bold: undefined, // English translation: 'Bold'
italic: undefined, // English translation: 'Italic'
code: undefined, // English translation: 'Code'
link: undefined, // English translation: 'Link'
linkPrompt: undefined, // English translation: 'Enter the URL of the link'
headings: undefined, // English translation: 'Headings'
quote: undefined, // English translation: 'Quote'
bulletedList: undefined, // English translation: 'Bulleted List'
numberedList: undefined, // English translation: 'Numbered List'
addComponent: undefined, // English translation: 'Add Component'
richText: 'Texto enriquecido',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Elige una imagen',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: 'Elige una imagen diferente',
addMore: undefined, // English translation: 'Add more images'
remove: 'Quita la imagen',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Escoge un archivo',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: 'Elige un archivo diferente',
addMore: undefined, // English translation: 'Add more files'
remove: 'Remover archivo',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "No existe un control para el widget '%{widget}'.",
@ -128,17 +199,38 @@ const es: LocalePhrasesRoot = {
},
datetime: {
now: 'Ahora',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: 'Borrador',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: '¿Está seguro de que desea eliminar el archivo seleccionado?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Archivo muy pesado.\nConfigurado para no permitir archivos más pesados que %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Cargando...',
@ -154,12 +246,30 @@ const es: LocalePhrasesRoot = {
deleting: 'Eliminando...',
deleteSelected: 'Eliminar selección',
chooseSelected: 'Confirmar selección',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Regresar al sitio',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Error',
details: 'Se ha producido un error - por favor ',
@ -174,13 +284,15 @@ const es: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Cerrar sesión',
},
toast: {
onFailToLoadEntries: 'No se ha podido cargar la entrada: %{details}',
onFailToLoadDeployPreview: 'No se ha podido cargar la vista previa: %{details}',
onFailToPersist: 'No se ha podido guardar la entrada: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'No se ha podido borrar la entrada: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'No se ha podido actualizar el estado: %{details}',
missingRequiredField:
'Oops, no ha rellenado un campo obligatorio. Por favor, rellénelo antes de guardar.',
@ -189,6 +301,8 @@ const es: LocalePhrasesRoot = {
onFailToPublishEntry: 'No se ha podido publicar: %{details}',
entryUpdated: 'Estado de entrada actualizado',
onFailToAuth: '%{details}',
onLoggedOut: undefined, // English translation: 'You have been logged out, please back up any data and login again'
onBackendDown: undefined, // English translation: 'The backend service is experiencing an outage. See %{details} for more information'
},
},
};

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const fr: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const fr: LocalePhrasesRoot = {
errors: {
email: "Assurez-vous d'avoir entré votre email.",
password: 'Merci de saisir votre mot de passe.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
"Impsosible d'accéder aux paramètres d'identité. Si vous utilisez le backend git-gateway, merci de vous assurer que vous avez bien activé le service Identity et la passerelle Git.",
},
@ -25,6 +28,7 @@ const fr: LocalePhrasesRoot = {
app: {
errorHeader: 'Erreur au chargement de la configuration du CMS',
configErrors: 'Erreurs de configuration',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Vérifiez votre fichier config.yml.',
loadingConfig: 'Chargement de la configuration...',
waitingBackend: 'En attente du serveur...',
@ -62,6 +66,10 @@ const fr: LocalePhrasesRoot = {
other: 'Autre',
negateLabel: 'Non %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Auteur',
@ -70,6 +78,7 @@ const fr: LocalePhrasesRoot = {
label: 'Mis à jour le',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -89,8 +98,10 @@ const fr: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} doit avoir exactement %{count} éléments(s).',
rangeMin: '%{fieldLabel} doit avoir au moins %{minCount} éléments(s).',
rangeMax: '%{fieldLabel} doit avoir %{maxCount} éléments(s) ou moins.',
invalidPath: `'%{path}' n'est pas un chemin valide`,
pathExists: `Le chemin '%{path}' existe déjà`,
invalidPath: "'%{path}' n'est pas un chemin valide",
pathExists: "Le chemin '%{path}' existe déjà",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Écrire en %{locale}',
@ -98,12 +109,16 @@ const fr: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Voulez-vous vraiment quitter cette page ?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Voulez-vous vraiment supprimer cette entrée publiée ainsi que vos modifications non enregistrées de cette session ?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Voulez-vous vraiment supprimer cette entrée publiée ?',
loadingEntry: "Chargement de l'entrée...",
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: 'Édition multilingue',
togglePreview: 'Aperçu',
toggleScrollSync: 'Défilement synchronisé',
@ -111,12 +126,14 @@ const fr: LocalePhrasesRoot = {
editorToolbar: {
publish: 'Publier',
published: 'Publiée',
unpublish: 'Dépublier',
duplicate: 'Dupliquer',
publishAndCreateNew: 'Publier et créer une nouvelle entrée',
publishAndDuplicate: 'Publier et dupliquer',
deleteEntry: "Supprimer l'entrée",
publishNow: 'Publier maintenant',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -132,22 +149,40 @@ const fr: LocalePhrasesRoot = {
addComponent: 'Ajouter un composant',
richText: 'Texte enrichi',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Choisir une image',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: 'Insérer depuis une adresse web',
replaceUrl: 'Remplacer depuis une adresse web',
promptUrl: "Entrer l'adresse web de l'image",
chooseDifferent: 'Choisir une image différente',
addMore: undefined, // English translation: 'Add more images'
remove: "Supprimer l'image",
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Choisir un fichier',
chooseUrl: 'Insérer depuis une adresse web',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: 'Remplacer depuis une adresse web',
promptUrl: "Entrer l'adresse web du fichier",
chooseDifferent: 'Choisir un fichier différent',
addMore: undefined, // English translation: 'Add more files'
remove: 'Effacer le fichier',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Pas de contrôle pour le gadget '%{widget}'.",
@ -165,10 +200,18 @@ const fr: LocalePhrasesRoot = {
},
datetime: {
now: 'Maintenant',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: 'Ajouter %{item}',
addType: 'Ajouter une entrée de type %{item}',
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -182,9 +225,13 @@ const fr: LocalePhrasesRoot = {
copied: 'Copié',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Voulez-vous vraiment supprimer la ressource sélectionné ?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
"Le fichier est trop volumineux.\nL'instance est configurée pour bloquer les envois de plus de %{size} kB.",
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Chargement...',
@ -200,12 +247,30 @@ const fr: LocalePhrasesRoot = {
deleting: 'Suppression...',
deleteSelected: 'Supprimer les éléments sélectionnés',
chooseSelected: 'Choisir les éléments sélectionnés',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Retourner sur le site',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Erreur',
details: 'Une erreur est survenue, veuillez ',
@ -220,13 +285,15 @@ const fr: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Déconnexion',
},
toast: {
onFailToLoadEntries: "Échec du chargement de l'entrée : %{details}",
onFailToLoadDeployPreview: "Échec du chargement de l'aperçu : %{details}",
onFailToPersist: "Échec de l'enregistrement de l'entrée : %{details}",
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: "Échec de la suppression de l'entrée : %{details}",
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Échec de la mise à jour du statut : %{details}',
missingRequiredField:
'Oops, il manque un champ requis. Veuillez le renseigner avant de soumettre.',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const gr: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const gr: LocalePhrasesRoot = {
errors: {
email: 'Βεβαιωθείτε ότι έχετε εισαγάγει το email σας.',
password: 'Παρακαλώ εισάγετε τον κωδικό πρόσβασής σας.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Δεν είναι δυνατή η πρόσβαση στις ρυθμίσεις ταυτότητας. Όταν χρησιμοποιείτε το παρασκήνιο του git Gateway, φροντίστε να ενεργοποιήσετε την υπηρεσία Identity και το git Gateway.',
},
@ -25,6 +28,7 @@ const gr: LocalePhrasesRoot = {
app: {
errorHeader: 'Σφάλμα κατά τη φόρτωση της ρύθμισης παραμέτρων CMS',
configErrors: 'Σφάλματα ρύθμισης παραμέτρων',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Ελέγξτε το αρχείο config.yml.',
loadingConfig: 'Φόρτωση ρύθμισης παραμέτρων...',
waitingBackend: 'Αναμονή για παρασκηνιακό...',
@ -36,17 +40,44 @@ const gr: LocalePhrasesRoot = {
collection: {
sidebar: {
collections: 'Συλλογές',
allCollections: undefined, // English translation: 'All Collections'
searchAll: 'Αναζήτηση όλων',
searchIn: undefined, // English translation: 'Search in'
},
collectionTop: {
sortBy: undefined, // English translation: 'Sort by'
viewAs: 'Προβολή ως',
newButton: 'Νέο %{collectionLabel}',
ascending: undefined, // English translation: 'Ascending'
descending: undefined, // English translation: 'Descending'
searchResults: undefined, // English translation: 'Search Results for "%{searchTerm}"'
searchResultsInCollection: undefined, // English translation: 'Search Results for "%{searchTerm}" in %{collection}'
filterBy: undefined, // English translation: 'Filter by'
groupBy: undefined, // English translation: 'Group by'
},
entries: {
loadingEntries: 'Εγγραφές φόρτωσης',
cachingEntries: 'Εγγραφές προσωρινής αποθήκευσης',
longerLoading: 'Αυτό μπορεί να διαρκέσει αρκετά λεπτά',
noEntries: undefined, // English translation: 'No Entries'
},
groups: {
other: undefined, // English translation: 'Other'
negateLabel: undefined, // English translation: 'Not %{label}'
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: undefined, // English translation: 'Author'
},
updatedOn: {
label: undefined, // English translation: 'Updated On'
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -62,36 +93,96 @@ const gr: LocalePhrasesRoot = {
range: 'Το %{fieldLabel} πρέπει να είναι μεταξύ %{minValue} και %{maxValue}.',
min: 'Το %{fieldLabel} πρέπει να είναι τουλάχιστον %{minValue}.',
max: 'Το %{fieldLabel} πρέπει να είναι %{maxValue} ή μικρότερο.',
rangeCount: undefined, // English translation: '%{fieldLabel} must have between %{minCount} and %{maxCount} item(s).'
rangeCountExact: undefined, // English translation: '%{fieldLabel} must have exactly %{count} item(s).'
rangeMin: undefined, // English translation: '%{fieldLabel} must have at least %{minCount} item(s).'
rangeMax: undefined, // English translation: '%{fieldLabel} must have %{maxCount} or less item(s).'
invalidPath: undefined, // English translation: ''%{path}' is not a valid path.'
pathExists: undefined, // English translation: 'Path '%{path}' already exists.'
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: undefined, // English translation: 'Writing in %{locale}'
},
},
editor: {
onLeavePage: 'Είστε βέβαιοι ότι θέλετε να αφήσετε αυτήν τη σελίδα;',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτήν τη δημοσιευμένη καταχώρηση, καθώς και τις αλλαγές που δεν αποθηκεύσατε από την τρέχουσα περίοδο λειτουργίας;',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody:
'Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτήν τη δημοσιευμένη καταχώρηση;',
loadingEntry: 'Φόρτωση εισόδου...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'Δημοσίευση',
published: 'Δημοσιεύθηκε',
unpublish: 'Κατάργηση δημοσίευσης',
duplicate: 'Διπλότυπο',
publishAndCreateNew: 'Δημοσίευση και δημιουργία νέων',
publishAndDuplicate: 'Δημοσίευση και αντίγραφο',
deleteEntry: 'Διαγραφή καταχώρησης',
publishNow: 'Δημοσίευση τώρα',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
bold: undefined, // English translation: 'Bold'
italic: undefined, // English translation: 'Italic'
code: undefined, // English translation: 'Code'
link: undefined, // English translation: 'Link'
linkPrompt: undefined, // English translation: 'Enter the URL of the link'
headings: undefined, // English translation: 'Headings'
quote: undefined, // English translation: 'Quote'
bulletedList: undefined, // English translation: 'Bulleted List'
numberedList: undefined, // English translation: 'Numbered List'
addComponent: undefined, // English translation: 'Add Component'
richText: undefined, // English translation: 'Rich Text'
markdown: undefined, // English translation: 'Markdown'
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Επιλέξτε μια εικόνα',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: 'Επιλέξτε διαφορετική εικόνα',
addMore: undefined, // English translation: 'Add more images'
remove: 'Αφαιρέστε την εικόνα',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Επιλέξτε ένα αρχείο',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: 'Επιλέξτε διαφορετικό αρχείο',
addMore: undefined, // English translation: 'Add more files'
remove: 'Αφαιρέστε το αρχείο',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Δεν υπάρχει έλεγχος για το widget '%{widget}'.",
@ -107,16 +198,40 @@ const gr: LocalePhrasesRoot = {
headingFive: 'Heading 5',
headingSix: 'Heading 6',
},
datetime: {
now: undefined, // English translation: 'Now'
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: 'Προσχέδιο',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Είστε βέβαιοι ότι θέλετε να διαγράψετε τα επιλεγμένα πολυμέσα;',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Το αρχείο είναι πολύ μεγάλο.\nΔεν επιτρέπονται αρχεία μεγαλύτερα από %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Φόρτωση...',
@ -128,17 +243,40 @@ const gr: LocalePhrasesRoot = {
search: 'Αναζήτηση...',
uploading: 'Φόρτωμα...',
upload: 'Ανεβάστε νέα',
download: undefined, // English translation: 'Download'
deleting: 'Διαγραφή...',
deleteSelected: 'Διαγραφή επιλεγμένου',
chooseSelected: 'Επιλέξτε επιλεγμένο',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: undefined, // English translation: 'Go back to site'
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Σφάλμα',
details: 'Υπάρχει ένα λάθος ',
reportIt: 'παρακαλώ να το αναφέρετε.',
detailsHeading: 'Λεπτομέρειες',
privacyWarning: undefined, // English translation: 'Opening an issue pre-populates it with the error message and debugging data.\nPlease verify the information is correct and remove sensitive data if exists.'
recoveredEntry: {
heading: 'Ανακτημένο έγγραφο',
warning: 'Παρακαλώ αντιγράψτε/επικολλήστε αυτό κάπου πριν πλοηγηθείτε μακριά!',
@ -146,13 +284,15 @@ const gr: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Αποσύνδεση',
},
toast: {
onFailToLoadEntries: 'Απέτυχε η φόρτωση της καταχώρησης: %{details}',
onFailToLoadDeployPreview: 'Απέτυχε η φόρτωση της προεπισκόπησης: %{details}',
onFailToPersist: 'Απέτυχε η διατήρηση της καταχώρησης:% {Details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Απέτυχε η διαγραφή της καταχώρησης: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Απέτυχε η ενημέρωση της κατάστασης: %{details}',
missingRequiredField:
'Ουπς, ξεχάσατε ένα απαιτούμενο πεδίο. Συμπληρώστε το πριν από την αποθήκευση.',
@ -161,6 +301,8 @@ const gr: LocalePhrasesRoot = {
onFailToPublishEntry: 'Η δημοσίευση απέτυχε: %{details}',
entryUpdated: 'Η κατάσταση εισόδου ενημερώθηκε',
onFailToAuth: '%{details}',
onLoggedOut: undefined, // English translation: 'You have been logged out, please back up any data and login again'
onBackendDown: undefined, // English translation: 'The backend service is experiencing an outage. See %{details} for more information'
},
},
};

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const he: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const he: LocalePhrasesRoot = {
errors: {
email: 'נא לא לשכוח להקליד את כתובת המייל',
password: 'נא להקליד את הסיסמה.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'הגדרות אימות הזהות אינן נגישות. כאשר משתמשים ב-git-gateway כשירות ה-backend יש לוודא ששירות אימות הזהות ו-Git Gateway הופעלו.',
},
@ -25,6 +28,7 @@ const he: LocalePhrasesRoot = {
app: {
errorHeader: 'אירעה שגיאה בטעינת הגדרות מערכת ניהול התוכן',
configErrors: 'שגיאות בהגדרות',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'יש לבדוק את הקובץ config.yml.',
loadingConfig: 'טעינת הגדרות...',
waitingBackend: 'ממתין לטעינת ה-backend...',
@ -61,6 +65,10 @@ const he: LocalePhrasesRoot = {
other: 'אחר',
negateLabel: 'לא %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'מאת',
@ -69,6 +77,7 @@ const he: LocalePhrasesRoot = {
label: 'עודכן בתאריך',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -88,8 +97,10 @@ const he: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} חייב לכלול בדיוק %{count} אייטמים.',
rangeMin: '%{fieldLabel} חייב לכלול לפחות %{minCount} אייטמים',
rangeMax: '%{fieldLabel} חייב לכלול %{maxCount} אייטמים לכל היותר.',
invalidPath: `'%{path}' אינו URL תקין`,
pathExists: `'%{path}' כבר קיים`,
invalidPath: "'%{path}' אינו URL תקין",
pathExists: "'%{path}' כבר קיים",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'כתיבה בשפה ה%{locale}',
@ -97,12 +108,16 @@ const he: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'האם ברצונך לעבור לעמוד אחר ללא שמירה?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'האם ברצונך למחוק את האייטם הזה לפני פרסומו, וכן את השינויים שבוצעו כעת וטרם נשמרו?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'האם ברצונך למחוק את האייטם הזה לאחר פרסומו?',
loadingEntry: 'טעינת אייטם...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: 'החלפת שפות',
togglePreview: 'הפעלת תצוגה מקדימה',
toggleScrollSync: 'סנכרון הגלילה',
@ -110,12 +125,14 @@ const he: LocalePhrasesRoot = {
editorToolbar: {
publish: 'פרסום',
published: 'פורסם',
unpublish: 'ביטול הפרסום',
duplicate: 'שכפול',
publishAndCreateNew: 'פרסום ויצירת אייטם חדש',
publishAndDuplicate: 'פרסום ושכפול',
deleteEntry: 'מחיקת האייטם',
publishNow: 'פרסום מיידי',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -131,22 +148,40 @@ const he: LocalePhrasesRoot = {
addComponent: 'הוספת רכיב',
richText: 'טקסט עשיר',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'בחירת תמונה',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: 'הוספה מכתובת אינטרנט',
replaceUrl: 'החלפת תמונה מכתובת אינטרנט',
promptUrl: 'נא להכניס את ה-URL של התמונה',
chooseDifferent: 'בחירת תמונה אחרת',
addMore: undefined, // English translation: 'Add more images'
remove: 'הסרת תמונה',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'בחירת קובץ',
chooseUrl: 'הוספה מכתובת אינטרנט',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: 'החלפת קובץ מכתובת אינטרנט',
promptUrl: 'נא להכניס את ה-URL של הקובץ',
chooseDifferent: 'בחירת קובץ אחר',
addMore: undefined, // English translation: 'Add more files'
remove: 'הסרת קובץ',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "לא הוגדרו פעולות ל'%{widget}'.",
@ -164,10 +199,18 @@ const he: LocalePhrasesRoot = {
},
datetime: {
now: 'עכשיו',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: 'הוספת %{item}',
addType: 'הוספת אייטם מסוג %{item}',
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -181,8 +224,12 @@ const he: LocalePhrasesRoot = {
copied: 'העתקה הושלמה',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'האם ברצונך למחוק את פריט המדיה הזה?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody: 'הקובץ גדול מדי.\nמוגדר לא לאפשר העלאת קבצים גדולים מ-%{size} קילובייט.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'טעינה...',
@ -198,12 +245,30 @@ const he: LocalePhrasesRoot = {
deleting: 'מחיקה...',
deleteSelected: 'למחוק את הקובץ המסומן',
chooseSelected: 'לבחור את הקובץ המסומן',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'בחזרה לאתר',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'שגיאה',
details: 'אירעה שגיאה. נא ',
@ -218,19 +283,20 @@ const he: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'התנתקות',
},
toast: {
onFailToLoadEntries: 'טעינת האייטם %{details} נכשלה',
onFailToLoadDeployPreview: 'טעינת התצוגה המקדימה של האייטם %{details} נכשלה',
onFailToPersist: 'אחסון האייטם %{details} נכשל',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'מחיקת האייטם %{details} נכשלה',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'עדכון מצב האייטם %{details} נכשל',
missingRequiredField: 'אופס, שכחת למלא שדה חובה. נא להשלים את המידע החסר לפני השמירה',
entrySaved: 'האייטם נשמר',
entryPublished: 'האייטם פורסם',
onFailToPublishEntry: 'פרסום האייטם %{details} נכשל',
onFailToUnpublishEntry: 'ביטול פרסום האייטם %{details} נכשל',
entryUpdated: 'מצב האייטם עודכן',
onFailToAuth: '%{details}',
onLoggedOut: 'נותקת מהמערכת. יש לגבות מידע לא שמור ולהתחבר שוב',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const hr: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const hr: LocalePhrasesRoot = {
errors: {
email: 'Unesite email.',
password: 'Molimo unisite lozinku.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Nemoguće pristupiti postavkama identita. Kod korištenja git-gateway backenda morate uključiti "Identity service" te "Git Gateway"',
},
@ -25,6 +28,7 @@ const hr: LocalePhrasesRoot = {
app: {
errorHeader: 'Greška pri učitavanju CMS konfiguracije',
configErrors: 'Greška u konfiguraciji',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Provjeri config.yml datoteku.',
loadingConfig: 'Učitavanje konfiguracije...',
waitingBackend: 'Čekanje na backend...',
@ -61,6 +65,10 @@ const hr: LocalePhrasesRoot = {
other: 'Ostalo',
negateLabel: 'Nije %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Autor',
@ -69,6 +77,7 @@ const hr: LocalePhrasesRoot = {
label: 'Ažurirano na',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -88,8 +97,10 @@ const hr: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} mora imati točno %{count} predmeta.',
rangeMin: '%{fieldLabel} mora imati najmanje %{minCount} predmet(a).',
rangeMax: '%{fieldLabel} mora imate %{maxCount} ili manje predmeta.',
invalidPath: `'%{path}' nije valjana putanja`,
pathExists: `Putanja '%{path}' već postoji`,
invalidPath: "'%{path}' nije valjana putanja",
pathExists: "Putanja '%{path}' već postoji",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Pisanje na %{locale}',
@ -97,31 +108,31 @@ const hr: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Jeste li sigurni da želite napustiti stranicu?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Jeste li sigurni da želite obrisati objavljeni unos, te nespremljene promjene u trenutnoj sesiji?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Jeste li sigurni da želite obrisati ovaj objavljeni unos?',
loadingEntry: 'Učitavanje unosa...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'Objavi',
published: 'Objavljeno',
unpublish: 'Obriši iz objava',
duplicate: 'Dupliciraj',
publishAndCreateNew: 'Objavi i kreiraj novo',
publishAndDuplicate: 'Objavi i dupliciraj',
deleteEntry: 'Obriši unos',
saving: 'Spremanje...',
save: 'Spremi',
deleting: 'Brisanje...',
updating: 'Ažuriranje...',
status: 'Status: %{status}',
backCollection: 'Pisanje u %{collectionLabel} zbirci',
unsavedChanges: 'Nespremljene promjene',
changesSaved: 'Promjene spremljene',
draft: 'Skica',
inReview: 'Osvrt',
ready: 'Spremno',
publishNow: 'Objavi sad',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -137,16 +148,40 @@ const hr: LocalePhrasesRoot = {
addComponent: 'Dodaj komponentu',
richText: 'Bogati tekst',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Odaberi sliku',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: 'Odaberi drugu sliku',
addMore: undefined, // English translation: 'Add more images'
remove: 'Izbriši sliku',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Odaberi datoteku',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: 'Odaberi drugu datoteku',
addMore: undefined, // English translation: 'Add more files'
remove: 'Obriši datoteku',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Kontrola nije pronađena za widget '%{widget}'.",
@ -164,17 +199,38 @@ const hr: LocalePhrasesRoot = {
},
datetime: {
now: 'Sad',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: 'Skica',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Jeste li sigurni da želite obrisati odabrane medijske datoteke?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Datoteka prevelika.\nKonfigurirano da ne podržava datoteke veće od %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Učitavanje...',
@ -190,12 +246,30 @@ const hr: LocalePhrasesRoot = {
deleting: 'Brisanje...',
deleteSelected: 'Obriši označeno',
chooseSelected: 'Odaberi označeno',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Povratak na stranicu',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Greška',
details: 'Dogodila se greška - molimo ',
@ -210,19 +284,20 @@ const hr: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Odjava',
},
toast: {
onFailToLoadEntries: 'Neuspjelo dohvaćanje unosa: %{details}',
onFailToLoadDeployPreview: 'Neuspjelo dohvaćanje pregleda: %{details}',
onFailToPersist: 'Neuspjelo spremanje unosa: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Neuspjelo brisanje unosa: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Neuspjelo ažuriranje statusa: %{details}',
missingRequiredField: 'Uups, preskočili ste obvezno polje. Molimo popunite prije spremanja.',
entrySaved: 'Unos spremljen',
entryPublished: 'Unos objavljen',
onFailToPublishEntry: 'Neuspjelo objavljivanje unosa: %{details}',
onFailToUnpublishEntry: 'Neuspjelo brisanje unosa: %{details}',
entryUpdated: 'Status unosa ažuriran',
onFailToAuth: '%{details}',
onLoggedOut: 'Odjavljeni ste, molimo spremite sve podatke i prijavite se ponovno',

View File

@ -1,6 +1,23 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const hu: LocalePhrasesRoot = {
auth: {
login: undefined, // English translation: 'Login'
loggingIn: undefined, // English translation: 'Logging in...'
loginWithNetlifyIdentity: undefined, // English translation: 'Login with Netlify Identity'
loginWithBitbucket: undefined, // English translation: 'Login with Bitbucket'
loginWithGitHub: undefined, // English translation: 'Login with GitHub'
loginWithGitLab: undefined, // English translation: 'Login with GitLab'
loginWithGitea: undefined, // English translation: 'Login with Gitea'
errors: {
email: undefined, // English translation: 'Make sure to enter your email.'
password: undefined, // English translation: 'Please enter your password.'
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings: undefined, // English translation: 'Unable to access identity settings. When using git-gateway backend make sure to enable Identity service and Git Gateway.'
},
},
app: {
header: {
content: 'Tartalom',
@ -10,6 +27,7 @@ const hu: LocalePhrasesRoot = {
app: {
errorHeader: 'Hiba történt a CMS konfiguráció betöltése közben',
configErrors: 'Configurációs hibák',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Ellenőrizd a config.yml filet.',
loadingConfig: 'Konfiguráció betöltése...',
waitingBackend: 'Várakozás hattérrendszerekre...',
@ -21,17 +39,44 @@ const hu: LocalePhrasesRoot = {
collection: {
sidebar: {
collections: 'Gyűjtemények',
allCollections: undefined, // English translation: 'All Collections'
searchAll: 'Keresés mindenre',
searchIn: undefined, // English translation: 'Search in'
},
collectionTop: {
sortBy: undefined, // English translation: 'Sort by'
viewAs: 'Nézet mint',
newButton: 'Új %{collectionLabel}',
ascending: undefined, // English translation: 'Ascending'
descending: undefined, // English translation: 'Descending'
searchResults: undefined, // English translation: 'Search Results for "%{searchTerm}"'
searchResultsInCollection: undefined, // English translation: 'Search Results for "%{searchTerm}" in %{collection}'
filterBy: undefined, // English translation: 'Filter by'
groupBy: undefined, // English translation: 'Group by'
},
entries: {
loadingEntries: 'Bejegyzések betöltése',
cachingEntries: 'Bejegyzések cacheelése',
longerLoading: 'Ez még eltarthat néhany percig',
noEntries: undefined, // English translation: 'No Entries'
},
groups: {
other: undefined, // English translation: 'Other'
negateLabel: undefined, // English translation: 'Not %{label}'
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: undefined, // English translation: 'Author'
},
updatedOn: {
label: undefined, // English translation: 'Updated On'
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -47,46 +92,95 @@ const hu: LocalePhrasesRoot = {
range: '%{fieldLabel}, %{minValue} és %{maxValue} értékek között kell legyen.',
min: '%{fieldLabel} legalább %{minValue} kell legyen vagy több.',
max: '%{fieldLabel} legalabb %{maxValue} vagy kevesebb kell legyen.',
rangeCount: undefined, // English translation: 'undefined'
rangeCountExact: undefined, // English translation: 'undefined'
rangeMin: undefined, // English translation: 'undefined'
rangeMax: undefined, // English translation: 'undefined'
invalidPath: undefined, // English translation: 'undefined'
pathExists: undefined, // English translation: 'undefined'
invalidColor: undefined, // English translation: 'undefined'
invalidHexCode: undefined, // English translation: 'undefined'
},
i18n: {
writingInLocale: undefined, // English translation: 'undefined'
},
},
editor: {
onLeavePage: 'Biztos hogy el akarod hagyni az oldalt?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'undefined'
onDeleteWithUnsavedChangesBody:
'Töröljük ezt a publikált bejegyzést, a többi mentetlen modositással együtt?',
onDeletePublishedEntryTitle: undefined, // English translation: 'undefined'
onDeletePublishedEntryBody: 'Töröljük ezt a publikált bejegyzést?',
loadingEntry: 'Bejegyzés betöltése...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'undefined'
preview: undefined, // English translation: 'undefined'
toggleI18n: undefined, // English translation: 'undefined'
togglePreview: undefined, // English translation: 'undefined'
toggleScrollSync: undefined, // English translation: 'undefined'
},
editorToolbar: {
publish: 'Publikáció',
published: 'Publikálás',
unpublish: 'Publikálás visszavonása',
duplicate: 'Duplikált',
publishAndCreateNew: 'Publikálás és új létrehozása',
publishAndDuplicate: 'Publikálás és duplikál',
deleteEntry: 'Bejegyzés törlése',
saving: 'Mentés...',
save: 'Mentés',
deleting: 'Törlés...',
updating: 'Frissítés...',
status: 'Beállitása: %{status}',
backCollection: ' Írás a %{collectionLabel} gyűjteménybe',
unsavedChanges: 'Nemmentett változtatások',
changesSaved: 'Változások elmentve',
draft: 'Piszkozat',
inReview: 'Felülvizsgálat alatt',
ready: 'Kész',
publishNow: 'Publikálás most',
discardChanges: undefined, // English translation: 'undefined'
discardChangesTitle: undefined, // English translation: 'undefined'
discardChangesBody: undefined, // English translation: 'undefined'
},
editorWidgets: {
markdown: {
bold: undefined, // English translation: 'undefined'
italic: undefined, // English translation: 'undefined'
code: undefined, // English translation: 'undefined'
link: undefined, // English translation: 'undefined'
linkPrompt: undefined, // English translation: 'undefined'
headings: undefined, // English translation: 'undefined'
quote: undefined, // English translation: 'undefined'
bulletedList: undefined, // English translation: 'undefined'
numberedList: undefined, // English translation: 'undefined'
addComponent: undefined, // English translation: 'undefined'
richText: undefined, // English translation: 'undefined'
markdown: undefined, // English translation: 'undefined'
type: undefined, // English translation: 'undefined'
},
image: {
choose: 'Válasszon képet',
chooseMultiple: undefined, // English translation: 'undefined'
chooseUrl: undefined, // English translation: 'undefined'
replaceUrl: undefined, // English translation: 'undefined'
promptUrl: undefined, // English translation: 'undefined'
chooseDifferent: 'Válasszon másik képet',
addMore: undefined, // English translation: 'undefined'
remove: 'Távolítsa el a képet',
removeAll: undefined, // English translation: 'undefined'
},
file: {
choose: 'Válasszon fájlt',
chooseUrl: undefined, // English translation: 'undefined'
chooseMultiple: undefined, // English translation: 'undefined'
replaceUrl: undefined, // English translation: 'undefined'
promptUrl: undefined, // English translation: 'undefined'
chooseDifferent: 'Válasszon másik fájlt',
addMore: undefined, // English translation: 'undefined'
remove: 'Távolítsa el a fájlt',
removeAll: undefined, // English translation: 'undefined'
},
folder: {
choose: undefined, // English translation: 'undefined'
chooseUrl: undefined, // English translation: 'undefined'
chooseMultiple: undefined, // English translation: 'undefined'
replaceUrl: undefined, // English translation: 'undefined'
promptUrl: undefined, // English translation: 'undefined'
chooseDifferent: undefined, // English translation: 'undefined'
addMore: undefined, // English translation: 'undefined'
remove: undefined, // English translation: 'undefined'
removeAll: undefined, // English translation: 'undefined'
},
unknownControl: {
noControl: "Nincs vezérlés a '%{widget}' widget számára.",
@ -102,18 +196,39 @@ const hu: LocalePhrasesRoot = {
headingFive: 'Heading 5',
headingSix: 'Heading 6',
},
datetime: {
now: undefined, // English translation: 'undefined'
invalidDateTitle: undefined, // English translation: 'undefined'
invalidDateBody: undefined, // English translation: 'undefined'
},
list: {
add: 'Új %{item}',
addType: 'Új típus %{item}',
noValue: undefined, // English translation: 'undefined'
},
keyvalue: {
key: undefined, // English translation: 'undefined'
value: undefined, // English translation: 'undefined'
uniqueKeys: undefined, // English translation: 'undefined'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: 'Piszkozat',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Biztos törli a kiválasztott média tartalmat?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody: undefined, // English translation: 'File too large.\nConfigured to not allow files greater than %{size} kB.'
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Betöltés...',
@ -125,17 +240,40 @@ const hu: LocalePhrasesRoot = {
search: 'Keresés...',
uploading: 'Feltöltés...',
upload: 'Új feltöltés',
download: undefined, // English translation: 'Download'
deleting: 'Törlés...',
deleteSelected: 'Kijelöltek törlése',
chooseSelected: 'Kijelöl',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: undefined, // English translation: 'Go back to site'
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Hiba',
details: 'Hiba történt - kérjük ',
reportIt: 'jelentse.',
detailsHeading: 'Részletek',
privacyWarning: undefined, // English translation: 'Opening an issue pre-populates it with the error message and debugging data.\nPlease verify the information is correct and remove sensitive data if exists.'
recoveredEntry: {
heading: 'Helyreállitott dokumentum',
warning: 'Kérjük mentse ezt el (vágólapra) mielőtt elhagyná az oldalt!',
@ -143,13 +281,15 @@ const hu: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Kijelentkezés',
},
toast: {
onFailToLoadEntries: 'A bejegyzés betöltése nem sikerült: %{details}',
onFailToLoadDeployPreview: 'Az előnézet betöltése nem sikerült: %{details}',
onFailToPersist: 'Bejegyzés megtartása sikertelen: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'A bejegyzés törlése sikertelen: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Az állapot frissítése nem sikerült: %{details}',
missingRequiredField: 'Hoppá, kihagytál egy kötelező mezőt. Mentés előtt töltsd ki.',
entrySaved: 'Bejegyzés elmentve',
@ -157,6 +297,8 @@ const hu: LocalePhrasesRoot = {
onFailToPublishEntry: 'Bejegyzés publikálása sikertelen: %{details}',
entryUpdated: 'Bejegyzés állapota frissült',
onFailToAuth: '%{details}',
onLoggedOut: undefined, // English translation: 'You have been logged out, please back up any data and login again'
onBackendDown: undefined, // English translation: 'The backend service is experiencing an outage. See %{details} for more information'
},
},
};

View File

@ -30,7 +30,9 @@ import bg from './bg';
import zh_Hans from './zh_Hans';
import he from './he';
import type { LocalePhrasesRoot } from '../interface';
import type { LocalePhrasesRoot } from './types';
export * from './types';
const locales: Record<string, LocalePhrasesRoot> = {
cs,

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const it: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const it: LocalePhrasesRoot = {
errors: {
email: 'Assicurati di inserire la tua mail.',
password: 'Inserisci la tua password.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Impossibile accedere alle impostazioni di Identity. Quando usi git-gateway come backend assicurati di abilitare il servizio Itentity e Git Gateway.',
},
@ -25,6 +28,7 @@ const it: LocalePhrasesRoot = {
app: {
errorHeader: 'Errore nel caricamento della configurazione CMS',
configErrors: 'Errori di Configurazione',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Controlla il tuo file config.yml.',
loadingConfig: 'Caricando la configurazione...',
waitingBackend: 'Attendi il backend...',
@ -36,17 +40,44 @@ const it: LocalePhrasesRoot = {
collection: {
sidebar: {
collections: 'Collezioni',
allCollections: undefined, // English translation: 'All Collections'
searchAll: 'Cerca su tutto',
searchIn: undefined, // English translation: 'Search in'
},
collectionTop: {
sortBy: undefined, // English translation: 'Sort by'
viewAs: 'Vedi come',
newButton: 'Nuovo/a %{collectionLabel}',
ascending: undefined, // English translation: 'Ascending'
descending: undefined, // English translation: 'Descending'
searchResults: undefined, // English translation: 'Search Results for "%{searchTerm}"'
searchResultsInCollection: undefined, // English translation: 'Search Results for "%{searchTerm}" in %{collection}'
filterBy: undefined, // English translation: 'Filter by'
groupBy: undefined, // English translation: 'Group by'
},
entries: {
loadingEntries: 'Caricando le voci',
cachingEntries: 'Cachando le voci',
longerLoading: 'Questa operazione potrebbe durare diversi minuti',
noEntries: undefined, // English translation: 'No Entries'
},
groups: {
other: undefined, // English translation: 'Other'
negateLabel: undefined, // English translation: 'Not %{label}'
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: undefined, // English translation: 'Author'
},
updatedOn: {
label: undefined, // English translation: 'Updated On'
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -62,35 +93,95 @@ const it: LocalePhrasesRoot = {
range: '%{fieldLabel} deve essere tra %{minValue} e %{maxValue}.',
min: '%{fieldLabel} deve essere almeno %{minValue}.',
max: '%{fieldLabel} deve essere %{maxValue} o meno.',
rangeCount: undefined, // English translation: '%{fieldLabel} must have between %{minCount} and %{maxCount} item(s).'
rangeCountExact: undefined, // English translation: '%{fieldLabel} must have exactly %{count} item(s).'
rangeMin: undefined, // English translation: '%{fieldLabel} must have at least %{minCount} item(s).'
rangeMax: undefined, // English translation: '%{fieldLabel} must have %{maxCount} or less item(s).'
invalidPath: undefined, // English translation: ''%{path}' is not a valid path.'
pathExists: undefined, // English translation: 'Path '%{path}' already exists.'
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: undefined, // English translation: 'Writing in %{locale}'
},
},
editor: {
onLeavePage: 'Sei sicuro di voler lasciare questa pagina?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Sei sicuro di voler cancellare questa voce pubblicata e tutte le modifiche non salvate della tua sessione corrente?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Sei sicuro di voler cancellare questa voce pubblicata?',
loadingEntry: 'Caricando la voce...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'Pubblica',
published: 'Pubblicato',
unpublish: 'Rimuovi dalla pubblicazione',
duplicate: 'Duplica',
publishAndCreateNew: 'Pubblica e creane uno nuovo',
publishAndDuplicate: 'Pubblica e duplica',
deleteEntry: 'Cancella voce',
publishNow: 'Pubblica ora',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
bold: undefined, // English translation: 'Bold'
italic: undefined, // English translation: 'Italic'
code: undefined, // English translation: 'Code'
link: undefined, // English translation: 'Link'
linkPrompt: undefined, // English translation: 'Enter the URL of the link'
headings: undefined, // English translation: 'Headings'
quote: undefined, // English translation: 'Quote'
bulletedList: undefined, // English translation: 'Bulleted List'
numberedList: undefined, // English translation: 'Numbered List'
addComponent: undefined, // English translation: 'Add Component'
richText: undefined, // English translation: 'Rich Text'
markdown: undefined, // English translation: 'Markdown'
type: undefined, // English translation: 'Type...'
},
image: {
choose: "Scegli un'immagine",
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: "Scegli un'immagine diversa",
addMore: undefined, // English translation: 'Add more images'
remove: 'Rimuovi immagine',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Scegli un file',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: 'Scegli un altro file',
addMore: undefined, // English translation: 'Add more files'
remove: 'Rimuovi il file',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Nessun controllo per il widget '%{widget}'.",
@ -106,16 +197,40 @@ const it: LocalePhrasesRoot = {
headingFive: 'Heading 5',
headingSix: 'Heading 6',
},
datetime: {
now: undefined, // English translation: 'Now'
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: 'Bozza',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Sei sicuro di voler cancellare il media selezionato?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'File troppo grande.\nConfigurato per non accettare file piú grandi di %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Caricamento...',
@ -127,17 +242,40 @@ const it: LocalePhrasesRoot = {
search: 'Cerca...',
uploading: 'Uploading...',
upload: 'Upload',
download: undefined, // English translation: 'Download'
deleting: 'Deleting...',
deleteSelected: 'Cancella selezionato',
chooseSelected: 'Prendi selezionato',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: undefined, // English translation: 'Go back to site'
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Errore',
details: "C'è stato un errore - per favore ",
reportIt: 'riportalo.',
detailsHeading: 'Dettagli',
privacyWarning: undefined, // English translation: 'Opening an issue pre-populates it with the error message and debugging data.\nPlease verify the information is correct and remove sensitive data if exists.'
recoveredEntry: {
heading: 'Documento recuperato',
warning: 'Per favore copia/incollalo da qualche parte prima di navigare altrove!',
@ -145,13 +283,15 @@ const it: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Esci',
},
toast: {
onFailToLoadEntries: 'Caricamento voce non riuscito: %{details}',
onFailToLoadDeployPreview: 'Caricamento della preview non riuscito: %{details}',
onFailToPersist: 'Salvataggio della voce non riuscito: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Cancellazione della voce non riuscita: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Aggiornamento dello status non riuscito: %{details}',
missingRequiredField:
'Oops, ti sei perso un campo obbligatorio. Per favore completalo prima di salvare.',
@ -160,6 +300,8 @@ const it: LocalePhrasesRoot = {
onFailToPublishEntry: 'Pubblicazione fallita: %{details}',
entryUpdated: 'Status della voce aggiornato',
onFailToAuth: '%{details}',
onLoggedOut: undefined, // English translation: 'You have been logged out, please back up any data and login again'
onBackendDown: undefined, // English translation: 'The backend service is experiencing an outage. See %{details} for more information'
},
},
};

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const ja: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const ja: LocalePhrasesRoot = {
errors: {
email: 'メールアドレスを確認してください。',
password: 'パスワードを入力してください。',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'認証情報にアクセスできませんでした。git-gateway backend を利用している場合は、認証サービスと Git Gateway が有効になっているかを確認してください。',
},
@ -25,6 +28,7 @@ const ja: LocalePhrasesRoot = {
app: {
errorHeader: 'CMS設定の読み込みエラー',
configErrors: '設定エラー',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'config.ymlを確認してください。',
loadingConfig: '設定を読み込んでいます...',
waitingBackend: 'バックエンドの応答を待機しています...',
@ -61,6 +65,10 @@ const ja: LocalePhrasesRoot = {
other: 'その他',
negateLabel: '%{label}以外',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: '作成者',
@ -69,6 +77,7 @@ const ja: LocalePhrasesRoot = {
label: '最終更新',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -88,8 +97,10 @@ const ja: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel}はちょうど%{count}個選択してください。',
rangeMin: '%{fieldLabel}は%{minCount}個以上選択してください。',
rangeMax: '%{fieldLabel}は%{maxCount}個以下選択してください。',
invalidPath: `'%{path}'は有効なパスではありません。`,
pathExists: `'%{path}'というパスはすでに存在しています。`,
invalidPath: "'%{path}'は有効なパスではありません。",
pathExists: "'%{path}'というパスはすでに存在しています。",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: '言語: %{locale}',
@ -97,12 +108,16 @@ const ja: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'このページから遷移しますか?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'保存されていない変更も削除されますが、この公開エントリを削除しますか?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'この公開エントリを削除しますか?',
loadingEntry: 'エントリの読込中...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: '言語を切り替える',
togglePreview: 'プレビュー表示を切り替える',
toggleScrollSync: 'スクロール同期を切り替える',
@ -110,12 +125,14 @@ const ja: LocalePhrasesRoot = {
editorToolbar: {
publish: '公開',
published: '公開済',
unpublish: '未公開',
duplicate: '複製',
publishAndCreateNew: '公開して新規作成',
publishAndDuplicate: '公開して複製する',
deleteEntry: 'エントリを削除',
publishNow: '公開する',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -131,22 +148,40 @@ const ja: LocalePhrasesRoot = {
addComponent: 'コンポーネント追加',
richText: 'リッチテキスト',
markdown: 'マークダウン',
type: undefined, // English translation: 'Type...'
},
image: {
choose: '画像を選択',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: 'URLを入力する',
replaceUrl: 'URLを変更する',
promptUrl: '画像のURLを入力してください',
chooseDifferent: '他の画像を選択',
addMore: undefined, // English translation: 'Add more images'
remove: '画像を削除',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'ファイルを選択',
chooseUrl: 'URLを入力する',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: 'URLを変更する',
promptUrl: 'ファイルのURLを入力してください',
chooseDifferent: '他のファイルを選択',
addMore: undefined, // English translation: 'Add more files'
remove: 'ファイルを削除',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "'%{widget}'はウィジェットとして利用できません。",
@ -164,6 +199,18 @@ const ja: LocalePhrasesRoot = {
},
datetime: {
now: '現時刻',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -177,8 +224,12 @@ const ja: LocalePhrasesRoot = {
copied: 'コピーしました',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: '選択しているデータを削除しますか?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody: 'ファイルサイズが大きすぎます。\n%{size} kB 以下にしてください。',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: '読込中...',
@ -194,12 +245,30 @@ const ja: LocalePhrasesRoot = {
deleting: '削除中...',
deleteSelected: '削除する',
chooseSelected: '選択する',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'サイトに戻る',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'エラー',
details: 'エラーが発生しました。',
@ -214,13 +283,15 @@ const ja: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'ログアウト',
},
toast: {
onFailToLoadEntries: 'エントリの読み込みに失敗しました。%{details}',
onFailToLoadDeployPreview: 'プレビューの読み込みに失敗しました。%{details}',
onFailToPersist: 'エントリの保存に失敗しました。%{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'エントリの削除に失敗しました。%{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'エントリのステータス更新に失敗しました。%{details}',
missingRequiredField: 'すべての必須項目を入力してください。',
entrySaved: '保存しました。',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const ko: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const ko: LocalePhrasesRoot = {
errors: {
email: '반드시 이메일을 입력해 주세요.',
password: '암호를 입력해 주세요.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'설정에 접근할 수 없습니다. git-gateway 백엔드 사용시 Identity service와 Git Gateway를 활성화 해야 합니다.',
},
@ -25,6 +28,7 @@ const ko: LocalePhrasesRoot = {
app: {
errorHeader: 'CMS 구성을 불러오는 중 오류가 발생했습니다.',
configErrors: '구성 오류',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'config.yml 파일을 확인하세요.',
loadingConfig: '구성 불러오는 중...',
waitingBackend: '백엔드 기다리는 중...',
@ -49,6 +53,7 @@ const ko: LocalePhrasesRoot = {
searchResults: '"%{searchTerm}"에 대한 검색결과',
searchResultsInCollection: '%{collection} 컬랙션에서 "%{searchTerm}"에 대한 검색결과',
filterBy: '필터 기준',
groupBy: undefined, // English translation: 'Group by'
},
entries: {
loadingEntries: '항목 불러오는 중...',
@ -56,6 +61,14 @@ const ko: LocalePhrasesRoot = {
longerLoading: '몇 분 정도 걸릴 수 있습니다.',
noEntries: '항목 없음',
},
groups: {
other: undefined, // English translation: 'Other'
negateLabel: undefined, // English translation: 'Not %{label}'
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: '저자',
@ -64,6 +77,7 @@ const ko: LocalePhrasesRoot = {
label: '업데이트 시각',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -83,41 +97,91 @@ const ko: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} 개수는 정확히 %{count} 개 여야 합니다.',
rangeMin: '%{fieldLabel} 개수는 적어도 %{minCount} 개 이상 이여야 합니다.',
rangeMax: '%{fieldLabel} 개수는 최대 %{maxCount} 개 여야 합니다.',
invalidPath: `'%{path}' 은(는) 올바른 경로가 아닙니다.`,
pathExists: `'%{path}' 경로가 이미 존재합니다.`,
invalidPath: "'%{path}' 은(는) 올바른 경로가 아닙니다.",
pathExists: "'%{path}' 경로가 이미 존재합니다.",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: undefined, // English translation: 'Writing in %{locale}'
},
},
editor: {
onLeavePage: '이 페이지를 떠나시겠습니까?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'현재 세션에서의 저장되지 않은 변경사항과 이 게시된 항목을 삭제하시겠습니까?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: '이 게시된 항목을 삭제하시겠습니까?',
loadingEntry: '항목 불러오는 중...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: '게시',
published: '게시됨',
unpublish: '게시 철회',
duplicate: '복제',
publishAndCreateNew: '게시하고 새로 만들기',
publishAndDuplicate: '게시하고 복제',
deleteEntry: '항목 삭제',
publishNow: '지금 게시',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
bold: undefined, // English translation: 'Bold'
italic: undefined, // English translation: 'Italic'
code: undefined, // English translation: 'Code'
link: undefined, // English translation: 'Link'
linkPrompt: undefined, // English translation: 'Enter the URL of the link'
headings: undefined, // English translation: 'Headings'
quote: undefined, // English translation: 'Quote'
bulletedList: undefined, // English translation: 'Bulleted List'
numberedList: undefined, // English translation: 'Numbered List'
addComponent: undefined, // English translation: 'Add Component'
richText: '리치 텍스트',
markdown: '마크다운',
type: undefined, // English translation: 'Type...'
},
image: {
choose: '이미지 선택',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: '다른 이미지 선택',
addMore: undefined, // English translation: 'Add more images'
remove: '이미지 삭제',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: '파일 선택',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: '다른 파일 선택',
addMore: undefined, // English translation: 'Add more files'
remove: '파일 삭제',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "'%{widget}' 위젝에 대한 컨트롤이 없습니다.",
@ -135,17 +199,38 @@ const ko: LocalePhrasesRoot = {
},
datetime: {
now: '현재시각',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: '초안',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: '선택하신 미디어를 삭제하시겠습니까?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'파일이 너무 큽니다.\n%{size} kB 보다 큰 파일을 허용하지 않도록 구성되어 있습니다.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: '불러오는 중...',
@ -161,12 +246,30 @@ const ko: LocalePhrasesRoot = {
deleting: '삭제 중...',
deleteSelected: '선택항목 삭제',
chooseSelected: '선택한 것으로 결정',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: '사이트로 돌아가기',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: '오류',
details: '오류가 발생했습니다.',
@ -181,13 +284,15 @@ const ko: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: '로그아웃',
},
toast: {
onFailToLoadEntries: '항목 불러오기 실패: %{details}',
onFailToLoadDeployPreview: '미리보기 불러오기 실패: %{details}',
onFailToPersist: '항목 저장 실패: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: '항목 삭제 실패: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: '상태 업데이트 실패: %{details}',
missingRequiredField: '이런! 필수 필드를 놓치셨습니다. 저장하기 전에 먼저 채우세요.',
entrySaved: '항목 저장됨',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const lt: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const lt: LocalePhrasesRoot = {
errors: {
email: 'Įveskite savo elektroninį paštą.',
password: 'Įveskite savo slaptažodį.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Deja, nepavyksta pasiekti Identity paslaugos nustatymus. Kai naudojate git-gateway backend metodą, įjunkite „Identity service“ ir „Git Gateway“.',
},
@ -25,6 +28,7 @@ const lt: LocalePhrasesRoot = {
app: {
errorHeader: 'Klaida, neišėjo užkrauti/pasiekti CMS konfigūracijos failą',
configErrors: 'Konfigūracijos (nustatymų) klaidos',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Patikrinkite config.yml balsą.',
loadingConfig: 'Kraunamas nustatymų (konfigūracijos) failas...',
waitingBackend: 'Laukiama serverio...',
@ -61,6 +65,10 @@ const lt: LocalePhrasesRoot = {
other: 'Kita',
negateLabel: 'Ne %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Autorius',
@ -69,6 +77,7 @@ const lt: LocalePhrasesRoot = {
label: 'Atnaujinta',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -89,8 +98,10 @@ const lt: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} turi turėti būtent tik %{count} elementų/-us.',
rangeMin: '%{fieldLabel} turi būti bent %{minCount} elementų.',
rangeMax: '%{fieldLabel} turi būti %{maxCount} arba mažiau elementų.',
invalidPath: `'%{path}' nėra taisyklinga nuoroda/adresas į resursą/-us`,
pathExists: `Adresas '%{path}' jau egzistuoja`,
invalidPath: "'%{path}' nėra taisyklinga nuoroda/adresas į resursą/-us",
pathExists: "Adresas '%{path}' jau egzistuoja",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Rašome %{locale} kalboje',
@ -98,20 +109,31 @@ const lt: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Ar tikrai norite uždaryti šį puslapį?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Tikrai norite panaikinti publikuotą įrašą ir Jūsų pakeiitmus iš dabartinės sesijos?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Tikrai norite ištrinti šį publikuotą įrašą?',
loadingEntry: 'Kraunamas įrašas...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'Publikuoti',
published: 'Jau publikuota',
unpublish: 'Atšaukti paskelbimą',
duplicate: 'Daryti dublį',
publishAndCreateNew: 'Publikuoti šitą, po to kurti kažką naujo',
publishAndDuplicate: 'Publikuoti šitą, po to kurti šito dublį',
deleteEntry: 'Panaikinti įrašą',
publishNow: 'Skelbti naują',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -127,16 +149,40 @@ const lt: LocalePhrasesRoot = {
addComponent: 'Pridėti komponentą',
richText: 'Normali peržiūra',
markdown: 'Rodyti be formatavimo (Markdown)',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Pasirinkti vaizdą',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: 'Pasirinkti skirtingą vaizdą',
addMore: undefined, // English translation: 'Add more images'
remove: 'Panaikinti vaizdą',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Pasirinkti failą',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: 'Pasirinkti kitą failą',
addMore: undefined, // English translation: 'Add more files'
remove: 'Panaikinti failą',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Klaida: valdiklis taisyklingai neveikia. No control for widget '%{widget}'.",
@ -154,17 +200,38 @@ const lt: LocalePhrasesRoot = {
},
datetime: {
now: 'Dabar',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: 'Juodraštis',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Ar jūs tikrai norite ištrinti pasirinktą mediją?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Failas per didelis.\nNustatymuose (konfigūracijoje) nurodyta, kad failai negali viršyti %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Kraunama...',
@ -180,12 +247,30 @@ const lt: LocalePhrasesRoot = {
deleting: 'Trinama...',
deleteSelected: 'Ištrinti parinktus',
chooseSelected: 'Pasirinkti parinktus',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Grįžti atgal į tinklalapį',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Klaida',
details: 'Buvo klaida - jeigu galite, prašome ',
@ -200,13 +285,15 @@ const lt: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Atsijungti',
},
toast: {
onFailToLoadEntries: 'Nepavyko užkrauti įrašo: %{details}',
onFailToLoadDeployPreview: 'Nepavyko užkrauti demonstracijos lango: %{details}',
onFailToPersist: 'Nepavyko išlaikyti įrašo: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Nepayvko ištrinti: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Nepavyko pakeisti statusą: %{details}',
missingRequiredField:
'Pasitikrinkite — kažkurio (ar kelių) laukelių neužpildėte. Tai padarius galėsite išsaugoti įrašą.',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const nb_no: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const nb_no: LocalePhrasesRoot = {
errors: {
email: 'Du må skrive inn e-posten din.',
password: 'Du må skrive inn passordet ditt.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Fant ingen innstillinger for Identity. Hvis du skal bruke git-gateway må du skru på Identity service og Git Gateway.',
},
@ -25,6 +28,7 @@ const nb_no: LocalePhrasesRoot = {
app: {
errorHeader: 'Det oppstod en feil under lastingen av CMS konfigurasjonen',
configErrors: 'Konfigurasjonsfeil',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Sjekk config.yml filen.',
loadingConfig: 'Laster konfigurasjon...',
waitingBackend: 'Venter på backend...',
@ -36,7 +40,9 @@ const nb_no: LocalePhrasesRoot = {
collection: {
sidebar: {
collections: 'Samlinger',
allCollections: undefined, // English translation: 'All Collections'
searchAll: 'Søk i alle',
searchIn: undefined, // English translation: 'Search in'
},
collectionTop: {
sortBy: 'Sorter etter',
@ -44,6 +50,10 @@ const nb_no: LocalePhrasesRoot = {
newButton: 'Ny %{collectionLabel}',
ascending: 'Stigende',
descending: 'Synkende',
searchResults: undefined, // English translation: 'Search Results for "%{searchTerm}"'
searchResultsInCollection: undefined, // English translation: 'Search Results for "%{searchTerm}" in %{collection}'
filterBy: undefined, // English translation: 'Filter by'
groupBy: undefined, // English translation: 'Group by'
},
entries: {
loadingEntries: 'Laster innlegg...',
@ -51,6 +61,14 @@ const nb_no: LocalePhrasesRoot = {
longerLoading: 'Dette kan ta opptil flere minutter',
noEntries: 'Ingen innlegg',
},
groups: {
other: undefined, // English translation: 'Other'
negateLabel: undefined, // English translation: 'Not %{label}'
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Forfatter',
@ -59,6 +77,7 @@ const nb_no: LocalePhrasesRoot = {
label: 'Oppdatert',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -78,39 +97,91 @@ const nb_no: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} må ha nøyaktig %{count} element(er).',
rangeMin: '%{fieldLabel} må minst ha %{minCount} element(er).',
rangeMax: '%{fieldLabel} må ha %{maxCount} eller færre element(er).',
invalidPath: undefined, // English translation: ''%{path}' is not a valid path.'
pathExists: undefined, // English translation: 'Path '%{path}' already exists.'
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: undefined, // English translation: 'Writing in %{locale}'
},
},
editor: {
onLeavePage: 'Er du sikker på du vil navigere bort fra denne siden?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Er du sikker på at du vil slette et publisert innlegg med tilhørende ulagrede endringer?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Er du sikker på at du vil slette dette publiserte innlegget?',
loadingEntry: 'Laster innlegg...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'Publiser',
published: 'Publisert',
unpublish: 'Avpubliser',
duplicate: 'Dupliser',
publishAndCreateNew: 'Publiser og lag nytt',
publishAndDuplicate: 'Publiser og dupliser',
deleteEntry: 'Slett innlegg',
publishNow: 'Publiser nå',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
bold: undefined, // English translation: 'Bold'
italic: undefined, // English translation: 'Italic'
code: undefined, // English translation: 'Code'
link: undefined, // English translation: 'Link'
linkPrompt: undefined, // English translation: 'Enter the URL of the link'
headings: undefined, // English translation: 'Headings'
quote: undefined, // English translation: 'Quote'
bulletedList: undefined, // English translation: 'Bulleted List'
numberedList: undefined, // English translation: 'Numbered List'
addComponent: undefined, // English translation: 'Add Component'
richText: 'Rik-tekst',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Velg et bilde',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: 'Velg et annet bilde',
addMore: undefined, // English translation: 'Add more images'
remove: 'Fjern bilde',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Velg en fil',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: 'Velg en annen fil',
addMore: undefined, // English translation: 'Add more files'
remove: 'Fjern fil',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Ingen konfigurasjon for widget '%{widget}'.",
@ -128,16 +199,37 @@ const nb_no: LocalePhrasesRoot = {
},
datetime: {
now: 'Nå',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: 'Kladd',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Er du sikker på at du vil slette markert element?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody: 'Filen er for stor.\nMaksimal konfiguert filstørrelse er %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Laster...',
@ -153,12 +245,30 @@ const nb_no: LocalePhrasesRoot = {
deleting: 'Sletter...',
deleteSelected: 'Slett markert',
chooseSelected: 'Velg markert',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Gå tilbake til siden',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Feil',
details: 'Det har oppstått en feil. Det er fint om du ',
@ -173,13 +283,15 @@ const nb_no: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Logg ut',
},
toast: {
onFailToLoadEntries: 'Kunne ikke laste innlegg: %{details}',
onFailToLoadDeployPreview: 'Kunne ikke laste forhåndsvisning: %{details}',
onFailToPersist: 'Kunne ikke lagre: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Kunne ikke slette: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Kunne ikke laste opp: %{details}',
missingRequiredField:
'Oisann, ser ut som du glemte et påkrevd felt. Du må fylle det ut før du kan fortsette.',
@ -188,6 +300,8 @@ const nb_no: LocalePhrasesRoot = {
onFailToPublishEntry: 'Kunne ikke publisere: %{details}',
entryUpdated: 'Innleggsstatus oppdatert',
onFailToAuth: '%{details}',
onLoggedOut: undefined, // English translation: 'You have been logged out, please back up any data and login again'
onBackendDown: undefined, // English translation: 'The backend service is experiencing an outage. See %{details} for more information'
},
},
};

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const nl: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const nl: LocalePhrasesRoot = {
errors: {
email: 'Voer uw email in.',
password: 'Voer uw wachtwoord in.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Netlify Identity instellingen niet gevonden. Wanneer u git-gateway als backend gebruikt moet u de Identity service en Git Gateway activeren in uw Netlify instellingen.',
},
@ -25,6 +28,7 @@ const nl: LocalePhrasesRoot = {
app: {
errorHeader: 'Fout bij het laden van de CMS configuratie',
configErrors: 'configuratiefouten',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Controleer je config.yml bestand',
loadingConfig: 'Configuatie laden...',
waitingBackend: 'Wachten op server...',
@ -61,6 +65,10 @@ const nl: LocalePhrasesRoot = {
other: 'Anders',
negateLabel: 'Geen %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Auteur',
@ -69,6 +77,7 @@ const nl: LocalePhrasesRoot = {
label: 'Bijgewerkt op',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -88,6 +97,10 @@ const nl: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} moet exact %{count} item(s) bevatten.',
rangeMin: '%{fieldLabel} moet tenminste %{minCount} item(s) bevatten.',
rangeMax: '%{fieldLabel} moet hoogstens %{maxCount} item(s) bevatten.',
invalidPath: undefined, // English translation: ''%{path}' is not a valid path.'
pathExists: undefined, // English translation: 'Path '%{path}' already exists.'
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: '%{locale} aan het bewerken',
@ -95,12 +108,16 @@ const nl: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Weet je zeker dat je deze pagina wilt verlaten?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Weet u zeker dat u dit gepubliceerde item en uw niet-opgeslagen wijzigingen uit de huidige sessie wilt verwijderen?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Weet u zeker dat u dit gepubliceerde item wilt verwijderen?',
loadingEntry: 'Item laden...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: 'Wissel i18n',
togglePreview: 'Wissel voorvertoning',
toggleScrollSync: 'Synchroniseer scrollen',
@ -113,6 +130,9 @@ const nl: LocalePhrasesRoot = {
publishAndDuplicate: 'Publiceer en dupliceer item',
deleteEntry: 'Item verwijderen',
publishNow: 'Publiceer nu',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -128,22 +148,40 @@ const nl: LocalePhrasesRoot = {
addComponent: 'Voeg component toe',
richText: 'Rijke tekst',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Kies een afbeelding',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: 'Voeg toe via URL',
replaceUrl: 'Vervang met URL',
promptUrl: 'Voer de URL van de afbeelding in',
chooseDifferent: 'Kies een andere afbeelding',
addMore: undefined, // English translation: 'Add more images'
remove: 'Verwijder afbeelding',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Kies een bestand',
chooseUrl: 'Voeg toe via URL',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: 'Vervang met URL',
promptUrl: 'Voer de URL van het bestand in',
chooseDifferent: 'Kies een ander bestand',
addMore: undefined, // English translation: 'Add more files'
remove: 'Verwijder bestand',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Geen control voor widget '%{widget}'.",
@ -161,9 +199,18 @@ const nl: LocalePhrasesRoot = {
},
datetime: {
now: 'Nu',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: 'Voeg %{item} toe',
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -177,9 +224,13 @@ const nl: LocalePhrasesRoot = {
copied: 'Gekopieerd',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Weet u zeker dat u de geselecteerde media wilt verwijderen?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Het bestand is te groot.\n De instellingen staan geen bestanden toe groter dan %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Laden...',
@ -195,12 +246,30 @@ const nl: LocalePhrasesRoot = {
deleting: 'Verwijderen...',
deleteSelected: 'Verwijder selectie',
chooseSelected: 'Gebruik selectie',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Ga terug naar site',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Fout',
details: 'Er is een fout opgetreden - ',
@ -215,13 +284,15 @@ const nl: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Uitloggen',
},
toast: {
onFailToLoadEntries: 'Kan item niet laden: %{details}',
onFailToLoadDeployPreview: 'Kan voorvertoning niet laden: %{details}',
onFailToPersist: 'Kan item niet opslaan: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Kan item niet verwijderen: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Kan status niet updaten: %{details}',
missingRequiredField: 'Oeps, sommige verplichte velden zijn niet ingevuld.',
entrySaved: 'Item opgeslagen',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const nn_no: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const nn_no: LocalePhrasesRoot = {
errors: {
email: 'Du må skriva inn e-posten din.',
password: 'Du må skriva inn passordet ditt.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Fann ingen innstillingar for Identity. Om du ynskjer å nytte git-gateway må du hugse å skru på Identity service og Git Gateway',
},
@ -25,6 +28,7 @@ const nn_no: LocalePhrasesRoot = {
app: {
errorHeader: 'Noko gjekk gale under lastinga av CMS konfigurasjonen',
configErrors: 'Konfigurasjonsfeil',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Sjå over config.yml fila.',
loadingConfig: 'Lastar konfigurasjon...',
waitingBackend: 'Ventar på backend...',
@ -36,7 +40,9 @@ const nn_no: LocalePhrasesRoot = {
collection: {
sidebar: {
collections: 'Samlingar',
allCollections: undefined, // English translation: 'All Collections'
searchAll: 'Søk i alle',
searchIn: undefined, // English translation: 'Search in'
},
collectionTop: {
sortBy: 'Sorter etter',
@ -44,6 +50,10 @@ const nn_no: LocalePhrasesRoot = {
newButton: 'Ny %{collectionLabel}',
ascending: 'Stigande',
descending: 'Synkande',
searchResults: undefined, // English translation: 'Search Results for "%{searchTerm}"'
searchResultsInCollection: undefined, // English translation: 'Search Results for "%{searchTerm}" in %{collection}'
filterBy: undefined, // English translation: 'Filter by'
groupBy: undefined, // English translation: 'Group by'
},
entries: {
loadingEntries: 'Laster innlegg...',
@ -51,6 +61,14 @@ const nn_no: LocalePhrasesRoot = {
longerLoading: 'Dette kan ta fleire minutt',
noEntries: 'Ingen innlegg',
},
groups: {
other: undefined, // English translation: 'Other'
negateLabel: undefined, // English translation: 'Not %{label}'
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Forfatter',
@ -59,6 +77,7 @@ const nn_no: LocalePhrasesRoot = {
label: 'Oppdatert',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -78,39 +97,91 @@ const nn_no: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} må ha nøyaktig %{count} element.',
rangeMin: '%{fieldLabel} må minst ha %{minCount} element.',
rangeMax: '%{fieldLabel} må ha %{maxCount} eller færre element.',
invalidPath: undefined, // English translation: ''%{path}' is not a valid path.'
pathExists: undefined, // English translation: 'Path '%{path}' already exists.'
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: undefined, // English translation: 'Writing in %{locale}'
},
},
editor: {
onLeavePage: 'Er du sikker på at du vil navigere bort frå denne sida?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Er du sikkert på at du vil slette eit publisert innlegg med tilhøyrande ulagra endringar?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Er du sikker på at du vil slette dette publiserte innlegget?',
loadingEntry: 'Lastar innlegg...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'Publiser',
published: 'Publisert',
unpublish: 'Avpubliser',
duplicate: 'Dupliser',
publishAndCreateNew: 'Publiser og lag nytt',
publishAndDuplicate: 'Publiser og dupliser',
deleteEntry: 'Slettar innlegg',
publishNow: 'Publiser no',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
bold: undefined, // English translation: 'Bold'
italic: undefined, // English translation: 'Italic'
code: undefined, // English translation: 'Code'
link: undefined, // English translation: 'Link'
linkPrompt: undefined, // English translation: 'Enter the URL of the link'
headings: undefined, // English translation: 'Headings'
quote: undefined, // English translation: 'Quote'
bulletedList: undefined, // English translation: 'Bulleted List'
numberedList: undefined, // English translation: 'Numbered List'
addComponent: undefined, // English translation: 'Add Component'
richText: 'Rik-tekst',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Vel bilete',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: 'Vel eit anna bilete',
addMore: undefined, // English translation: 'Add more images'
remove: 'Fjern bilete',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Vel fil',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: 'Vel ei anna fil',
addMore: undefined, // English translation: 'Add more files'
remove: 'Fjern fil',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Ingen konfigurasjon for widget '%{widget}'.",
@ -128,16 +199,37 @@ const nn_no: LocalePhrasesRoot = {
},
datetime: {
now: 'No',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: 'Kladd',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Er du sikker på at du vil slette markert element?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody: 'Fila er for stor.\nMaksimal konfiguert filstorleik er %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Lastar...',
@ -153,12 +245,30 @@ const nn_no: LocalePhrasesRoot = {
deleting: 'Slettar...',
deleteSelected: 'Slett markert',
chooseSelected: 'Vel markert',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Attende til sida',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Feil',
details: 'Ein feil har oppstått. Det er fint om du ',
@ -173,13 +283,15 @@ const nn_no: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Logg ut',
},
toast: {
onFailToLoadEntries: 'Kunne ikkje laste innlegg: %{details}',
onFailToLoadDeployPreview: 'Kunne ikkje laste førehandsvisning: %{details}',
onFailToPersist: 'Kunne ikkje lagre: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Kunne ikkje slette: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Kunne ikkje laste opp: %{details}',
missingRequiredField:
'Oisann, gløymte du noko? Alle påkrevde felt må fyllast ut før du kan halde fram',
@ -188,6 +300,8 @@ const nn_no: LocalePhrasesRoot = {
onFailToPublishEntry: 'Kunne ikkje publisere: %{details}',
entryUpdated: 'Innleggsstatus oppdatert',
onFailToAuth: '%{details}',
onLoggedOut: undefined, // English translation: 'You have been logged out, please back up any data and login again'
onBackendDown: undefined, // English translation: 'The backend service is experiencing an outage. See %{details} for more information'
},
},
};

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const pl: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const pl: LocalePhrasesRoot = {
errors: {
email: 'Wprowadź swój adres email',
password: 'Wprowadź swoje hasło',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Brak dostępu do ustawień tożsamości. Jeśli używasza backendu git-gateway upewnij się, że usługa tożsamośći (Identity service) oraz Git Gateway są włączone.',
},
@ -25,6 +28,7 @@ const pl: LocalePhrasesRoot = {
app: {
errorHeader: 'Błąd ładowania konfiguracji CMS',
configErrors: 'Błędy konfiguracji',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Sprawdź plik config.yml.',
loadingConfig: 'Ładowanie konfiguracji...',
waitingBackend: 'Oczekiwanie na backend...',
@ -61,6 +65,10 @@ const pl: LocalePhrasesRoot = {
other: 'Inne',
negateLabel: 'Nie %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Autor',
@ -69,6 +77,7 @@ const pl: LocalePhrasesRoot = {
label: 'Zaktualizowano',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -88,8 +97,10 @@ const pl: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} musi mieć %{count} elementów',
rangeMin: '%{fieldLabel} musi mieć przynajmniej %{minCount} elementów',
rangeMax: '%{fieldLabel} może mieć maksymalnie %{maxCount} elementów',
invalidPath: `'%{path}' nie jest poprawna`,
pathExists: `Ścieżka '%{path}' już istnieje`,
invalidPath: "'%{path}' nie jest poprawna",
pathExists: "Ścieżka '%{path}' już istnieje",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Pisz w języku %{locale}',
@ -97,12 +108,16 @@ const pl: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Czy na pewno chcesz opuścić tę stronę?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Czy na pewno chcesz usunąć tę opublikowaną pozycję, a także niezapisane zmiany z bieżącej sesji?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Czy na pewno chcesz usunąć tę opublikowaną pozycję?',
loadingEntry: 'Ładowanie pozycji...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: 'Przełącz i18n',
togglePreview: 'Przełącz podgląd',
toggleScrollSync: 'Synchroniczne przesuwanie',
@ -110,12 +125,14 @@ const pl: LocalePhrasesRoot = {
editorToolbar: {
publish: 'Opublikuj',
published: 'Opublikowane',
unpublish: 'Cofnij publikację',
duplicate: 'Zduplikuj',
publishAndCreateNew: 'Opublikuj i dodaj nowy',
publishAndDuplicate: 'Opublikuj i zduplikuj',
deleteEntry: 'Usuń pozycję',
publishNow: 'Opublikuj teraz',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -131,22 +148,40 @@ const pl: LocalePhrasesRoot = {
addComponent: 'Dodaj komponent',
richText: 'Tekst sformatowany',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Wybierz zdjęcie',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: 'Dodaj adres URL zdjęcia',
replaceUrl: 'Zmień adres URL zdjęcia',
promptUrl: 'Wprować adres URL zdjęcia',
chooseDifferent: 'Zmień zdjęcie',
addMore: undefined, // English translation: 'Add more images'
remove: 'Usuń zdjęcie',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Wybierz plik',
chooseUrl: 'Dodaj adres URL pliku',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: 'Zmień adres URL zdjęcia',
promptUrl: 'Dodaj adres URL pliku',
chooseDifferent: 'Wybierz inny plik',
addMore: undefined, // English translation: 'Add more files'
remove: 'Usuń plik',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Brak kontrolki dla widżetu '%{widget}'.",
@ -164,10 +199,18 @@ const pl: LocalePhrasesRoot = {
},
datetime: {
now: 'Teraz',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: 'Dodaj %{item}',
addType: 'Dodaj nowy %{item}',
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -181,8 +224,12 @@ const pl: LocalePhrasesRoot = {
copied: 'Skopiowano',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Czy na pewno chcesz usunąć zaznaczone multimedia?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody: 'Plik jest za duży.\nUstawiony maksymalny rozmiar pliku: %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Ładowanie...',
@ -198,12 +245,30 @@ const pl: LocalePhrasesRoot = {
deleting: 'Usuwanie...',
deleteSelected: 'Usuń zaznaczone',
chooseSelected: 'Wybierz zaznaczone',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Wróć do strony',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Błąd',
details: 'Wystąpił błąd - proszę ',
@ -218,13 +283,15 @@ const pl: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Wyloguj się',
},
toast: {
onFailToLoadEntries: 'Nie udało się załadować pozycji: %{details}',
onFailToLoadDeployPreview: 'Nie udało się załadować podglądu: %{details}',
onFailToPersist: 'Nie udało się zapisać pozycji: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Nie udało się usunąć pozycji: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Nie udało się zaktualizować statusu: %{details}',
missingRequiredField: 'Ups, przegapiłeś wymagane pole. Proszę uzupełnij przed zapisaniem.',
entrySaved: 'Pozycja zapisana',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const pt: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const pt: LocalePhrasesRoot = {
errors: {
email: 'Certifique-se de inserir seu e-mail.',
password: 'Por favor, insira sua senha.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Não foi possível acessar as configurações de identidade. Ao usar o back-end git-gateway, certifique-se de habilitar o serviço Identity e o Git Gateway.',
},
@ -25,6 +28,7 @@ const pt: LocalePhrasesRoot = {
app: {
errorHeader: 'Erro ao carregar a configuração do CMS',
configErrors: 'Erros de configuração',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Verifique o arquivo config.yml.',
loadingConfig: 'Carregando configuração...',
waitingBackend: 'Aguardando o back-end...',
@ -61,6 +65,10 @@ const pt: LocalePhrasesRoot = {
other: 'Outro',
negateLabel: 'Não %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Autor',
@ -69,6 +77,7 @@ const pt: LocalePhrasesRoot = {
label: 'Atualizado em',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -88,8 +97,10 @@ const pt: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} deve ser exatamente %{count}.',
rangeMin: '%{fieldLabel} deve ter, pelo menos, %{minCount}.',
rangeMax: '%{fieldLabel} deve ter %{maxCount} ou menos.',
invalidPath: `'%{path}' não é um caminho válido`,
pathExists: `O caminho '%{path}' já existe`,
invalidPath: "'%{path}' não é um caminho válido",
pathExists: "O caminho '%{path}' já existe",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Escrevendo em %{locale}',
@ -97,12 +108,16 @@ const pt: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Tem certeza que deseja sair desta página?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Tem certeza de que deseja excluir esta entrada publicada, bem como as alterações não salvas da sessão atual?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Tem certeza de que deseja excluir esta entrada publicada?',
loadingEntry: 'Carregando entrada...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: 'Mudar i18n',
togglePreview: 'Mudar pré-visualização',
toggleScrollSync: 'Sincronizar rolagem',
@ -110,12 +125,14 @@ const pt: LocalePhrasesRoot = {
editorToolbar: {
publish: 'Publicar',
published: 'Publicado',
unpublish: 'Despublicar',
duplicate: 'Duplicado',
publishAndCreateNew: 'Publicar e criar novo(a)',
publishAndDuplicate: 'Publicar e duplicar',
deleteEntry: 'Excluir entrada',
publishNow: 'Publicar agora',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -131,22 +148,40 @@ const pt: LocalePhrasesRoot = {
addComponent: 'Adicionar Componente',
richText: 'Rich Text',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Escolha uma imagem',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: 'Inserir de uma URL',
replaceUrl: 'Substituir com uma URL',
promptUrl: 'Insira a URL da imagem',
chooseDifferent: 'Escolha uma imagem diferente',
addMore: undefined, // English translation: 'Add more images'
remove: 'Remover imagem',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Escolha um arquivo',
chooseUrl: 'Inserir de uma URL',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: 'Substituir com uma URL',
promptUrl: 'Insira a URL do arquivo',
chooseDifferent: 'Escolha um arquivo diferente',
addMore: undefined, // English translation: 'Add more files'
remove: 'Remover arquivo',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Nenhum controle para o widget '%{widget}'.",
@ -164,10 +199,18 @@ const pt: LocalePhrasesRoot = {
},
datetime: {
now: 'Agora',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: 'Adicionar %{item}',
addType: 'Adicionar %{item} item',
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -181,9 +224,13 @@ const pt: LocalePhrasesRoot = {
copied: 'Copiado',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Tem certeza de que deseja excluir a mídia selecionada?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Arquivo muito grande.\nConfigurado para não permitir arquivos maiores que %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Carregando...',
@ -199,12 +246,30 @@ const pt: LocalePhrasesRoot = {
deleting: 'Excluindo...',
deleteSelected: 'Excluir selecionado',
chooseSelected: 'Escolher selecionado',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Voltar ao site',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Erro',
details: 'Ocorreu um erro - por favor ',
@ -219,13 +284,15 @@ const pt: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Sair',
},
toast: {
onFailToLoadEntries: 'Falha ao carregar a entrada: %{details}',
onFailToLoadDeployPreview: 'Falha ao carregar a pré-visualização: %{details}',
onFailToPersist: 'Falha ao persistir na entrada: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Falha ao excluir a entrada: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Falha ao atualizar status: %{details}',
missingRequiredField:
'Ops, você perdeu um campo obrigatório. Por favor, preencha antes de salvar.',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const ro: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const ro: LocalePhrasesRoot = {
errors: {
email: 'Asigură-te că ai introdus email-ul.',
password: 'Te rugăm introdu parola.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Nu s-a putut accesa serviciul de autentificare. Dacă folosești git-gateway, asigură-te că ai activat serviciul Identity și Git-Gateway.',
},
@ -25,6 +28,7 @@ const ro: LocalePhrasesRoot = {
app: {
errorHeader: 'A apărut o eroare cu configurarea CMS-ului.',
configErrors: 'Au apărut erori de configurare.',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Verifică fișierul de configurare (config.yml).',
loadingConfig: 'Se încarcă configurările...',
waitingBackend: 'Așteptăm după backend...',
@ -61,6 +65,10 @@ const ro: LocalePhrasesRoot = {
other: 'Altul',
negateLabel: 'Nu %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Autor',
@ -69,6 +77,7 @@ const ro: LocalePhrasesRoot = {
label: 'Actualizat la',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -86,10 +95,12 @@ const ro: LocalePhrasesRoot = {
max: '%{fieldLabel} poate fi mai mic sau egal cu %{maxValue}.',
rangeCount: '%{fieldLabel} poate avea între %{minCount} și %{maxCount} intrări.',
rangeCountExact: '%{fieldLabel} trebuie să conțină exact %{count} intrări.',
minCount: '%{fieldLabel} trebuie să conțină cel puțin %{minCount} intrări.',
maxCount: '%{fieldLabel} trebuie să conțină cel mult %{maxCount} intrări.',
invalidPath: `'%{path}' nu este o cale validă.`,
pathExists: `Calea '%{path}' există deja.`,
rangeMin: undefined, // English translation: '%{fieldLabel} must have at least %{minCount} item(s).'
rangeMax: undefined, // English translation: '%{fieldLabel} must have %{maxCount} or less item(s).'
invalidPath: "'%{path}' nu este o cale validă.",
pathExists: "Calea '%{path}' există deja.",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Scrii în limba %{locale}',
@ -97,12 +108,16 @@ const ro: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Ești sigur/ă că dorești să părăsești pagina?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Ești sigur/ă că dorești să ștergi această publicare, dar și modificările nesalvate din sesiunea curentă?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Ești sigur/ă că dorești să ștergi această publicare?',
loadingEntry: 'Se încarcă...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: 'Comută limba',
togglePreview: 'Comută previzualizarea',
toggleScrollSync: 'Sincronizează scroll-ul',
@ -110,12 +125,14 @@ const ro: LocalePhrasesRoot = {
editorToolbar: {
publish: 'Publicare',
published: 'Publicat',
unpublish: 'Anulează publicarea',
duplicate: 'Duplifică',
publishAndCreateNew: 'Publicare apoi crează altul',
publishAndDuplicate: 'Publicare apoi duplifică',
deleteEntry: 'Șterge intrare',
publishNow: 'Publicare',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -131,22 +148,40 @@ const ro: LocalePhrasesRoot = {
addComponent: 'Adaugă componentă',
richText: 'Rich Text',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Alege o imagine',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: 'Inserează din URL',
replaceUrl: 'Schimbă cu URL',
promptUrl: 'Introdu URL-ul imaginii',
chooseDifferent: 'Alege altă imagine',
addMore: undefined, // English translation: 'Add more images'
remove: 'Șterge imaginea',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Alege un fișier',
chooseUrl: 'Inserează din URL',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: 'Schimbă cu URL',
promptUrl: 'Introdu URL-ul fișierului',
chooseDifferent: 'Alege alt fișier',
addMore: undefined, // English translation: 'Add more files'
remove: 'Șterge fișier',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: 'Widget-ul „%{widget}” nu are configurări valabile.',
@ -164,6 +199,18 @@ const ro: LocalePhrasesRoot = {
},
datetime: {
now: 'Acum',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -177,9 +224,13 @@ const ro: LocalePhrasesRoot = {
copied: 'Copiat',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Ești sigur/ă că dorești să ștergi fișierul selectat?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Fișier prea mare.\nConfigurarea nu permite fișiere mai mari de %{size} KB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Se încarcă...',
@ -195,12 +246,30 @@ const ro: LocalePhrasesRoot = {
deleting: 'Se șterge...',
deleteSelected: 'Șterge fișierele selectate',
chooseSelected: 'Alege fișierele selectate',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Înapoi la site',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Eroare',
details: 'A apărut o eroare - te rugăm ',
@ -215,13 +284,15 @@ const ro: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Ieșire din cont',
},
toast: {
onFailToLoadEntries: 'A eșuat încărcarea intrării: %{details}',
onFailToLoadDeployPreview: 'A eșuat încărcarea previzualizării: %{details}',
onFailToPersist: 'A eșuat persistarea intrării: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'A eșuat ștergerea intrării: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'A eșuat actualizarea status-ului: %{details}',
missingRequiredField: 'Oops, ai ratat un câmp obligatoriu. Completează-l pentru a salva.',
entrySaved: 'Intrare salvată',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const ru: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const ru: LocalePhrasesRoot = {
errors: {
email: 'Введите ваш email.',
password: 'Введите пароль.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Нет доступа к настройкам. Если используете git-gateway, убедитесь, что включили Identity service и Git Gateway.',
},
@ -25,6 +28,7 @@ const ru: LocalePhrasesRoot = {
app: {
errorHeader: 'Ошибка загрузки конфигурации CMS',
configErrors: 'Ошибки конфигурации',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Проверьте свой config.yml файл.',
loadingConfig: 'Загрузка конфигурации…',
waitingBackend: 'Ожидание ответа от бэкенда…',
@ -61,6 +65,10 @@ const ru: LocalePhrasesRoot = {
other: 'Другая',
negateLabel: 'Не %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Автор',
@ -69,6 +77,7 @@ const ru: LocalePhrasesRoot = {
label: 'Обновлено',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -88,8 +97,10 @@ const ru: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} должно содержать строго %{count} элементов.',
rangeMin: '%{fieldLabel} должно содержать не менее %{minCount} элементов.',
rangeMax: '%{fieldLabel} должно содержать %{maxCount} или менее элементов.',
invalidPath: `Путь '%{path}' содежрит ошибки`,
pathExists: `Путь '%{path}' уже существует`,
invalidPath: "Путь '%{path}' содежрит ошибки",
pathExists: "Путь '%{path}' уже существует",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Пишем на %{locale}',
@ -97,20 +108,31 @@ const ru: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Вы уверены, что хотите покинуть эту страницу?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Вы уверены, что хотите удалить эту опубликованную запись, а также несохраненные изменения из текущего сеанса?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Вы уверены, что хотите удалить эту опубликованную запись?',
loadingEntry: 'Загрузка записи…',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'Опубликовать',
published: 'Опубликовано',
unpublish: 'Отменить публикацию',
duplicate: 'Дублировать',
publishAndCreateNew: 'Опубликовать и создать новую',
publishAndDuplicate: 'Опубликовать и дублировать',
deleteEntry: 'Удалить запись',
publishNow: 'Опубликовать сейчас',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -126,22 +148,40 @@ const ru: LocalePhrasesRoot = {
addComponent: 'Добавить компонент',
richText: 'Форматированный текст',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Выберите изображение',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: 'Вставить из URL',
replaceUrl: 'Заменить на URL',
promptUrl: 'Введите URL изображения',
chooseDifferent: 'Выберите другое изображение',
addMore: undefined, // English translation: 'Add more images'
remove: 'Удалить изображение',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Выберите файл',
chooseUrl: 'Вставить из URL',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: 'Заменить на URL',
promptUrl: 'Введите URL файла',
chooseDifferent: 'Выберите другой файл',
addMore: undefined, // English translation: 'Add more files'
remove: 'Удалить файл',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Нет контрола для виджета '%{widget}'.",
@ -159,6 +199,18 @@ const ru: LocalePhrasesRoot = {
},
datetime: {
now: 'Сейчас',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -172,9 +224,13 @@ const ru: LocalePhrasesRoot = {
copied: 'Скопировано',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Вы уверены, что хотите удалить выбранный медиафайл?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Файл слишком большой.\nНастройки не позволяют сохранять файлы более %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Загрузка медифайлов…',
@ -190,12 +246,30 @@ const ru: LocalePhrasesRoot = {
deleting: 'Удаление…',
deleteSelected: 'Удалить помеченные',
chooseSelected: 'Выбрать помеченные',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Вернуться на сайт',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Ошибка',
details: 'Произошла ошибка. Пожалуйста, ',
@ -210,13 +284,15 @@ const ru: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Выйти',
},
toast: {
onFailToLoadEntries: 'Не удалось загрузить запись: %{details}',
onFailToLoadDeployPreview: 'Не удалось загрузить превью: %{details}',
onFailToPersist: 'Не удалось сохранить запись: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Не удалось удалить запись: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Не удалось обновить статус: %{details}',
missingRequiredField:
'К сожалению, вы пропустили обязательное поле. Пожалуйста, заполните перед сохранением.',

View File

@ -1,15 +1,20 @@
const sl = {
import type { LocalePhrasesRoot } from '../types';
const sl: LocalePhrasesRoot = {
auth: {
login: 'Vpiši se',
loggingIn: 'Prijavljanje...',
loginWithNetlifyIdentity: 'Prijavi se z Netlify Identity',
loginWithAzure: 'Prijavi se z Azure računom',
loginWithBitbucket: 'Prijavi se z BitBucket računom',
loginWithGitHub: 'Prijavi se z GitHub računom',
loginWithGitLab: 'Prijavi se z Gitlab računom',
loginWithGitea: undefined, // English translation: 'Login with Gitea'
errors: {
email: 'Vnesi svoj pravi e-poštni naslov.',
password: 'Vnesi svoje geslo.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Ni mogoče dostopati do nastavitev identitete. Ko uporabljate Git-Gateway zaledje, se prepričajte, da omogočite Identity Service in Git Gateway.',
},
@ -17,13 +22,13 @@ const sl = {
app: {
header: {
content: 'Vsebina',
workflow: 'Potek dela',
media: 'Media',
quickAdd: 'Hitro dodajanje',
},
app: {
errorHeader: 'Napaka pri nalaganju CMS konfiguracije',
configErrors: 'Konfiguracijske napake',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Preverite svojo datoteko config.yml.',
loadingConfig: 'Nalaganje konfiguracije ...',
waitingBackend: 'Čakanje na zaledje ...',
@ -60,6 +65,10 @@ const sl = {
other: 'Drugo',
negateLabel: 'Ne %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Avtor',
@ -68,6 +77,7 @@ const sl = {
label: 'Nazadnje posodobljeno',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -87,71 +97,42 @@ const sl = {
rangeCountExact: '%{fieldLabel} mora imeti točno %{count} elemente.',
rangeMin: '%{fieldLabel} mora imeti vsaj %{minCount} elementov.',
rangeMax: '%{fieldLabel} mora imeti %{maxCount} ali manj elementov.',
invalidPath: `'%{path}' ni veljavna pot`,
pathExists: `Pot '%{path}' že obstaja`,
invalidPath: "'%{path}' ni veljavna pot",
pathExists: "Pot '%{path}' že obstaja",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Pisanje v %{locale}',
copyFromLocale: 'Izpolnite iz drugega jezika',
copyFromLocaleConfirm:
'Ali želiš izpolniti podatke iz %{locale} jezika?\nVsa obstoječa vsebina bo prepisana.',
},
},
editor: {
onLeavePage: 'Ste prepričani, da želite zapustiti to stran?',
onUpdatingWithUnsavedChanges: 'Imaš neshranjene spremembe. Shrani pred posodobitvijo stanja.',
onPublishingNotReady: 'Pred objavo posodobi status na "pripravljen".',
onPublishingWithUnsavedChanges: 'Imaš neshranjene spremembe. Shrani pred objavo.',
onPublishing: 'Ste prepričani, da želite objaviti ta vnos?',
onUnpublishing: 'Ste prepričani, da želite preklicati objavo tega vnosa?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Ste prepričani, da želite izbrisati ta objavljen vnos, pa tudi neshrannjene spremembe iz trenutne seje?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Ste prepričani, da želite izbrisati ta objavljeni vnos?',
onDeleteUnpublishedChangesWithUnsavedChanges:
'To bo izbrisalo vse neobjavljene spremembe tega vnosa, pa tudi neshranjene spremembe iz trenutne seje. Ali še vedno želiš izbrisati?',
onDeleteUnpublishedChanges:
'Vse neobjavljene spremembe tega vnosa bodo izbrisane. Ali še vedno želiš izbrisati?',
loadingEntry: 'Nalaganje vnosa ...',
confirmLoadBackup:
'Za ta vnos je bila povrnjena lokalna varnostna kopija, ali bi jo radi uporabili?',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: 'Preklopi i18n',
togglePreview: 'Preklopi predogled',
toggleScrollSync: 'Sinhroniziraj drsenje',
},
editorToolbar: {
publishing: 'Objavljanje ...',
publish: 'Objavi',
published: 'Objavljeno',
unpublish: 'Prekliči objavo',
duplicate: 'Podvoji',
unpublishing: 'Preklicevanje objave ...',
publishAndCreateNew: 'Objavi in ustvari novo',
publishAndDuplicate: 'Objavi in podvoji',
deleteUnpublishedChanges: 'Izbriši neobjavljene spremembe',
deleteUnpublishedEntry: 'Izbriši neobjavljen vnos',
deletePublishedEntry: 'Izbriši objavljen vnos',
deleteEntry: 'Izbriši vnos',
saving: 'Shranjevanje ...',
save: 'Shrani',
statusInfoTooltipDraft:
'Status vnosa je nastavljen na osnutek. Če ga želiš dokončati in predložiti v pregled, nastavi stanje na „v pregledu“',
statusInfoTooltipInReview:
'Vnos je v pregledu, nadaljnja dejanja niso potrebna. Vendar lahko med pregledovanjem še vedno narediš spremembe.',
deleting: 'Brisanje ...',
updating: 'Posodabljanje ...',
status: 'status: %{status}',
backCollection: ' Pisanje v %{collectionLabel} zbirko',
unsavedChanges: 'Neshranjene spremembe',
changesSaved: 'Spremembe shranjene',
draft: 'Osnutek',
inReview: 'V pregledu',
ready: 'Pripravljen',
publishNow: 'Objavi zdaj',
deployPreviewPendingButtonLabel: 'Preveri za predogled',
deployPreviewButtonLabel: 'Ogled predogleda',
deployButtonLabel: 'Pogled v živo',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -167,6 +148,7 @@ const sl = {
addComponent: 'Dodaj komponento',
richText: 'Bogato besedilo',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Izberi sliko',
@ -190,6 +172,17 @@ const sl = {
remove: 'Odstrani datoteko',
removeAll: 'Odstrani vse datoteke',
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Ni kontrole za gradnik '%{widget}'.",
},
@ -206,10 +199,18 @@ const sl = {
},
datetime: {
now: 'Zdaj',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: 'Dodaj %{item}',
addType: 'Dodaj %{item}',
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -223,15 +224,18 @@ const sl = {
copied: 'Kopirano',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Ste prepričani, da želite izbrisati izbrane medije?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody: 'Datoteka je prevelika.\n Ne sme biti večja od %{size} kb.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Nalaganje...',
noResults: 'Ni rezultatov.',
noAssetsFound: 'Ni najdenih sredstev.',
noImagesFound: 'Ni najdenih slik.',
private: 'Private',
images: 'Slike',
mediaAssets: 'Multimedijska sredstva',
search: 'Iskanje ...',
@ -241,12 +245,30 @@ const sl = {
deleting: 'Brisanje ...',
deleteSelected: 'Izbriši izbrano',
chooseSelected: 'Dodaj izbrano',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Vrni se na spletno mesto',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Napaka',
details: 'Prišlo je do napake.',
@ -261,56 +283,26 @@ const sl = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Odjava',
},
toast: {
onFailToLoadEntries: 'Ni naložilo vnosa: %{details}',
onFailToLoadDeployPreview: 'Ni naložilo predogleda: %{details}',
onFailToPersist: 'Ni uspelo vztrajati: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Ni uspelo izbrisati vnosa: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Ni uspelo posodobiti stanja: %{details}',
missingRequiredField: 'Ups, zgrešili ste obvezno polje. Pred shranjevanjem izpolnite.',
entrySaved: 'Vnos shranjen',
entryPublished: 'Vnos objavljen',
entryUnpublished: 'Objava vnosa preklicana',
onFailToPublishEntry: 'Vnosa ni uspelo objaviti: %{details}',
onFailToUnpublishEntry: 'Preklicanje objave vnosa ni uspelo: %{details}',
entryUpdated: 'Status vnosa posodobljen',
onDeleteUnpublishedChanges: 'Neobjavljene spremembe izbrisane',
onFailToAuth: '%{details}',
onLoggedOut: 'Bili ste odjavljeni, varnostno kopirate vse podatke in se ponovno prijavite',
onBackendDown: 'Zaledna storitev doživlja izpad. Glejte %{details} za več informacij',
},
},
workflow: {
workflow: {
loading: 'Nalaganje uredniških vnosov',
workflowHeading: 'Uredniški potek dela',
newPost: 'Nov vnos',
description:
'%{smart_count} vnos čaka na pregled, %{readyCount} pripravljen za objavo. |||| %{smart_count} vnosov čaka na pregled, %{readyCount} pripravljenih za objavo.',
dateFormat: 'DD. MM. YYYY',
},
workflowCard: {
lastChange: '%{date} by %{author}',
lastChangeNoAuthor: '%{date}',
lastChangeNoDate: 'by %{author}',
deleteChanges: 'Izbriši spremembe',
deleteNewEntry: 'Izbriši nov vnos',
publishChanges: 'Objavi spremembe',
publishNewEntry: 'Objavi nov vnos',
},
workflowList: {
onDeleteEntry: 'Ali ste prepričani, da želite izbrisati ta vnos?',
onPublishingNotReadyEntry:
'Objavijo se lahko samo elementi s statusom "pripravljen". Prosimo, povlecite kartico v stolpec "pripravljen", da omogočite objavo.',
onPublishEntry: 'Ste prepričani, da želite objaviti ta vnos?',
draftHeader: 'Osnutki',
inReviewHeader: 'V pregledu',
readyHeader: 'Pripravljen',
currentEntries: '%{smart_count} vnos |||| %{smart_count} vnosov',
},
},
};
export default sl;

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const sv: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const sv: LocalePhrasesRoot = {
errors: {
email: 'Fyll i din epostadress.',
password: 'Vänligen skriv ditt lösenord.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Kan inte hämta inställningar för Identity. Vid användade av git-gateway backend, kontrollera att Identity service och Git Gateway är aktiverade.',
},
@ -25,6 +28,7 @@ const sv: LocalePhrasesRoot = {
app: {
errorHeader: 'Ett fel uppstod vid hämtning av CMS-konfigurationen',
configErrors: 'Konfigurationsfel',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Kontrollera din config.yml-fil.',
loadingConfig: 'Hämtar konfiguration...',
waitingBackend: 'Väntar på backend...',
@ -61,6 +65,10 @@ const sv: LocalePhrasesRoot = {
other: 'Annat',
negateLabel: 'Inte %{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Författare',
@ -69,6 +77,7 @@ const sv: LocalePhrasesRoot = {
label: 'Uppdaterad vid',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -88,8 +97,10 @@ const sv: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} måste ha exakt %{count} element.',
rangeMin: '%{fieldLabel} måste ha åtminstone %{minCount} element.',
rangeMax: '%{fieldLabel} måste ha %{maxCount} eller färre element.',
invalidPath: `'%{path}' är inte en giltig sökväg`,
pathExists: `Sökvägen '%{path}' existerar redan`,
invalidPath: "'%{path}' är inte en giltig sökväg",
pathExists: "Sökvägen '%{path}' existerar redan",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'Skriver i %{locale}',
@ -97,12 +108,16 @@ const sv: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Är du säker på att du vill lämna sidan?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Är du säker på att du vill radera det här publicerade inlägget, inklusive dina osparade ändringar från nuvarande session?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Är du säker på att du vill radera det här publicerade inlägget?',
loadingEntry: 'Hämtar inlägg...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: 'Slå på/av i18n',
togglePreview: 'Visa/Dölj förhandsvisning',
toggleScrollSync: 'Synka scrollning',
@ -110,12 +125,14 @@ const sv: LocalePhrasesRoot = {
editorToolbar: {
publish: 'Publicera',
published: 'Publicerad',
unpublish: 'Avpublicera',
duplicate: 'Duplicera',
publishAndCreateNew: 'Publicera och skapa ny',
publishAndDuplicate: 'Publicera och duplicera',
deleteEntry: 'Radera inlägg',
publishNow: 'Publicera nu',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -131,22 +148,40 @@ const sv: LocalePhrasesRoot = {
addComponent: 'Lägg till komponent',
richText: 'Rich Text',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Välj en bild',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: 'Infoga från URL',
replaceUrl: 'Ersätt med URL',
promptUrl: 'Ange en URL för bilden',
chooseDifferent: 'Välj en annan bild',
addMore: undefined, // English translation: 'Add more images'
remove: 'Ta bort bild',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Välj en fil',
chooseUrl: 'Infoga från URL',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: 'Ersätt med URL',
promptUrl: 'Ange en URL för filen',
chooseDifferent: 'Välj en annan fil',
addMore: undefined, // English translation: 'Add more files'
remove: 'Ta bort fil',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Inget reglage för widget '%{widget}'.",
@ -164,6 +199,18 @@ const sv: LocalePhrasesRoot = {
},
datetime: {
now: 'Nu',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -177,9 +224,13 @@ const sv: LocalePhrasesRoot = {
copied: 'Kopierad',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Är du säker på att du vill radera valt mediaobjekt?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Maximal filstorlek överskriden.\nKonfigurerad att inte tillåta filer större än %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Hämtar...',
@ -195,12 +246,30 @@ const sv: LocalePhrasesRoot = {
deleting: 'Raderar...',
deleteSelected: 'Radera markerad',
chooseSelected: 'Välj markerad',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Tillbaka till sida',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Fel',
details: 'Ett fel har uppstått - vänligen ',
@ -215,13 +284,15 @@ const sv: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Logga ut',
},
toast: {
onFailToLoadEntries: 'Kunde inte hämta inlägg: %{details}',
onFailToLoadDeployPreview: 'Kunde inte ladda förhandsvisning: %{details}',
onFailToPersist: 'Kunde inte spara inlägg: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Kunde inte radera inlägg: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Kunde inte uppdatera status: %{details}',
missingRequiredField:
'Oops, du har missat ett obligatoriskt fält. Vänligen fyll i det innan du sparar.',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const th: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const th: LocalePhrasesRoot = {
errors: {
email: 'ตรวจสอบให้แน่ใจว่าได้ใส่อีเมลล์แล้ว',
password: 'โปรดใส่รหัสผ่านของคุณ',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'ไม่สามารถเข้าถึงการตั้งค่าส่วนตัว เมื่อใช้ git-gateway backend ตรวจสอบให้แน่ใจว่าได้เปิดใช้งานระบบยืนยันตัวตนและ Git Gateway.',
},
@ -25,6 +28,7 @@ const th: LocalePhrasesRoot = {
app: {
errorHeader: 'เกิดข้อผิดพลาดในการโหลดการตั้งค่า CMS',
configErrors: 'คอนฟิกมีข้อผิดพลาด',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'กรุณาตรวจสอบไฟล์ config.yml ของคุณ',
loadingConfig: 'กำลังโหลดการตั้งค่า...',
waitingBackend: 'กำลังรอการตอบกลับจาก backend...',
@ -49,6 +53,7 @@ const th: LocalePhrasesRoot = {
searchResults: 'ค้นหาผลลัพธ์สำหรับ "%{searchTerm}"',
searchResultsInCollection: 'ค้นหาผลลัพธ์สำหรับ "%{searchTerm}" ใน %{collection}',
filterBy: 'กรองตาม',
groupBy: undefined, // English translation: 'Group by'
},
entries: {
loadingEntries: 'กำลังโหลดเนิ้อหา...',
@ -56,6 +61,14 @@ const th: LocalePhrasesRoot = {
longerLoading: 'อาจจะโหลดนานหลายนาที',
noEntries: 'ไม่มีเนื้อหา',
},
groups: {
other: undefined, // English translation: 'Other'
negateLabel: undefined, // English translation: 'Not %{label}'
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'ผู้เขียน',
@ -64,6 +77,7 @@ const th: LocalePhrasesRoot = {
label: 'อัพเดตเมื่อ',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -83,8 +97,10 @@ const th: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} จะต้องมี %{count} รายการ',
rangeMin: '%{fieldLabel} จะต้องมีไม่ต่ำกว่า %{minCount} รายการ',
rangeMax: '%{fieldLabel} จะต้องมีไม่มากกว่า %{maxCount} รายการ',
invalidPath: `'%{path}' พาทไม่ถูกต้อง`,
pathExists: `พาท '%{path}' มีอยู่แล้ว`,
invalidPath: "'%{path}' พาทไม่ถูกต้อง",
pathExists: "พาท '%{path}' มีอยู่แล้ว",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: 'เขียนด้วยภาษา %{locale}',
@ -92,35 +108,80 @@ const th: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'คุณแน่ใจหรือว่าจะออกจากหน้านี้?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'คุณแน่ใจหรือว่าจะต้องการลบการเผยแพร่เนื้อหานี้ รวมถึงการเปลี่ยนแปลงที่ยังไม่ได้บันทึก?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'คุณแน่ใจหรือว่าจะต้องการลบการเผยแพร่เนื้อหานี้?',
loadingEntry: 'กำลังโหลดเนื้อหา...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'เผยแพร่',
published: 'เผยแพร่แล้ว',
unpublish: 'ไม่ได้เผยแพร่',
duplicate: 'ทำซ้ำ',
publishAndCreateNew: 'เผยแพร่ และ สร้างใหม่',
publishAndDuplicate: 'เผยแพร่ และ ทำซ้ำ',
deleteEntry: 'ลบเนื้อหา',
publishNow: 'เผยแพร่ตอนนี้',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
bold: undefined, // English translation: 'Bold'
italic: undefined, // English translation: 'Italic'
code: undefined, // English translation: 'Code'
link: undefined, // English translation: 'Link'
linkPrompt: undefined, // English translation: 'Enter the URL of the link'
headings: undefined, // English translation: 'Headings'
quote: undefined, // English translation: 'Quote'
bulletedList: undefined, // English translation: 'Bulleted List'
numberedList: undefined, // English translation: 'Numbered List'
addComponent: undefined, // English translation: 'Add Component'
richText: 'Rich Text',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'เลือกรูปภาพ',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: 'เลือกรูปภาพอื่น',
addMore: undefined, // English translation: 'Add more images'
remove: 'เอารูปภาพออก',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'เลือกไฟล์',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: 'เลือกไฟล์อื่น',
addMore: undefined, // English translation: 'Add more files'
remove: 'เอาไฟล์ออก',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "ไม่มีการควบคุม widget '%{widget}'.",
@ -138,16 +199,37 @@ const th: LocalePhrasesRoot = {
},
datetime: {
now: 'เวลาตอนนี้',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: 'ร่าง',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'คุณแน่ใจหรือว่าจะลบมีเดียที่ถูกเลือก?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody: 'ไฟล์ใหญ่เกินไป\n ค่าที่ตั้งไว้ไม่ยอมรับไฟล์ที่ใหญ่กว่า %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'กำลังโหลด...',
@ -163,12 +245,30 @@ const th: LocalePhrasesRoot = {
deleting: 'กำลังลบ...',
deleteSelected: 'ลบข้อมูลที่เลือก',
chooseSelected: 'เลือกข้อมูลที่ถูกเลือก',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'กลับไปยังเว็บไซต์',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'มีข้อผิดพลาด',
details: 'มีข้อผิดพลาดเกิดขึ้น',
@ -183,19 +283,20 @@ const th: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'ออกจากระบบ',
},
toast: {
onFailToLoadEntries: 'ล้มเหลวในการโหลดเนื้อหา: %{details}',
onFailToLoadDeployPreview: 'ล้มเหลวในการโหลดตัวอย่าง: %{details}',
onFailToPersist: 'ล้มเหลวในการยืนยันเนื้อหา: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'ล้มเหลวในการลบเนื้อหา: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'ล้มเหลวในการอัปเดตสถานะ: %{details}',
missingRequiredField: 'คุณไม่ได้ใส่ข้อมูลในช่องที่ต้องการ กรุณาใส่ข้อมูลก่อนบันทึก',
entrySaved: 'เนื้อหาถูกบันทึก',
entryPublished: 'เนื้อหาถูกเผยแพร่',
onFailToPublishEntry: 'ล้มเหลวในการเผยแพร่เนื้อหา: %{details}',
onFailToUnpublishEntry: 'ล้มเหลวในการไม่เผยแพร่เนื้อหา: %{details}',
entryUpdated: 'สถานะเนื้อหาถูกอัปเดต',
onFailToAuth: '%{details}',
onLoggedOut: 'คุณได้ออกจากระบบ โปรดสำรองข้อมูลแล้วเข้าสู่ระบบอีกครั้ง',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const tr: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const tr: LocalePhrasesRoot = {
errors: {
email: 'E-postanızı girdiğinizden emin olun.',
password: 'Lütfen şifrenizi girin.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
"Identity ayarlarına erişilemiyor. Git-gateway sunucusunu kullanmak için Identity servisi ve Git Gateway'in etkin olduğundan emin olun.",
},
@ -25,6 +28,7 @@ const tr: LocalePhrasesRoot = {
app: {
errorHeader: 'CMS yapılandırması yüklenirken hata oluştu',
configErrors: 'Yapılandırma Hataları',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'config.yml dosyanızı kontrol edin.',
loadingConfig: 'Yapılandırma yükleniyor...',
waitingBackend: 'Arka uç bekleniyor...',
@ -62,6 +66,10 @@ const tr: LocalePhrasesRoot = {
other: 'Diğer',
negateLabel: '%{label} hariç',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Yazar',
@ -70,6 +78,7 @@ const tr: LocalePhrasesRoot = {
label: 'Güncellenme Tarihi',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -89,8 +98,10 @@ const tr: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel}, %{count} öğe olmalıdır.',
rangeMin: '%{fieldLabel}, en az %{minCount} öğe olmalıdır.',
rangeMax: '%{fieldLabel}, %{maxCount} veya daha az öğe olmalıdır.',
invalidPath: `'%{path}' geçerli bir yol değil`,
pathExists: `'%{path}' yolu zaten var`,
invalidPath: "'%{path}' geçerli bir yol değil",
pathExists: "'%{path}' yolu zaten var",
invalidColor: undefined, // English translation: 'undefined'
invalidHexCode: undefined, // English translation: 'undefined'
},
i18n: {
writingInLocale: '%{locale} için yazılıyor',
@ -98,12 +109,16 @@ const tr: LocalePhrasesRoot = {
},
editor: {
onLeavePage: 'Bu sayfadan ayrılmak istediğinize emin misiniz?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'undefined'
onDeleteWithUnsavedChangesBody:
'Bu oturumda kaydedilmiş değişikliklerin yanı sıra geçerli oturumdaki kaydedilmemiş değişikliklerinizi silmek istediğinize emin misiniz?',
onDeletePublishedEntryTitle: undefined, // English translation: 'undefined'
onDeletePublishedEntryBody: 'Bu yayınlanmış girdiyi silmek istediğinize emin misiniz?',
loadingEntry: 'Girdiler yükleniyor...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'undefined'
preview: undefined, // English translation: 'undefined'
toggleI18n: 'i18n değiştir',
togglePreview: 'Önizlemeyi değiştir',
toggleScrollSync: 'Kaydırmayı senkronize et',
@ -111,12 +126,14 @@ const tr: LocalePhrasesRoot = {
editorToolbar: {
publish: 'Yayınla',
published: 'Yayınlanan',
unpublish: 'Yayından Kaldır',
duplicate: 'Kopyala',
publishAndCreateNew: 'Yayınla ve yeni oluştur',
publishAndDuplicate: 'Yayınla ve kopya oluştur',
deleteEntry: 'Girdiyi sil',
publishNow: 'Şimdi yayımla',
discardChanges: undefined, // English translation: 'undefined'
discardChangesTitle: undefined, // English translation: 'undefined'
discardChangesBody: undefined, // English translation: 'undefined'
},
editorWidgets: {
markdown: {
@ -132,22 +149,40 @@ const tr: LocalePhrasesRoot = {
addComponent: 'Bileşen Ekle',
richText: 'Zengin Metin',
markdown: 'Markdown',
type: undefined, // English translation: 'undefined'
},
image: {
choose: 'Bir resim seçin',
chooseMultiple: undefined, // English translation: 'undefined'
chooseUrl: "URL'den ekle",
replaceUrl: 'URL ile değiştir',
promptUrl: "Resmin URL'sini girin",
chooseDifferent: 'Farklı bir resim seçin',
addMore: undefined, // English translation: 'undefined'
remove: 'Resmi kaldır',
removeAll: undefined, // English translation: 'undefined'
},
file: {
choose: 'Bir dosya seçin',
chooseUrl: "URL'den ekle",
chooseMultiple: undefined, // English translation: 'undefined'
replaceUrl: 'URL ile değiştir',
promptUrl: "Dosyanın URL'sini girin",
chooseDifferent: 'Farklı bir dosya seçin',
addMore: undefined, // English translation: 'undefined'
remove: 'Dosyayı kaldır',
removeAll: undefined, // English translation: 'undefined'
},
folder: {
choose: undefined, // English translation: 'undefined'
chooseUrl: undefined, // English translation: 'undefined'
chooseMultiple: undefined, // English translation: 'undefined'
replaceUrl: undefined, // English translation: 'undefined'
promptUrl: undefined, // English translation: 'undefined'
chooseDifferent: undefined, // English translation: 'undefined'
addMore: undefined, // English translation: 'undefined'
remove: undefined, // English translation: 'undefined'
removeAll: undefined, // English translation: 'undefined'
},
unknownControl: {
noControl: "'%{widget}' bileşeni için kontrol yok.",
@ -165,10 +200,18 @@ const tr: LocalePhrasesRoot = {
},
datetime: {
now: 'Şimdi',
invalidDateTitle: undefined, // English translation: 'undefined'
invalidDateBody: undefined, // English translation: 'undefined'
},
list: {
add: '%{item} Ekle',
addType: '%{item} Ekle',
noValue: undefined, // English translation: 'undefined'
},
keyvalue: {
key: undefined, // English translation: 'undefined'
value: undefined, // English translation: 'undefined'
uniqueKeys: undefined, // English translation: 'undefined'
},
},
},
@ -182,9 +225,13 @@ const tr: LocalePhrasesRoot = {
copied: 'Kopyalandı',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Seçilen medyayı silmek istediğinize emin misiniz?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Dosya çok büyük.\n%{size} kilobaytdan daha büyük dosyaların yüklenmemesi için ayarlanmış.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Yükleniyor...',
@ -200,12 +247,30 @@ const tr: LocalePhrasesRoot = {
deleting: 'Siliniyor...',
deleteSelected: 'Seçileni sil',
chooseSelected: 'Seçileni kullan',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Siteye geri git',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Hata',
details: 'Bir hata oluştu - lütfen ',
@ -220,13 +285,15 @@ const tr: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: ıkış Yap',
},
toast: {
onFailToLoadEntries: 'Girdi yüklenemedi: %{details}',
onFailToLoadDeployPreview: 'Önizleme yüklenemedi: %{details}',
onFailToPersist: 'Girdi devam ettirilemedi: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Girdi silinemedi: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Durum güncellenemedi: %{details}',
missingRequiredField: 'Gerekli bir alan eksik. Lütfen kaydetmeden önce tamamlayın.',
entrySaved: 'Girdi kaydedildi',

View File

@ -0,0 +1,11 @@
export interface LocalePhrasesRoot {
[property: string]: LocalePhrases;
}
export type LocalePharsesSection = { [property: string]: LocalePhrases };
export type LocalePhrases = string | undefined | LocalePharsesSection;
export interface BaseLocalePhrasesRoot {
[property: string]: BaseLocalePhrases;
}
export type BaseLocalePharsesSection = { [property: string]: BaseLocalePhrases };
export type BaseLocalePhrases = string | BaseLocalePharsesSection;

View File

@ -1,6 +1,23 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const uk: LocalePhrasesRoot = {
auth: {
login: undefined, // English translation: 'Login'
loggingIn: undefined, // English translation: 'Logging in...'
loginWithNetlifyIdentity: undefined, // English translation: 'Login with Netlify Identity'
loginWithBitbucket: undefined, // English translation: 'Login with Bitbucket'
loginWithGitHub: undefined, // English translation: 'Login with GitHub'
loginWithGitLab: undefined, // English translation: 'Login with GitLab'
loginWithGitea: undefined, // English translation: 'Login with Gitea'
errors: {
email: undefined, // English translation: 'Make sure to enter your email.'
password: undefined, // English translation: 'Please enter your password.'
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings: undefined, // English translation: 'Unable to access identity settings. When using git-gateway backend make sure to enable Identity service and Git Gateway.'
},
},
app: {
header: {
content: 'Зміст',
@ -10,6 +27,7 @@ const uk: LocalePhrasesRoot = {
app: {
errorHeader: 'Помилка завантаження конфігурації',
configErrors: 'Помилка конфігурації',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Перевірте config.yml файл.',
loadingConfig: 'Завантаження конфігурації...',
waitingBackend: 'Очікування серверу...',
@ -21,17 +39,44 @@ const uk: LocalePhrasesRoot = {
collection: {
sidebar: {
collections: 'Колекції',
allCollections: undefined, // English translation: 'All Collections'
searchAll: 'Пошук',
searchIn: undefined, // English translation: 'Search in'
},
collectionTop: {
sortBy: undefined, // English translation: 'Sort by'
viewAs: 'Змінити вигляд',
newButton: 'Створити %{collectionLabel}',
ascending: undefined, // English translation: 'Ascending'
descending: undefined, // English translation: 'Descending'
searchResults: undefined, // English translation: 'Search Results for "%{searchTerm}"'
searchResultsInCollection: undefined, // English translation: 'Search Results for "%{searchTerm}" in %{collection}'
filterBy: undefined, // English translation: 'Filter by'
groupBy: undefined, // English translation: 'Group by'
},
entries: {
loadingEntries: 'Завантаження записів',
cachingEntries: 'Кешування записів',
longerLoading: 'Це може зайняти декілька хвилинок',
noEntries: undefined, // English translation: 'No Entries'
},
groups: {
other: undefined, // English translation: 'Other'
negateLabel: undefined, // English translation: 'Not %{label}'
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: undefined, // English translation: 'Author'
},
updatedOn: {
label: undefined, // English translation: 'Updated On'
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -47,38 +92,95 @@ const uk: LocalePhrasesRoot = {
range: 'значення %{fieldLabel} повинне бути від %{minValue} до %{maxValue}.',
min: 'значення %{fieldLabel} має бути від %{minValue}.',
max: 'значення %{fieldLabel} має бути %{maxValue} та менше.',
rangeCount: undefined, // English translation: '%{fieldLabel} must have between %{minCount} and %{maxCount} item(s).'
rangeCountExact: undefined, // English translation: '%{fieldLabel} must have exactly %{count} item(s).'
rangeMin: undefined, // English translation: '%{fieldLabel} must have at least %{minCount} item(s).'
rangeMax: undefined, // English translation: '%{fieldLabel} must have %{maxCount} or less item(s).'
invalidPath: undefined, // English translation: ''%{path}' is not a valid path.'
pathExists: undefined, // English translation: 'Path '%{path}' already exists.'
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: undefined, // English translation: 'Writing in %{locale}'
},
},
editor: {
onLeavePage: 'Ви дійсно бажаєте залишити сторінку?',
onUpdatingWithUnsavedChangesBody:
'Присутні незбережені зміни, будь ласка збережіть перед зміною статусу.',
onPublishingNotReadyBody: 'Будь ласка, встановіть статус "Готово" перед публікацією.',
onPublishingWithUnsavedChangesBody:
'Присутні незбережені зміни, будь ласка збережіть їх перед публікацією.',
onPublishingBody: 'Ви дійсно бажаєте опублікувати запис?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Ви дійсно бажаєте видалити опублікований запис, як і всі незбережені зміни під час поточної сесії?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Ви дійсно бажаєте видалити опублікований запис?',
loadingEntry: 'Завантаження...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'Опублікувати',
published: 'Опубліковано',
duplicate: undefined, // English translation: 'Duplicate'
publishAndCreateNew: 'Опублікувати і створити нову',
publishAndDuplicate: undefined, // English translation: 'Publish and duplicate'
deleteEntry: 'Видалити',
publishNow: 'Опублікувати',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
bold: undefined, // English translation: 'Bold'
italic: undefined, // English translation: 'Italic'
code: undefined, // English translation: 'Code'
link: undefined, // English translation: 'Link'
linkPrompt: undefined, // English translation: 'Enter the URL of the link'
headings: undefined, // English translation: 'Headings'
quote: undefined, // English translation: 'Quote'
bulletedList: undefined, // English translation: 'Bulleted List'
numberedList: undefined, // English translation: 'Numbered List'
addComponent: undefined, // English translation: 'Add Component'
richText: undefined, // English translation: 'Rich Text'
markdown: undefined, // English translation: 'Markdown'
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Виберіть зображення',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: 'Виберіть інше зображення',
addMore: undefined, // English translation: 'Add more images'
remove: 'Видалити зображення',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Виберіть файл',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: 'Виберіть інший файл',
addMore: undefined, // English translation: 'Add more files'
remove: 'Видалити файл',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Відсутній модуль для '%{widget}'.",
@ -94,14 +196,39 @@ const uk: LocalePhrasesRoot = {
headingFive: 'Heading 5',
headingSix: 'Heading 6',
},
datetime: {
now: undefined, // English translation: 'Now'
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: 'В роботі',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Ви дійсно бажаєте видалити обрані матеріали?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody: undefined, // English translation: 'File too large.\nConfigured to not allow files greater than %{size} kB.'
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Завантаження...',
@ -113,17 +240,40 @@ const uk: LocalePhrasesRoot = {
search: 'Пошук...',
uploading: 'Завантаження...',
upload: 'Завантажити',
download: undefined, // English translation: 'Download'
deleting: 'Видалення...',
deleteSelected: 'Видалити обране',
chooseSelected: 'Додати обране',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: undefined, // English translation: 'Go back to site'
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Помилка',
details: 'Відбулась помилка - будь ласка ',
reportIt: 'надішліть нам деталі.',
detailsHeading: 'Деталі',
privacyWarning: undefined, // English translation: 'Opening an issue pre-populates it with the error message and debugging data.\nPlease verify the information is correct and remove sensitive data if exists.'
recoveredEntry: {
heading: 'Відновлено документ',
warning: 'Будь ласка, збережіть це десь перед тим як піти!',
@ -131,13 +281,15 @@ const uk: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Вихід',
},
toast: {
onFailToLoadEntries: 'Помилка завантаження: %{details}',
onFailToLoadDeployPreview: 'Помилка завантаження перегляду: %{details}',
onFailToPersist: 'Помилка перезапису: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Помилка видалення: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Помилка оновлення статусу: %{details}',
missingRequiredField:
"Йой, здається пропущено обов'язкове поле. Будь ласка, заповніть перед збереженням.",
@ -146,6 +298,8 @@ const uk: LocalePhrasesRoot = {
onFailToPublishEntry: 'Помилка публікації: %{details}',
entryUpdated: 'Статус оновлено',
onFailToAuth: '%{details}',
onLoggedOut: undefined, // English translation: 'You have been logged out, please back up any data and login again'
onBackendDown: undefined, // English translation: 'The backend service is experiencing an outage. See %{details} for more information'
},
},
};

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const vi: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const vi: LocalePhrasesRoot = {
errors: {
email: 'Hãy nhập email của bạn.',
password: 'Hãy nhập mật khẩu của bạn.',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'Không thể truy cập thiêt lập danh tính. Hãy chắc chắn rằng bạn đã bật dịch vụ Identity và Git Gateway khi sử dụng git-gateway.',
},
@ -25,6 +28,7 @@ const vi: LocalePhrasesRoot = {
app: {
errorHeader: 'Xảy ra lỗi khi tải cấu hình CMS',
configErrors: 'Lỗi cấu hình',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: 'Kiểm tra lại file config.yml của bạn.',
loadingConfig: 'Đang tải cấu hình...',
waitingBackend: 'Đang chờ backend...',
@ -49,6 +53,7 @@ const vi: LocalePhrasesRoot = {
searchResults: 'Kết quả tìm kiếm cho "%{searchTerm}"',
searchResultsInCollection: 'Kết quả tìm kiếm cho "%{searchTerm}" trong %{collection}',
filterBy: 'Lọc theo',
groupBy: undefined, // English translation: 'Group by'
},
entries: {
loadingEntries: 'Đang tải...',
@ -56,6 +61,14 @@ const vi: LocalePhrasesRoot = {
longerLoading: 'Sẽ mất vài phút',
noEntries: 'Không có mục nào',
},
groups: {
other: undefined, // English translation: 'Other'
negateLabel: undefined, // English translation: 'Not %{label}'
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: 'Tác giả',
@ -64,6 +77,7 @@ const vi: LocalePhrasesRoot = {
label: 'Ngày cập nhật',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -83,41 +97,91 @@ const vi: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} phải có %{count} mục.',
rangeMin: '%{fieldLabel} phải có ít nhất %{minCount} mục.',
rangeMax: '%{fieldLabel} phải có tối đa %{maxCount} mục hoặc ít hơn.',
invalidPath: `Đường dẫn '%{path}' không hợp lệ`,
pathExists: `Đường dẫn '%{path}' đã tồn tại`,
invalidPath: "Đường dẫn '%{path}' không hợp lệ",
pathExists: "Đường dẫn '%{path}' đã tồn tại",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: undefined, // English translation: 'Writing in %{locale}'
},
},
editor: {
onLeavePage: 'Bạn có chắc rằng bạn muốn rời khỏi trang này?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody:
'Bạn có chắc rằng bạn muốn xoá mục đã được công bố này, cũng như là những thay đổi chưa lưu của bạn trong phiên làm việc này?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: 'Bạn có chắc rằng bạn muốn xoá mục đã được công bố này?',
loadingEntry: 'Đang tải...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: 'Công bố',
published: 'Đã công bố',
unpublish: 'Ngừng công bố',
duplicate: 'Sao chép',
publishAndCreateNew: 'Công bố và tạo mới',
publishAndDuplicate: 'Công bố và sao chép',
deleteEntry: 'Xoá mục này',
publishNow: 'Công bố ngay',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
bold: undefined, // English translation: 'Bold'
italic: undefined, // English translation: 'Italic'
code: undefined, // English translation: 'Code'
link: undefined, // English translation: 'Link'
linkPrompt: undefined, // English translation: 'Enter the URL of the link'
headings: undefined, // English translation: 'Headings'
quote: undefined, // English translation: 'Quote'
bulletedList: undefined, // English translation: 'Bulleted List'
numberedList: undefined, // English translation: 'Numbered List'
addComponent: undefined, // English translation: 'Add Component'
richText: 'Văn bản định dạng',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: 'Chọn một hình',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: 'Chọn hình khác',
addMore: undefined, // English translation: 'Add more images'
remove: 'Gỡ bỏ hình',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: 'Chọn một tập tin',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: 'Chọn tập tin khác',
addMore: undefined, // English translation: 'Add more files'
remove: 'Gỡ bỏ tập tin',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "Không tìm thấy control cho widget '%{widget}'.",
@ -135,17 +199,38 @@ const vi: LocalePhrasesRoot = {
},
datetime: {
now: 'Ngay lúc này',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: 'Bản nháp',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: 'Bạn có chắc rằng bạn muốn xoá tập tin này?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody:
'Tập tin quá lớn.\nCấu hình không cho phép những tập tin lớn hơn %{size} kB.',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: 'Đang tải...',
@ -161,12 +246,30 @@ const vi: LocalePhrasesRoot = {
deleting: 'Đang xoá...',
deleteSelected: 'Xoá những cái đã chọn',
chooseSelected: 'Lấy những cái đã chọn',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: 'Quay về trang web',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: 'Lỗi',
details: 'Đã xảy ra lỗi - xin hãy ',
@ -181,19 +284,20 @@ const vi: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: 'Đăng xuất',
},
toast: {
onFailToLoadEntries: 'Không thể tải mục: %{details}',
onFailToLoadDeployPreview: 'Không thể tải xem trước: %{details}',
onFailToPersist: 'Không thể giữ lại mục: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: 'Không thể xoá mục: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: 'Không thể cập nhật trạng thái: %{details}',
missingRequiredField: 'Bạn còn thiếu vài thông tin bắt buộc. Hãy hoàn thành trước khi lưu.',
entrySaved: 'Mục đã được lưu',
entryPublished: 'Mục đã được công bố',
onFailToPublishEntry: 'Không thể công bố: %{details}',
onFailToUnpublishEntry: 'Không thể ngừng công bố mục: %{details}',
entryUpdated: 'Trạng thái của mục đã được cập nhật',
onFailToAuth: '%{details}',
onLoggedOut: 'Bạn đã đăng xuất, hãy sao lưu dữ liệu và đăng nhập lại',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const zh_Hans: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const zh_Hans: LocalePhrasesRoot = {
errors: {
email: '请输入电子邮箱',
password: '请输入密码',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'无法连接账户认证系统(如果正在使用 git-gateway 作为 backend请确保已经开启 Netlify Identity 服务以及 Git Gateway',
},
@ -25,6 +28,7 @@ const zh_Hans: LocalePhrasesRoot = {
app: {
errorHeader: '加载 CMS 配置时发生错误',
configErrors: '配置错误',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: '请检查 config.yml 文件是否配置正确',
loadingConfig: '正在加载配置...',
waitingBackend: '等待 backend 数据...',
@ -61,6 +65,10 @@ const zh_Hans: LocalePhrasesRoot = {
other: '其他',
negateLabel: '非%{label}',
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: '作者',
@ -69,6 +77,7 @@ const zh_Hans: LocalePhrasesRoot = {
label: '更新于',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -86,10 +95,12 @@ const zh_Hans: LocalePhrasesRoot = {
max: '“%{fieldLabel}”必须小于等于 %{maxValue}',
rangeCount: '“%{fieldLabel}”必须包含 %{minCount} 到 %{maxCount} 个项目',
rangeCountExact: '“%{fieldLabel}”必须且只能包含 %{count} 个项目',
minCount: '“%{fieldLabel}”必须为至少 %{minCount} 个项目',
maxCount: '“%{fieldLabel}”必须为小于等于 %{maxCount} 个项目',
invalidPath: `“%{path}”为无效路径`,
pathExists: `路径“%{path}”已经存在`,
rangeMin: undefined, // English translation: '%{fieldLabel} must have at least %{minCount} item(s).'
rangeMax: undefined, // English translation: '%{fieldLabel} must have %{maxCount} or less item(s).'
invalidPath: '“%{path}”为无效路径',
pathExists: '路径“%{path}”已经存在',
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: '正在使用%{locale}撰写',
@ -97,11 +108,15 @@ const zh_Hans: LocalePhrasesRoot = {
},
editor: {
onLeavePage: '你确定要离开此页面吗?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody: '你确定要删除这个已经发布的内容,以及当前尚未保存的修改吗?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: '你确定要删除这个已经发布的内容吗?',
loadingEntry: '正在加载内容...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: '打开/关闭国际化',
togglePreview: '打开/关闭预览',
toggleScrollSync: '同步滚动',
@ -109,12 +124,14 @@ const zh_Hans: LocalePhrasesRoot = {
editorToolbar: {
publish: '发布',
published: '已发布',
unpublish: '撤销发布',
duplicate: '复制',
publishAndCreateNew: '发布,然后新建内容',
publishAndDuplicate: '发布,然后复制内容',
deleteEntry: '删除内容',
publishNow: '立即发布',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -130,22 +147,40 @@ const zh_Hans: LocalePhrasesRoot = {
addComponent: '添加组件',
richText: '富文本',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: '选择图片',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: '从 URL 插入',
replaceUrl: '用 URL 替代',
promptUrl: '输入图片的 URL',
chooseDifferent: '选择其他图片',
addMore: undefined, // English translation: 'Add more images'
remove: '移除图片',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: '选择文件',
chooseUrl: '从 URL 插入',
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: '用 URL 替代',
promptUrl: '输入文件的 URL',
chooseDifferent: '选择其他文件',
addMore: undefined, // English translation: 'Add more files'
remove: '移除文件',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "'%{widget}'的控件不存在",
@ -163,6 +198,18 @@ const zh_Hans: LocalePhrasesRoot = {
},
datetime: {
now: '现在',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
@ -176,8 +223,12 @@ const zh_Hans: LocalePhrasesRoot = {
copied: '已复制',
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: '你确定要删除此媒体项目吗?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody: '文件体积过大\n目前的配置中不允许文件体积超过 %{size} kB',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: '正在加载...',
@ -193,12 +244,30 @@ const zh_Hans: LocalePhrasesRoot = {
deleting: '正在下载...',
deleteSelected: '删除已选中项目',
chooseSelected: '选用已选中项目',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: '返回主页',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: '错误',
details: '程序发生了一个错误,请',
@ -213,19 +282,20 @@ const zh_Hans: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: '注销',
},
toast: {
onFailToLoadEntries: '加载内容失败: %{details}',
onFailToLoadDeployPreview: '加载预览失败: %{details}',
onFailToPersist: '保存内容失败: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: '删除内容失败: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: '更新状态失败: %{details}',
missingRequiredField: '你漏掉了一个必填项,请在保存之前将它填写好',
entrySaved: '内容已保存',
entryPublished: '内容已发布',
onFailToPublishEntry: '发布失败: %{details}',
onFailToUnpublishEntry: '撤销发布失败: %{details}',
entryUpdated: '内容状态已更新',
onFailToAuth: '%{details}',
onLoggedOut: '你已注销,请先保存好数据然后再次登录',

View File

@ -1,4 +1,4 @@
import type { LocalePhrasesRoot } from '@staticcms/core/interface';
import type { LocalePhrasesRoot } from '../types';
const zh_Hant: LocalePhrasesRoot = {
auth: {
@ -12,6 +12,9 @@ const zh_Hant: LocalePhrasesRoot = {
errors: {
email: '請確認你已經輸入你的電子郵件。',
password: '請輸入你的密碼。',
authTitle: undefined, // English translation: 'Error logging in'
authBody: '%{details}',
netlifyIdentityNotFound: undefined, // English translation: 'Netlify Identity plugin not found'
identitySettings:
'無法連接認證系統!當使用 git-gateway 作為後端資料庫時,請確認您已開啟認證服務及 Git Gateway。',
},
@ -25,6 +28,7 @@ const zh_Hant: LocalePhrasesRoot = {
app: {
errorHeader: '載入 CMS 設定時發生錯誤',
configErrors: '設定錯誤',
configNotFound: undefined, // English translation: 'Config not found'
checkConfigYml: '請確認你的 config.yml 設定檔的內容是否正確',
loadingConfig: '正在載入設定...',
waitingBackend: '正在等待後端資料連接...',
@ -49,6 +53,7 @@ const zh_Hant: LocalePhrasesRoot = {
searchResults: '搜尋 "%{searchTerm}" 的結果',
searchResultsInCollection: '在 %{collection} 中搜尋 %{searchTerm}" 的結果',
filterBy: '篩選方式',
groupBy: undefined, // English translation: 'Group by'
},
entries: {
loadingEntries: '載入內容',
@ -56,6 +61,14 @@ const zh_Hant: LocalePhrasesRoot = {
longerLoading: '這可能需要幾分鐘的時間',
noEntries: '沒有內容',
},
groups: {
other: undefined, // English translation: 'Other'
negateLabel: undefined, // English translation: 'Not %{label}'
},
table: {
summary: undefined, // English translation: 'Summary'
collection: undefined, // English translation: 'Collection'
},
defaultFields: {
author: {
label: '作者',
@ -64,6 +77,7 @@ const zh_Hant: LocalePhrasesRoot = {
label: '更新於',
},
},
notFound: undefined, // English translation: 'Collection not found'
},
editor: {
editorControl: {
@ -83,8 +97,10 @@ const zh_Hant: LocalePhrasesRoot = {
rangeCountExact: '%{fieldLabel} 必須正好有 %{count} 個項目。',
rangeMin: '%{fieldLabel} 必須至少有 %{minCount} 個項目。',
rangeMax: '%{fieldLabel} 最多只能有 %{maxCount} 個項目。',
invalidPath: `'%{path}' 不是有效的路徑`,
pathExists: `路徑 '%{path}' 已經存在`,
invalidPath: "'%{path}' 不是有效的路徑",
pathExists: "路徑 '%{path}' 已經存在",
invalidColor: undefined, // English translation: 'Color '%{color}' is invalid.'
invalidHexCode: undefined, // English translation: 'Hex codes must start with a # sign.'
},
i18n: {
writingInLocale: '以 %{locale} 書寫',
@ -92,19 +108,30 @@ const zh_Hant: LocalePhrasesRoot = {
},
editor: {
onLeavePage: '您確定要離開這頁嗎?',
onDeleteWithUnsavedChangesTitle: undefined, // English translation: 'Delete this published entry?'
onDeleteWithUnsavedChangesBody: '你確定要刪除這篇已發布的內容以及你尚未儲存的變更?',
onDeletePublishedEntryTitle: undefined, // English translation: 'Delete this published entry?'
onDeletePublishedEntryBody: '你確定要刪除這篇已發布的內容?',
loadingEntry: '載入內容中...',
},
editorInterface: {
sideBySideI18n: undefined, // English translation: 'I18n Side by Side'
preview: undefined, // English translation: 'Preview'
toggleI18n: undefined, // English translation: 'Toggle i18n'
togglePreview: undefined, // English translation: 'Toggle preview'
toggleScrollSync: undefined, // English translation: 'Sync scrolling'
},
editorToolbar: {
publish: '發布',
published: '已發布',
unpublish: '取消發布',
duplicate: '建立新內容',
publishAndCreateNew: '發布並建立內容',
publishAndDuplicate: '發布並複製內容',
deleteEntry: '刪除內容',
publishNow: '立即發布',
discardChanges: undefined, // English translation: 'Discard changes'
discardChangesTitle: undefined, // English translation: 'Discard changes'
discardChangesBody: undefined, // English translation: 'Are you sure you want to discard the unsaved changed?'
},
editorWidgets: {
markdown: {
@ -120,16 +147,40 @@ const zh_Hant: LocalePhrasesRoot = {
addComponent: '加入元件',
richText: 'Rich Text',
markdown: 'Markdown',
type: undefined, // English translation: 'Type...'
},
image: {
choose: '選擇一張圖片',
chooseMultiple: undefined, // English translation: 'Choose images'
chooseUrl: undefined, // English translation: 'Insert from URL'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the image'
chooseDifferent: '選擇其他圖片',
addMore: undefined, // English translation: 'Add more images'
remove: '刪除圖片',
removeAll: undefined, // English translation: 'Remove all images'
},
file: {
choose: '選擇一個檔案',
chooseUrl: undefined, // English translation: 'Insert from URL'
chooseMultiple: undefined, // English translation: 'Choose files'
replaceUrl: undefined, // English translation: 'Replace with URL'
promptUrl: undefined, // English translation: 'Enter the URL of the file'
chooseDifferent: '選擇其他檔案',
addMore: undefined, // English translation: 'Add more files'
remove: '刪除檔案',
removeAll: undefined, // English translation: 'Remove all files'
},
folder: {
choose: undefined, // English translation: 'Choose a folder'
chooseUrl: undefined, // English translation: 'Insert folder path'
chooseMultiple: undefined, // English translation: 'Choose folders'
replaceUrl: undefined, // English translation: 'Replace with path'
promptUrl: undefined, // English translation: 'Enter path of the folder'
chooseDifferent: undefined, // English translation: 'Choose different folder'
addMore: undefined, // English translation: 'Add more folders'
remove: undefined, // English translation: 'Remove folder'
removeAll: undefined, // English translation: 'Remove all folders'
},
unknownControl: {
noControl: "無法控制元件: '%{widget}'.",
@ -147,16 +198,37 @@ const zh_Hant: LocalePhrasesRoot = {
},
datetime: {
now: '現在',
invalidDateTitle: undefined, // English translation: 'Invalid date'
invalidDateBody: undefined, // English translation: 'The date you entered is invalid.'
},
list: {
add: undefined, // English translation: 'Add %{item}'
addType: undefined, // English translation: 'Add %{item}'
noValue: undefined, // English translation: 'No value'
},
keyvalue: {
key: undefined, // English translation: 'Key'
value: undefined, // English translation: 'Value'
uniqueKeys: undefined, // English translation: '%{keyLabel} must be unique'
},
},
},
mediaLibrary: {
mediaLibraryCard: {
draft: '草稿',
copy: undefined, // English translation: 'Copy'
copyUrl: undefined, // English translation: 'Copy URL'
copyPath: undefined, // English translation: 'Copy Path'
copyName: undefined, // English translation: 'Copy Name'
copied: undefined, // English translation: 'Copied'
},
mediaLibrary: {
onDeleteTitle: undefined, // English translation: 'Delete selected media?'
onDeleteBody: '你確定要刪除已選擇的媒體嗎?',
fileTooLargeTitle: undefined, // English translation: 'File too large'
fileTooLargeBody: '檔案太大。\n已設定不允許大於 %{size} kB 的檔案。',
alreadyExistsTitle: undefined, // English translation: 'File already exists'
alreadyExistsBody: undefined, // English translation: '%{filename} already exists. Do you want to replace it?'
},
mediaLibraryModal: {
loading: '載入中...',
@ -172,12 +244,30 @@ const zh_Hant: LocalePhrasesRoot = {
deleting: '刪除中...',
deleteSelected: '刪除已選擇的項目',
chooseSelected: '選擇已選擇的項目',
dropImages: undefined, // English translation: 'Drop images to upload'
dropFiles: undefined, // English translation: 'Drop files to upload'
},
folderSupport: {
newFolder: undefined, // English translation: 'New folder'
createNewFolder: undefined, // English translation: 'Create new folder'
enterFolderName: undefined, // English translation: 'Enter folder name...'
home: undefined, // English translation: 'Home'
up: undefined, // English translation: 'Up'
upToFolder: undefined, // English translation: 'Up to %{folder}'
},
},
ui: {
common: {
yes: undefined, // English translation: 'Yes'
no: undefined, // English translation: 'No'
okay: undefined, // English translation: 'OK'
},
default: {
goBackToSite: '回到網站',
},
localBackup: {
hasLocalBackup: undefined, // English translation: 'Has local backup'
},
errorBoundary: {
title: '錯誤',
details: '發生錯誤!請 ',
@ -192,13 +282,15 @@ const zh_Hant: LocalePhrasesRoot = {
},
},
settingsDropdown: {
darkMode: undefined, // English translation: 'Dark Mode'
logOut: '登出',
},
toast: {
onFailToLoadEntries: '無法載入內容: %{details}',
onFailToLoadDeployPreview: '無法預覽內容: %{details}',
onFailToPersist: '無法暫存內容: %{details}',
onFailToPersistMedia: undefined, // English translation: 'Failed to persist media: %{details}'
onFailToDelete: '無法刪除內容: %{details}',
onFailToDeleteMedia: undefined, // English translation: 'Failed to delete media: %{details}'
onFailToUpdateStatus: '無法更新狀態: %{details}',
missingRequiredField: '糟了!你漏填了一個必須填入的欄位,在儲存前請先填完所有內容',
entrySaved: '已儲存內容',

56
packages/tools/.gitignore vendored Normal file
View File

@ -0,0 +1,56 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# dependencies
/node_modules
/.pnp
.pnp.js
# testing
/coverage
# next.js
/.next/
/out/
# production
/build
# misc
.DS_Store
*.pem
# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*
# local env files
.env*.local
# vercel
.vercel
# typescript
*.tsbuildinfo
next-env.d.ts
dist/
bin/
.tern-project
.vscode/
.idea/
manifest.yml
.imdone/
data/contributors.json
cypress/videos
cypress/screenshots
__diff_output__
.cache
*.log
.env
.temp/
*.tgz
public/sw.js
public/workbox*.js

View File

@ -0,0 +1,6 @@
{
"arrowParens": "avoid",
"trailingComma": "all",
"singleQuote": true,
"printWidth": 100
}

View File

@ -0,0 +1,96 @@
const path = require('path');
const coreVersion = require('./package.json').version;
const isProduction = process.env.NODE_ENV === 'production';
const isTest = process.env.NODE_ENV === 'test';
const isESM = process.env.NODE_ENV === 'esm';
console.info('Build Package:', path.basename(process.cwd()));
const defaultPlugins = [
'lodash',
[
'babel-plugin-transform-builtin-extend',
{
globals: ['Error'],
},
],
'transform-export-extensions',
'@babel/plugin-proposal-class-properties',
'@babel/plugin-proposal-object-rest-spread',
'@babel/plugin-proposal-export-default-from',
'@babel/plugin-proposal-nullish-coalescing-operator',
'@babel/plugin-proposal-optional-chaining',
'@babel/plugin-syntax-dynamic-import',
'babel-plugin-inline-json-import',
];
const svgo = {
plugins: [
{
name: 'preset-default',
params: {
overrides: {
removeViewBox: false,
},
},
},
],
};
function presets() {
return [
'@babel/preset-react',
'@babel/preset-env',
[
'@emotion/babel-preset-css-prop',
{
autoLabel: 'always',
},
],
'@babel/typescript',
];
}
function plugins() {
if (isESM) {
return [
...defaultPlugins,
[
'transform-define',
{
STATIC_CMS_CORE_VERSION: `${coreVersion}`,
},
],
[
'inline-react-svg',
{
svgo,
},
],
];
}
if (isTest) {
return [
...defaultPlugins,
[
'inline-react-svg',
{
svgo,
},
],
];
}
if (!isProduction) {
return [...defaultPlugins];
}
return defaultPlugins;
}
module.exports = {
presets: presets(),
plugins: plugins(),
};

View File

@ -0,0 +1,40 @@
{
"name": "@staticcms/tools",
"version": "1.0.0",
"license": "MIT",
"private": true,
"scripts": {
"format": "prettier \"src/**/*.{js,jsx,ts,tsx,css}\" --write",
"lint": "prettier \"src/**/*.{js,jsx,ts,tsx,css}\" --list-different",
"sync-locales": "ts-node -r tsconfig-paths/register src/localeSync.ts",
"type-check": "tsc --watch"
},
"dependencies": {
"@staticcms/core": "^3.3.3",
"lodash": "4.17.21",
"prettier": "2.8.8",
"ts-node": "10.9.1",
"typescript": "5.0.4"
},
"devDependencies": {
"@types/common-tags": "1.8.1",
"@types/create-react-class": "15.6.3",
"@types/fs-extra": "11.0.1",
"@types/is-hotkey": "0.1.7",
"@types/jest": "29.5.1",
"@types/js-yaml": "4.0.5",
"@types/jwt-decode": "2.2.1",
"@types/lodash": "4.14.194",
"@types/minimatch": "5.1.2",
"@types/node": "18.16.14",
"@types/node-fetch": "2.6.4",
"@types/react": "18.2.0",
"@types/react-color": "3.0.6",
"@types/react-dom": "18.2.1",
"@types/react-virtualized-auto-sizer": "1.0.1",
"@types/react-window": "1.8.5",
"@types/styled-components": "5.1.26",
"@types/url-join": "4.0.1",
"@types/uuid": "9.0.1"
}
}

View File

@ -0,0 +1,110 @@
import { join } from 'path';
import get from 'lodash/get';
import prettier from 'prettier';
import locales from '@staticcms/core/locales';
import baseLocale from '@staticcms/core/locales/en';
import type { BaseLocalePhrases, LocalePhrases, LocalePhrasesRoot } from '@staticcms/core/locales';
import { readFileSync, writeFileSync } from 'fs';
// const localesDir = "../core/src/locales";
function processLocaleSection(
baseSection: BaseLocalePhrases,
localeSection: LocalePhrases,
): LocalePhrases {
if (typeof baseSection === 'string') {
return localeSection ?? undefined;
}
return Object.keys(baseSection).reduce((acc, section) => {
acc[section] = processLocaleSection(
baseSection[section],
typeof localeSection === 'string' ? undefined : localeSection?.[section],
);
return acc;
}, {} as LocalePhrasesRoot);
}
function processLocale(name: string, locale: LocalePhrasesRoot) {
const newLocale = Object.keys(baseLocale).reduce((acc, section) => {
acc[section] = processLocaleSection(baseLocale[section], locale[section]);
return acc;
}, {} as LocalePhrasesRoot);
const path = join(__dirname, '../../core/src/locales', name, `/index.ts`);
const formattedCode = prettier.format(
`import type { LocalePhrasesRoot } from '../types';
const ${name}: LocalePhrasesRoot = ${JSON.stringify(
newLocale,
function (_k, v) {
return v === undefined ? null : v;
},
2,
)};
export default ${name};
`,
{
parser: 'typescript',
arrowParens: 'avoid',
trailingComma: 'all',
singleQuote: true,
printWidth: 100,
},
);
writeFileSync(path, formattedCode);
const lines = readFileSync(path, 'utf-8').split('\n');
const outputLines: string[] = [];
const parentPath: string[] = [];
for (const line of lines) {
const parentOpenMatch = /([a-zA-Z0-9_]+): {/.exec(line);
if (parentOpenMatch && parentOpenMatch.length === 2) {
parentPath.push(parentOpenMatch[1]);
outputLines.push(line);
continue;
}
const parentCloseMatch = /},/.exec(line);
if (parentCloseMatch && parentCloseMatch.length === 1) {
parentPath.pop();
outputLines.push(line);
continue;
}
const emptyLine = /([ ]*)([a-zA-Z0-9_]+): null,/.exec(line);
if (emptyLine && emptyLine.length === 3) {
const englishTranslation = String(
get(baseLocale, [...parentPath, emptyLine[2]].join('.')),
).replace(/\n/g, '\\n');
outputLines.push(
`${emptyLine[1]}${emptyLine[2]}: undefined, // English translation: '${englishTranslation}'`,
);
continue;
}
outputLines.push(line);
}
writeFileSync(path, outputLines.join('\n'));
}
(async function () {
Object.keys(locales).forEach(locale => {
if (locale === 'en') {
return;
}
processLocale(locale, locales[locale]);
});
})();

View File

@ -0,0 +1,30 @@
{
"compilerOptions": {
"sourceMap": true,
"declaration": true,
"declarationDir": "dist",
"emitDeclarationOnly": true,
"jsx": "react",
"target": "ES2017",
"module": "commonjs",
"moduleResolution": "node",
"esModuleInterop": true,
"preserveSymlinks": true,
"noEmit": false,
"strict": true,
"isolatedModules": true,
"skipLibCheck": true,
"allowJs": true,
"noUnusedLocals": true,
"noUnusedParameters": true,
"allowImportingTsExtensions": true,
"baseUrl": "./",
"lib": ["DOM", "es6", "ES2015", "ES2020"],
"paths": {
"@staticcms/core/locales": ["../core/src/locales"],
"@staticcms/core/locales/*": ["../core/src/locales/*"]
}
},
"include": ["src/**/*"],
"exclude": ["node_modules", "../../node_modules"]
}