Bugfixes (#74)
* Fix demo post date format * Fix test data * Fix sorting * Fix load more * Fix markdown preview not updating * Load relation options if value provided * Update entry with default date * Better change detection * Fix sticky headers on tablet view (docs site)
This commit is contained in:
parent
16339ce1bf
commit
af8f18ce54
@ -2,6 +2,7 @@ backend:
|
||||
name: test-repo
|
||||
site_url: 'https://example.com'
|
||||
media_folder: assets/uploads
|
||||
locale: en
|
||||
collections:
|
||||
- name: posts
|
||||
label: Posts
|
||||
@ -48,7 +49,7 @@ collections:
|
||||
widget: datetime
|
||||
date_format: yyyy-MM-dd
|
||||
time_format: 'HH:mm'
|
||||
format: 'yyyy-MM-dd HH:mm'
|
||||
format: "yyyy-MM-dd'T'HH:mm:ss.SSSXXX"
|
||||
- label: Cover Image
|
||||
name: image
|
||||
widget: image
|
||||
|
@ -119,7 +119,7 @@
|
||||
`\"\ndraft: ${i % 2 === 0}` +
|
||||
'\ndate: ' +
|
||||
dateString +
|
||||
'T00:00:00.000Z\n---\n\n# The post is number ' +
|
||||
'T00:00:00.000Z\n---\n# The post is number ' +
|
||||
i +
|
||||
'\n\nAnd this is yet another identical post body',
|
||||
};
|
||||
@ -140,7 +140,7 @@
|
||||
i +
|
||||
'"\ndate: ' +
|
||||
dateString +
|
||||
'T00:00:00.000Z\n---\n\n# Loren ipsum dolor sit amet',
|
||||
'T00:00:00.000Z\n---\n# Loren ipsum dolor sit amet',
|
||||
};
|
||||
}
|
||||
window.repoFiles._pages = {
|
||||
|
@ -655,12 +655,12 @@ const appendActions = {
|
||||
function addAppendActionsToCursor(cursor: Cursor) {
|
||||
return Cursor.create(cursor).updateStore(store => ({
|
||||
...store,
|
||||
actions: new Set(
|
||||
actions: new Set([
|
||||
...store.actions,
|
||||
...(Object.entries(appendActions)
|
||||
.filter(([_k, v]) => store.actions.has(v.action as string))
|
||||
.map(([k, _v]) => k) as string[]),
|
||||
),
|
||||
]),
|
||||
}));
|
||||
}
|
||||
|
||||
|
@ -65,13 +65,13 @@ const EntryListing = ({
|
||||
handleCursorActions,
|
||||
...otherProps
|
||||
}: EntryListingProps) => {
|
||||
const hasMore = useCallback(() => {
|
||||
const hasMore = useMemo(() => {
|
||||
const hasMore = cursor?.actions?.has('append_next');
|
||||
return hasMore;
|
||||
}, [cursor?.actions]);
|
||||
|
||||
const handleLoadMore = useCallback(() => {
|
||||
if (hasMore()) {
|
||||
if (hasMore) {
|
||||
handleCursorActions('append_next');
|
||||
}
|
||||
}, [handleCursorActions, hasMore]);
|
||||
@ -138,7 +138,7 @@ const EntryListing = ({
|
||||
<div>
|
||||
<CardsGrid $layout={viewStyle}>
|
||||
{renderedCards}
|
||||
{hasMore() && <Waypoint key={page} onEnter={handleLoadMore} />}
|
||||
{hasMore && <Waypoint key={page} onEnter={handleLoadMore} />}
|
||||
</CardsGrid>
|
||||
</div>
|
||||
);
|
||||
|
@ -31,7 +31,7 @@ function nextSortDirection(direction: SortDirection) {
|
||||
case SORT_DIRECTION_DESCENDING:
|
||||
return SORT_DIRECTION_NONE;
|
||||
default:
|
||||
return SORT_DIRECTION_NONE;
|
||||
return SORT_DIRECTION_ASCENDING;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -175,12 +175,12 @@ const Editor = ({
|
||||
useEffect(() => {
|
||||
if (!prevLocalBackup && localBackup) {
|
||||
const updateLocalBackup = async () => {
|
||||
const confirmLoadBackup = await confirm({
|
||||
const confirmLoadBackupBody = await confirm({
|
||||
title: 'editor.editor.confirmLoadBackupTitle',
|
||||
body: 'editor.editor.confirmLoadBackupBody',
|
||||
});
|
||||
|
||||
if (confirmLoadBackup) {
|
||||
if (confirmLoadBackupBody) {
|
||||
loadLocalBackup();
|
||||
setVersion(version + 1);
|
||||
} else {
|
||||
|
@ -237,7 +237,7 @@ const MediaLibrary = ({
|
||||
if (
|
||||
!(await confirm({
|
||||
title: 'mediaLibrary.mediaLibrary.onDeleteTitle',
|
||||
body: 'mediaLibrary.mediaLibrary.onDeleteBody',
|
||||
body: 'mediaLibrary.mediaLibrary.onDelete',
|
||||
color: 'error',
|
||||
}))
|
||||
) {
|
||||
|
@ -51,5 +51,8 @@ export function addExtensions() {
|
||||
CodeWidget(),
|
||||
ColorStringWidget(),
|
||||
]);
|
||||
registerLocale('en', locales.en);
|
||||
|
||||
Object.keys(locales).forEach(locale => {
|
||||
registerLocale(locale, locales[locale]);
|
||||
});
|
||||
}
|
||||
|
@ -41,7 +41,7 @@ function createCursorStore(...args: unknown[]) {
|
||||
|
||||
return {
|
||||
// actions are a Set, rather than a List, to ensure an efficient .has
|
||||
actions: new Set(...actions),
|
||||
actions: new Set([...actions]),
|
||||
// data and meta are Maps
|
||||
data,
|
||||
meta: filterUnknownMetaKeys(meta),
|
||||
@ -97,13 +97,13 @@ export default class Cursor {
|
||||
addAction(action: string) {
|
||||
return this.updateStore(store => ({
|
||||
...store,
|
||||
actions: new Set(...store.actions, action),
|
||||
actions: new Set([...store.actions, action]),
|
||||
}));
|
||||
}
|
||||
|
||||
removeAction(action: string) {
|
||||
return this.updateStore(store => {
|
||||
const newActions = new Set(...store.actions);
|
||||
const newActions = new Set([...store.actions]);
|
||||
newActions.delete(action);
|
||||
|
||||
return {
|
||||
@ -123,7 +123,7 @@ export default class Cursor {
|
||||
mergeActions(actions: Set<string>) {
|
||||
return this.updateStore(store => ({
|
||||
...store,
|
||||
actions: new Set({ ...store.actions, ...actions }),
|
||||
actions: new Set([...store.actions, ...actions]),
|
||||
}));
|
||||
}
|
||||
|
||||
|
@ -97,16 +97,16 @@ const bg: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Наистина ли искате да напуснете тази страница?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Имате незапазени промени, моля, запазете преди актуализиране на състоянието.',
|
||||
onPublishingNotReady: 'Моля, актуализирайте състоянието на „Готово“, преди да публикувате',
|
||||
onPublishingWithUnsavedChanges: 'Имате незапазени промени, моля, запазете преди публикуване.',
|
||||
onPublishing: 'Наистина ли искате да публикувате този запис?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Моля, актуализирайте състоянието на „Готово“, преди да публикувате',
|
||||
onPublishingWithUnsavedChangesBody: 'Имате незапазени промени, моля, запазете преди публикуване.',
|
||||
onPublishingBody: 'Наистина ли искате да публикувате този запис?',
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Наистина ли искате да изтриете този публикуван запис, както и незаписаните промени от текущата сесия?',
|
||||
onDeletePublishedEntry: 'Наистина ли искате да изтриете този публикуван запис?',
|
||||
onDeletePublishedEntryBody: 'Наистина ли искате да изтриете този публикуван запис?',
|
||||
loadingEntry: 'Зареждане на запис...',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
'За този запис беше възстановен локален архив, бихте ли искали да го използвате?',
|
||||
},
|
||||
editorInterface: {
|
||||
@ -198,8 +198,8 @@ const bg: LocalePhrasesRoot = {
|
||||
copied: 'Копирано',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Наистина ли искате да изтриете избрания медиен файл?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: 'Наистина ли искате да изтриете избрания медиен файл?',
|
||||
fileTooLargeBody:
|
||||
'Файлът е твърде голям.\nНастройките не позволяват запазване на файлове по-големи от %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -97,17 +97,17 @@ const ca: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Estàs segur que vols deixar aquesta pàgina?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
"Tens canvis no guardats, si us plau, guarda'ls abans d'actualitzar l'estat.",
|
||||
onPublishingNotReady: 'Si us plau, actualitza l\'estat a "Llest" abans de publicar.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Si us plau, actualitza l\'estat a "Llest" abans de publicar.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
"Tens canvis no guardats, si us plau, guarda'ls abans de publicar-los.",
|
||||
onPublishing: 'Estàs segur que vols publicar aquesta entrada?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onPublishingBody: 'Estàs segur que vols publicar aquesta entrada?',
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Està segur que vol eliminar aquesta entrada publicada, així com els canvis no guardats de la sessió actual?',
|
||||
onDeletePublishedEntry: 'Està segur que vol eliminar aquesta entrada publicada?',
|
||||
onDeletePublishedEntryBody: 'Està segur que vol eliminar aquesta entrada publicada?',
|
||||
loadingEntry: 'Carregant entrada...',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
"S'ha recuperat una copia de seguretat local per aquesta entrada. La vol utilitzar?",
|
||||
},
|
||||
editorInterface: {
|
||||
@ -197,8 +197,8 @@ const ca: LocalePhrasesRoot = {
|
||||
copied: 'Copiat',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Està segur de que vol eliminar el mitjà seleccionat?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: 'Està segur de que vol eliminar el mitjà seleccionat?',
|
||||
fileTooLargeBody:
|
||||
'El fitxer és massa gran.\nLa configuració no permet fitxers més grans de %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -98,15 +98,15 @@ const cs: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Chcete opravdu opustit tuto stránku?',
|
||||
onUpdatingWithUnsavedChanges: 'Máte neuložené změny. Uložte je prosím před změnou statusu.',
|
||||
onPublishingNotReady: 'Změňte stav na „Připraveno“ před publikováním.',
|
||||
onPublishingWithUnsavedChanges: 'Máte neuložené změny, prosím uložte je před publikováním.',
|
||||
onPublishing: 'Chcete opravdu publikovat tento záznam?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody: 'Máte neuložené změny. Uložte je prosím před změnou statusu.',
|
||||
onPublishingNotReadyBody: 'Změňte stav na „Připraveno“ před publikováním.',
|
||||
onPublishingWithUnsavedChangesBody: 'Máte neuložené změny, prosím uložte je před publikováním.',
|
||||
onPublishingBody: 'Chcete opravdu publikovat tento záznam?',
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Chcete opravdu vymazat tento publikovaný záznam a všechny neuložené změny z této relace?',
|
||||
onDeletePublishedEntry: 'Chcete opravdu smazat tento publikovaný záznam?',
|
||||
onDeletePublishedEntryBody: 'Chcete opravdu smazat tento publikovaný záznam?',
|
||||
loadingEntry: 'Načítání záznamu…',
|
||||
confirmLoadBackup: 'Lokální kopie tohoto záznamu byla nalezena, chcete ji použít?',
|
||||
confirmLoadBackupBody: 'Lokální kopie tohoto záznamu byla nalezena, chcete ji použít?',
|
||||
},
|
||||
editorInterface: {
|
||||
toggleI18n: 'Přepnout lokalizaci',
|
||||
@ -197,8 +197,8 @@ const cs: LocalePhrasesRoot = {
|
||||
copied: 'Zkopírováno',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Chcete skutečně vymazat označená média?',
|
||||
fileTooLarge: 'Soubor je příliš velký.\nSoubor musí být menší než %{size} kB.',
|
||||
onDeleteBody: 'Chcete skutečně vymazat označená média?',
|
||||
fileTooLargeBody: 'Soubor je příliš velký.\nSoubor musí být menší než %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: 'Načítání…',
|
||||
|
@ -97,17 +97,17 @@ const da: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Er du sikker på at du vil forlade siden?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Du har ændringer der ikke er gemt, gem disse før status ændres.',
|
||||
onPublishingNotReady: 'Skift status til "Klar" inden publicering.',
|
||||
onPublishingWithUnsavedChanges: 'Du har ændringer der ikke er gemt, gem inden publicing.',
|
||||
onPublishing: 'Er du sikker på at du vil publicere dette dokument?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Skift status til "Klar" inden publicering.',
|
||||
onPublishingWithUnsavedChangesBody: 'Du har ændringer der ikke er gemt, gem inden publicing.',
|
||||
onPublishingBody: 'Er du sikker på at du vil publicere dette dokument?',
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Er du sikker på at du vil slette dette tidliere publiceret dokument, samt dine nuværende ugemte ændringer fra denne session?',
|
||||
onDeletePublishedEntry:
|
||||
onDeletePublishedEntryBody:
|
||||
'Er du sikker på at du vil slette dette tidliere publiceret dokument?',
|
||||
loadingEntry: 'Indlæser dokument...',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
'En lokal sikkerhedskopi blev gendannet for dette dokument, vil du anvende denne?',
|
||||
},
|
||||
editorToolbar: {
|
||||
@ -183,8 +183,8 @@ const da: LocalePhrasesRoot = {
|
||||
draft: 'Kladde',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Er du sikker på at du vil slette det valgte medie?',
|
||||
fileTooLarge: 'Filen er for stor.\nOpsætningen tillader ikke filer større end %{size} kB.',
|
||||
onDeleteBody: 'Er du sikker på at du vil slette det valgte medie?',
|
||||
fileTooLargeBody: 'Filen er for stor.\nOpsætningen tillader ikke filer større end %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: 'Indlæser...',
|
||||
|
@ -94,24 +94,24 @@ const de: LocalePhrasesRoot = {
|
||||
i18n: {
|
||||
writingInLocale: 'Aktuelle Sprache: %{locale}',
|
||||
copyFromLocale: 'Aus anderer Sprache übernehmen',
|
||||
copyFromLocaleConfirm:
|
||||
copyFromLocaleConfirmBody:
|
||||
'Wollen Sie wirklich die Daten aus der Sprache %{locale} übernehmen?\nAlle bishergen Inhalte werden überschrieben.',
|
||||
},
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Möchten Sie diese Seite wirklich verlassen?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Es sind noch ungespeicherte Änderungen vorhanden. Bitte speichern Sie diese, bevor Sie den Status aktualisieren.',
|
||||
onPublishingNotReady:
|
||||
onPublishingNotReadyBody:
|
||||
'Bitte setzten die den Status vor dem Veröffentlichen auf "Abgeschlossen".',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Es sind noch ungespeicherte Änderungen vorhanden. Bitte speicheren Sie vor dem Veröffentlichen.',
|
||||
onPublishing: 'Soll dieser Beitrag wirklich veröffentlicht werden?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onPublishingBody: 'Soll dieser Beitrag wirklich veröffentlicht werden?',
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Möchten Sie diesen veröffentlichten Beitrag, sowie Ihre nicht gespeicherten Änderungen löschen?',
|
||||
onDeletePublishedEntry: 'Soll dieser veröffentlichte Beitrag wirklich gelöscht werden?',
|
||||
onDeletePublishedEntryBody: 'Soll dieser veröffentlichte Beitrag wirklich gelöscht werden?',
|
||||
loadingEntry: 'Beitrag laden...',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
'Für diesen Beitrag ist ein lokales Backup vorhanden. Möchten Sie dieses benutzen?',
|
||||
},
|
||||
editorInterface: {
|
||||
@ -211,8 +211,8 @@ const de: LocalePhrasesRoot = {
|
||||
copied: 'Kopiert',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Soll das ausgewählte Medium wirklich gelöscht werden?',
|
||||
fileTooLarge: 'Datei zu groß.\nErlaubt sind nur Dateien bis %{size} kB.',
|
||||
onDeleteBody: 'Soll das ausgewählte Medium wirklich gelöscht werden?',
|
||||
fileTooLargeBody: 'Datei zu groß.\nErlaubt sind nur Dateien bis %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: 'Laden...',
|
||||
|
@ -82,18 +82,18 @@ const es: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: '¿Estás seguro de que quieres dejar esta página?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Tiene cambios no guardados, por favor, guárdelos antes de actualizar el estado.',
|
||||
onPublishingNotReady: 'Por favor, actualice el estado a "Ready" antes de publicar.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Por favor, actualice el estado a "Ready" antes de publicar.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Tiene cambios no guardados, por favor guárdelos antes de publicarlos.',
|
||||
onPublishing: '¿Estás seguro de que quieres publicar esta entrada?',
|
||||
onPublishingBody: '¿Estás seguro de que quieres publicar esta entrada?',
|
||||
onUnpublishing: '¿Estás seguro de que quieres retirar esta entrada?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'¿Está seguro de que desea eliminar esta entrada publicada, así como los cambios no guardados de la sesión actual?',
|
||||
onDeletePublishedEntry: '¿Estás seguro de que quieres borrar esta entrada publicada?',
|
||||
onDeletePublishedEntryBody: '¿Estás seguro de que quieres borrar esta entrada publicada?',
|
||||
loadingEntry: 'Cargando entrada...',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
'Se recuperó una copia de seguridad local para esta entrada, ¿le gustaría utilizarla?',
|
||||
},
|
||||
editorToolbar: {
|
||||
@ -161,8 +161,8 @@ const es: LocalePhrasesRoot = {
|
||||
draft: 'Borrador',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: '¿Está seguro de que desea eliminar el archivo seleccionado?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: '¿Está seguro de que desea eliminar el archivo seleccionado?',
|
||||
fileTooLargeBody:
|
||||
'Archivo muy pesado.\nConfigurado para no permitir archivos más pesados que %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -98,17 +98,17 @@ const fr: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Voulez-vous vraiment quitter cette page ?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Veuillez enregistrer vos modifications avant de mettre à jour le statut.',
|
||||
onPublishingNotReady: 'Veuillez mettre à jour le statut à "Prêt" avant de publier.',
|
||||
onPublishingWithUnsavedChanges: 'Veuillez enregistrer vos modifications avant de publier.',
|
||||
onPublishing: 'Voulez-vous vraiment publier cette entrée ?',
|
||||
onPublishingNotReadyBody: 'Veuillez mettre à jour le statut à "Prêt" avant de publier.',
|
||||
onPublishingWithUnsavedChangesBody: 'Veuillez enregistrer vos modifications avant de publier.',
|
||||
onPublishingBody: 'Voulez-vous vraiment publier cette entrée ?',
|
||||
onUnpublishing: 'Voulez-vous vraiment dépublier cette entrée ?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Voulez-vous vraiment supprimer cette entrée publiée ainsi que vos modifications non enregistrées de cette session ?',
|
||||
onDeletePublishedEntry: 'Voulez-vous vraiment supprimer cette entrée publiée ?',
|
||||
onDeletePublishedEntryBody: 'Voulez-vous vraiment supprimer cette entrée publiée ?',
|
||||
loadingEntry: "Chargement de l'entrée...",
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
"Une sauvegarde locale a été trouvée pour cette entrée. Voulez-vous l'utiliser ?",
|
||||
},
|
||||
editorInterface: {
|
||||
@ -206,8 +206,8 @@ const fr: LocalePhrasesRoot = {
|
||||
copied: 'Copié',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Voulez-vous vraiment supprimer la ressource sélectionné ?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: 'Voulez-vous vraiment supprimer la ressource sélectionné ?',
|
||||
fileTooLargeBody:
|
||||
"Le fichier est trop volumineux.\nL'instance est configurée pour bloquer les envois de plus de %{size} kB.",
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -66,20 +66,20 @@ const gr: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Είστε βέβαιοι ότι θέλετε να αφήσετε αυτήν τη σελίδα;',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Έχετε μη αποθηκευμένες αλλαγές, αποθηκεύστε πριν να ενημερώσετε την κατάσταση.',
|
||||
onPublishingNotReady: 'Ενημερώστε την κατάσταση σε "έτοιμο" πριν από τη δημοσίευση.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Ενημερώστε την κατάσταση σε "έτοιμο" πριν από τη δημοσίευση.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Έχετε μη αποθηκευμένες αλλαγές, αποθηκεύστε πριν από τη δημοσίευση.',
|
||||
onPublishing: 'Είστε βέβαιοι ότι θέλετε να δημοσιεύσετε αυτήν την καταχώρηση;',
|
||||
onPublishingBody: 'Είστε βέβαιοι ότι θέλετε να δημοσιεύσετε αυτήν την καταχώρηση;',
|
||||
onUnpublishing:
|
||||
'Είστε βέβαιοι ότι θέλετε να καταργήσετε τη δημοσίευση αυτής της καταχώρησης;',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτήν τη δημοσιευμένη καταχώρηση, καθώς και τις αλλαγές που δεν αποθηκεύσατε από την τρέχουσα περίοδο λειτουργίας;',
|
||||
onDeletePublishedEntry:
|
||||
onDeletePublishedEntryBody:
|
||||
'Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτήν τη δημοσιευμένη καταχώρηση;',
|
||||
loadingEntry: 'Φόρτωση εισόδου...',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
'Ανακτήθηκε ένα τοπικό αντίγραφο ασφαλείας για αυτήν την καταχώρηση, θέλετε να το χρησιμοποιήσετε;',
|
||||
},
|
||||
editorToolbar: {
|
||||
@ -140,8 +140,8 @@ const gr: LocalePhrasesRoot = {
|
||||
draft: 'Προσχέδιο',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Είστε βέβαιοι ότι θέλετε να διαγράψετε τα επιλεγμένα πολυμέσα;',
|
||||
fileTooLarge:
|
||||
onDeleteBody: 'Είστε βέβαιοι ότι θέλετε να διαγράψετε τα επιλεγμένα πολυμέσα;',
|
||||
fileTooLargeBody:
|
||||
'Το αρχείο είναι πολύ μεγάλο.\nΔεν επιτρέπονται αρχεία μεγαλύτερα από %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -97,16 +97,16 @@ const he: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'האם ברצונך לעבור לעמוד אחר ללא שמירה?',
|
||||
onUpdatingWithUnsavedChanges: 'בוצעו שינויים שלא נשמרו. יש לבצע שמירה לפני עדכון מצב האייטם.',
|
||||
onPublishingNotReady: 'נא לשנות את מצב האייטם ל״מוכן לפרסום״ לפני הפרסום.',
|
||||
onPublishingWithUnsavedChanges: 'בוצעו שינויים שלא נשמרו. יש לבצע שמירה לפני הפרסום.',
|
||||
onPublishing: 'האם ברצונך לפרסם את האייטם?',
|
||||
onUpdatingWithUnsavedChangesBody: 'בוצעו שינויים שלא נשמרו. יש לבצע שמירה לפני עדכון מצב האייטם.',
|
||||
onPublishingNotReadyBody: 'נא לשנות את מצב האייטם ל״מוכן לפרסום״ לפני הפרסום.',
|
||||
onPublishingWithUnsavedChangesBody: 'בוצעו שינויים שלא נשמרו. יש לבצע שמירה לפני הפרסום.',
|
||||
onPublishingBody: 'האם ברצונך לפרסם את האייטם?',
|
||||
onUnpublishing: 'האם ברצונך לבטל את פרסום האייטם?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'האם ברצונך למחוק את האייטם הזה לפני פרסומו, וכן את השינויים שבוצעו כעת וטרם נשמרו?',
|
||||
onDeletePublishedEntry: 'האם ברצונך למחוק את האייטם הזה לאחר פרסומו?',
|
||||
onDeletePublishedEntryBody: 'האם ברצונך למחוק את האייטם הזה לאחר פרסומו?',
|
||||
loadingEntry: 'טעינת אייטם...',
|
||||
confirmLoadBackup: 'קיים עותק מקומי שמור של האייטם. האם ברצונך לטעון אותו?',
|
||||
confirmLoadBackupBody: 'קיים עותק מקומי שמור של האייטם. האם ברצונך לטעון אותו?',
|
||||
},
|
||||
editorInterface: {
|
||||
toggleI18n: 'החלפת שפות',
|
||||
@ -207,8 +207,8 @@ const he: LocalePhrasesRoot = {
|
||||
copied: 'העתקה הושלמה',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'האם ברצונך למחוק את פריט המדיה הזה?',
|
||||
fileTooLarge: 'הקובץ גדול מדי.\nמוגדר לא לאפשר העלאת קבצים גדולים מ-%{size} קילובייט.',
|
||||
onDeleteBody: 'האם ברצונך למחוק את פריט המדיה הזה?',
|
||||
fileTooLargeBody: 'הקובץ גדול מדי.\nמוגדר לא לאפשר העלאת קבצים גדולים מ-%{size} קילובייט.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: 'טעינה...',
|
||||
|
@ -97,18 +97,18 @@ const hr: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Jeste li sigurni da želite napustiti stranicu?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Imate nespremljene promjene, molimo spremite prije ažuriranja statusa.',
|
||||
onPublishingNotReady: 'Molimo ažurirajte status na "Spremno" prije objavljivanja.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Molimo ažurirajte status na "Spremno" prije objavljivanja.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Imate nespremljene promjene, molimo spremite prije objavljivanja.',
|
||||
onPublishing: 'Jeste li sigurni da želite objaviti ovaj unos?',
|
||||
onPublishingBody: 'Jeste li sigurni da želite objaviti ovaj unos?',
|
||||
onUnpublishing: 'Jeste li sigurni da želite maknuti objavu za ovaj unos?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Jeste li sigurni da želite obrisati objavljeni unos, te nespremljene promjene u trenutnoj sesiji?',
|
||||
onDeletePublishedEntry: 'Jeste li sigurni da želite obrisati ovaj objavljeni unos?',
|
||||
onDeletePublishedEntryBody: 'Jeste li sigurni da želite obrisati ovaj objavljeni unos?',
|
||||
loadingEntry: 'Učitavanje unosa...',
|
||||
confirmLoadBackup: 'Lokalna kopija je dohvaćena za ovaj unos, želite li ju koristiti?',
|
||||
confirmLoadBackupBody: 'Lokalna kopija je dohvaćena za ovaj unos, želite li ju koristiti?',
|
||||
},
|
||||
editorToolbar: {
|
||||
publishing: 'Objavljivanje...',
|
||||
@ -185,8 +185,8 @@ const hr: LocalePhrasesRoot = {
|
||||
draft: 'Skica',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Jeste li sigurni da želite obrisati odabrane medijske datoteke?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: 'Jeste li sigurni da želite obrisati odabrane medijske datoteke?',
|
||||
fileTooLargeBody:
|
||||
'Datoteka prevelika.\nKonfigurirano da ne podržava datoteke veće od %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -52,18 +52,18 @@ const hu: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Biztos hogy el akarod hagyni az oldalt?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Mentettlen változtatások vannak, kérjük, mentse az állapot frissítése előtt.',
|
||||
onPublishingNotReady: 'Változtasd az állapotot "Kész"-re publikálás előtt.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Változtasd az állapotot "Kész"-re publikálás előtt.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Mentetlen változtatások vannak, kérjük, mentsen a publikálás előtt.',
|
||||
onPublishing: 'Publikálod ezt a bejegyzést?',
|
||||
onPublishingBody: 'Publikálod ezt a bejegyzést?',
|
||||
onUnpublishing: 'Publikálás visszavonása erre a bejegyzésre?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Töröljük ezt a publikált bejegyzést, a többi mentetlen modositással együtt?',
|
||||
onDeletePublishedEntry: 'Töröljük ezt a publikált bejegyzést?',
|
||||
onDeletePublishedEntryBody: 'Töröljük ezt a publikált bejegyzést?',
|
||||
loadingEntry: 'Bejegyzés betöltése...',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
'Helyi biztonsági másolat került helyre ehhez a bejegyzéshez, szeretné használni?',
|
||||
},
|
||||
editorToolbar: {
|
||||
@ -128,7 +128,7 @@ const hu: LocalePhrasesRoot = {
|
||||
draft: 'Piszkozat',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Biztos törli a kiválasztott média tartalmat?',
|
||||
onDeleteBody: 'Biztos törli a kiválasztott média tartalmat?',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: 'Betöltés...',
|
||||
|
@ -66,18 +66,18 @@ const it: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Sei sicuro di voler lasciare questa pagina?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Hai delle modifiche non salvate, salvale prima di aggiornare lo status.',
|
||||
onPublishingNotReady: 'Aggiorna lo status a "Pronto" prima di pubblicare.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Aggiorna lo status a "Pronto" prima di pubblicare.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Hai delle modifiche non salvate, salvale prima di pubblicare.',
|
||||
onPublishing: 'Sei sicuro di voler pubblicare questa voce?',
|
||||
onPublishingBody: 'Sei sicuro di voler pubblicare questa voce?',
|
||||
onUnpublishing: 'Sei sicuro di voler nascondere questa voce?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Sei sicuro di voler cancellare questa voce pubblicata e tutte le modifiche non salvate della tua sessione corrente?',
|
||||
onDeletePublishedEntry: 'Sei sicuro di voler cancellare questa voce pubblicata?',
|
||||
onDeletePublishedEntryBody: 'Sei sicuro di voler cancellare questa voce pubblicata?',
|
||||
loadingEntry: 'Caricando la voce...',
|
||||
confirmLoadBackup: 'Un backup locale è stato recuperato per questa voce, vuoi utilizzarlo?',
|
||||
confirmLoadBackupBody: 'Un backup locale è stato recuperato per questa voce, vuoi utilizzarlo?',
|
||||
},
|
||||
editorToolbar: {
|
||||
publishing: 'Pubblicando...',
|
||||
@ -137,8 +137,8 @@ const it: LocalePhrasesRoot = {
|
||||
draft: 'Bozza',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Sei sicuro di voler cancellare il media selezionato?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: 'Sei sicuro di voler cancellare il media selezionato?',
|
||||
fileTooLargeBody:
|
||||
'File troppo grande.\nConfigurato per non accettare file piú grandi di %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -97,17 +97,17 @@ const ja: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'このページから遷移しますか?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'変更した項目があります。ステータスを更新する前に保存してください。',
|
||||
onPublishingNotReady: '公開する前に、ステータスを「準備完了」に更新してください。',
|
||||
onPublishingWithUnsavedChanges: '変更した項目があります。公開する前に保存してください。',
|
||||
onPublishing: 'このエントリを公開しますか?',
|
||||
onPublishingNotReadyBody: '公開する前に、ステータスを「準備完了」に更新してください。',
|
||||
onPublishingWithUnsavedChangesBody: '変更した項目があります。公開する前に保存してください。',
|
||||
onPublishingBody: 'このエントリを公開しますか?',
|
||||
onUnpublishing: 'このエントリを未公開にしますか?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'保存されていない変更も削除されますが、この公開エントリを削除しますか?',
|
||||
onDeletePublishedEntry: 'この公開エントリを削除しますか?',
|
||||
onDeletePublishedEntryBody: 'この公開エントリを削除しますか?',
|
||||
loadingEntry: 'エントリの読込中...',
|
||||
confirmLoadBackup: 'ローカルのバックアップが復旧できました。利用しますか?',
|
||||
confirmLoadBackupBody: 'ローカルのバックアップが復旧できました。利用しますか?',
|
||||
},
|
||||
editorInterface: {
|
||||
toggleI18n: '言語を切り替える',
|
||||
@ -204,8 +204,8 @@ const ja: LocalePhrasesRoot = {
|
||||
copied: 'コピーしました',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: '選択しているデータを削除しますか?',
|
||||
fileTooLarge: 'ファイルサイズが大きすぎます。\n%{size} kB 以下にしてください。',
|
||||
onDeleteBody: '選択しているデータを削除しますか?',
|
||||
fileTooLargeBody: 'ファイルサイズが大きすぎます。\n%{size} kB 以下にしてください。',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: '読込中...',
|
||||
|
@ -89,18 +89,18 @@ const ko: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: '이 페이지를 떠나시겠습니까?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'저장하지 않은 변경사항이 있습니다. 상태 업데이트 전 먼저 저장하세요.',
|
||||
onPublishingNotReady: '게시 하기 앞서 상태를 "준비됨" 으로 업데이트 하세요.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: '게시 하기 앞서 상태를 "준비됨" 으로 업데이트 하세요.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'저장하지 않은 변경사항이 있습니다, 게시하기 전 먼저 저장하세요.',
|
||||
onPublishing: '이 항목을 게시하시곘습니까?',
|
||||
onPublishingBody: '이 항목을 게시하시곘습니까?',
|
||||
onUnpublishing: '이 항목을 게시 철회 하시겠습니까?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'현재 세션에서의 저장되지 않은 변경사항과 이 게시된 항목을 삭제하시겠습니까?',
|
||||
onDeletePublishedEntry: '이 게시된 항목을 삭제하시겠습니까?',
|
||||
onDeletePublishedEntryBody: '이 게시된 항목을 삭제하시겠습니까?',
|
||||
loadingEntry: '항목 불러오는 중...',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
'이 항목에 대한 로컬 백업이 복구되었습니다, 복구된 것으로 사용하시겠습니까?',
|
||||
},
|
||||
editorToolbar: {
|
||||
@ -168,8 +168,8 @@ const ko: LocalePhrasesRoot = {
|
||||
draft: '초안',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: '선택하신 미디어를 삭제하시겠습니까?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: '선택하신 미디어를 삭제하시겠습니까?',
|
||||
fileTooLargeBody:
|
||||
'파일이 너무 큽니다.\n%{size} kB 보다 큰 파일을 허용하지 않도록 구성되어 있습니다.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -98,18 +98,18 @@ const lt: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Ar tikrai norite uždaryti šį puslapį?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Turite neišsaugotų pakeitimų! Prašome išsaugoti prieš pakeičiant statusą.',
|
||||
onPublishingNotReady: 'Prieš publikuojant, privalote pakeisti statusą į „Paruošta“.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Prieš publikuojant, privalote pakeisti statusą į „Paruošta“.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Yra neišsaugotų pakeitimų, prašome išsaugoti juos prieš publikuojant.',
|
||||
onPublishing: 'Ae tikrai norite publikuoti šį įrašą?',
|
||||
onPublishingBody: 'Ae tikrai norite publikuoti šį įrašą?',
|
||||
onUnpublishing: 'Tikrai norite panaikinti publikavimo statusą?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Tikrai norite panaikinti publikuotą įrašą ir Jūsų pakeiitmus iš dabartinės sesijos?',
|
||||
onDeletePublishedEntry: 'Tikrai norite ištrinti šį publikuotą įrašą?',
|
||||
onDeletePublishedEntryBody: 'Tikrai norite ištrinti šį publikuotą įrašą?',
|
||||
loadingEntry: 'Kraunamas įrašas...',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
'Radome Jūsų įrenginyje išsaugota juodraštį šiam įrašui, ar norite jį atgaivinti ir naudoti?',
|
||||
},
|
||||
editorToolbar: {
|
||||
@ -187,8 +187,8 @@ const lt: LocalePhrasesRoot = {
|
||||
draft: 'Juodraštis',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Ar jūs tikrai norite ištrinti pasirinktą mediją?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: 'Ar jūs tikrai norite ištrinti pasirinktą mediją?',
|
||||
fileTooLargeBody:
|
||||
'Failas per didelis.\nNustatymuose (konfigūracijoje) nurodyta, kad failai negali viršyti %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -82,16 +82,16 @@ const nb_no: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Er du sikker på du vil navigere bort fra denne siden?',
|
||||
onUpdatingWithUnsavedChanges: 'Du må lagre endringene dine før du oppdaterer status.',
|
||||
onPublishingNotReady: 'Du må endre status til "Klar" før du publiserer.',
|
||||
onPublishingWithUnsavedChanges: 'Du må lagre endringene dine før du kan publisere.',
|
||||
onPublishing: 'Er du sikker på at du vil publisere?',
|
||||
onUpdatingWithUnsavedChangesBody: 'Du må lagre endringene dine før du oppdaterer status.',
|
||||
onPublishingNotReadyBody: 'Du må endre status til "Klar" før du publiserer.',
|
||||
onPublishingWithUnsavedChangesBody: 'Du må lagre endringene dine før du kan publisere.',
|
||||
onPublishingBody: 'Er du sikker på at du vil publisere?',
|
||||
onUnpublishing: 'Er du sikker på at du vil avpublisere innlegget?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Er du sikker på at du vil slette et publisert innlegg med tilhørende ulagrede endringer?',
|
||||
onDeletePublishedEntry: 'Er du sikker på at du vil slette dette publiserte innlegget?',
|
||||
onDeletePublishedEntryBody: 'Er du sikker på at du vil slette dette publiserte innlegget?',
|
||||
loadingEntry: 'Laster innlegg...',
|
||||
confirmLoadBackup: 'Vil du gjenopprette tidligere endringer som ikke har blitt lagret?',
|
||||
confirmLoadBackupBody: 'Vil du gjenopprette tidligere endringer som ikke har blitt lagret?',
|
||||
},
|
||||
editorToolbar: {
|
||||
publishing: 'Publiserer...',
|
||||
@ -158,8 +158,8 @@ const nb_no: LocalePhrasesRoot = {
|
||||
draft: 'Kladd',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Er du sikker på at du vil slette markert element?',
|
||||
fileTooLarge: 'Filen er for stor.\nMaksimal konfiguert filstørrelse er %{size} kB.',
|
||||
onDeleteBody: 'Er du sikker på at du vil slette markert element?',
|
||||
fileTooLargeBody: 'Filen er for stor.\nMaksimal konfiguert filstørrelse er %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: 'Laster...',
|
||||
|
@ -95,18 +95,18 @@ const nl: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Weet je zeker dat je deze pagina wilt verlaten?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Er zijn nog niet-opgeslagen wijzigingen. Bewaar ze voordat u de status bijwerkt.',
|
||||
onPublishingNotReady: 'Stel de status in op "Voltooid" voordat u publiceert.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Stel de status in op "Voltooid" voordat u publiceert.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Er zijn nog niet-opgeslagen wijzigingen. Bewaar deze voordat u publiceert.',
|
||||
onPublishing: 'Weet u zeker dat u dit item wil publiceren?',
|
||||
onPublishingBody: 'Weet u zeker dat u dit item wil publiceren?',
|
||||
onUnpublishing: 'Weet u zeker dat u de publicatie voor dit item ongedaan wilt maken?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Weet u zeker dat u dit gepubliceerde item en uw niet-opgeslagen wijzigingen uit de huidige sessie wilt verwijderen?',
|
||||
onDeletePublishedEntry: 'Weet u zeker dat u dit gepubliceerde item wilt verwijderen?',
|
||||
onDeletePublishedEntryBody: 'Weet u zeker dat u dit gepubliceerde item wilt verwijderen?',
|
||||
loadingEntry: 'Item laden...',
|
||||
confirmLoadBackup: 'Voor dit item is een lokale back-up hersteld, wilt u deze gebruiken?',
|
||||
confirmLoadBackupBody: 'Voor dit item is een lokale back-up hersteld, wilt u deze gebruiken?',
|
||||
},
|
||||
editorInterface: {
|
||||
toggleI18n: 'Wissel i18n',
|
||||
@ -202,8 +202,8 @@ const nl: LocalePhrasesRoot = {
|
||||
copied: 'Gekopieerd',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Weet u zeker dat u de geselecteerde media wilt verwijderen?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: 'Weet u zeker dat u de geselecteerde media wilt verwijderen?',
|
||||
fileTooLargeBody:
|
||||
'Het bestand is te groot.\n De instellingen staan geen bestanden toe groter dan %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -82,16 +82,16 @@ const nn_no: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Er du sikker på at du vil navigere bort frå denne sida?',
|
||||
onUpdatingWithUnsavedChanges: 'Du må lagra endringane dine før du endrar status',
|
||||
onPublishingNotReady: 'Du må endre status til "Klar" før du publiserer',
|
||||
onPublishingWithUnsavedChanges: 'Du må laga endringane dine før du kan publisere.',
|
||||
onPublishing: 'Er du sikker på at vil publisere?',
|
||||
onUpdatingWithUnsavedChangesBody: 'Du må lagra endringane dine før du endrar status',
|
||||
onPublishingNotReadyBody: 'Du må endre status til "Klar" før du publiserer',
|
||||
onPublishingWithUnsavedChangesBody: 'Du må laga endringane dine før du kan publisere.',
|
||||
onPublishingBody: 'Er du sikker på at vil publisere?',
|
||||
onUnpublishing: 'Er du sikker på at du vil avpublisere innlegget?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Er du sikkert på at du vil slette eit publisert innlegg med tilhøyrande ulagra endringar?',
|
||||
onDeletePublishedEntry: 'Er du sikker på at du vil slette dette publiserte innlegget?',
|
||||
onDeletePublishedEntryBody: 'Er du sikker på at du vil slette dette publiserte innlegget?',
|
||||
loadingEntry: 'Lastar innlegg...',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
'Ynskjer du å gjennopprette tidlegare endringar som ikkje har verta lagra?',
|
||||
},
|
||||
editorToolbar: {
|
||||
@ -159,8 +159,8 @@ const nn_no: LocalePhrasesRoot = {
|
||||
draft: 'Kladd',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Er du sikker på at du vil slette markert element?',
|
||||
fileTooLarge: 'Fila er for stor.\nMaksimal konfiguert filstorleik er %{size} kB.',
|
||||
onDeleteBody: 'Er du sikker på at du vil slette markert element?',
|
||||
fileTooLargeBody: 'Fila er for stor.\nMaksimal konfiguert filstorleik er %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: 'Lastar...',
|
||||
|
@ -97,17 +97,17 @@ const pl: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Czy na pewno chcesz opuścić tę stronę?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Masz niezapisane zmiany, proszę zapisz je przed aktualizacją statusu.',
|
||||
onPublishingNotReady: 'Proszę zaktualizować status do "Gotowe" przed publikacją.',
|
||||
onPublishingWithUnsavedChanges: 'Masz niezapisane zmiany, proszę zapisz je przed publikacją.',
|
||||
onPublishing: 'Czy na pewno chcesz opublikować tę pozycję?',
|
||||
onPublishingNotReadyBody: 'Proszę zaktualizować status do "Gotowe" przed publikacją.',
|
||||
onPublishingWithUnsavedChangesBody: 'Masz niezapisane zmiany, proszę zapisz je przed publikacją.',
|
||||
onPublishingBody: 'Czy na pewno chcesz opublikować tę pozycję?',
|
||||
onUnpublishing: 'Czy na pewno chcesz cofnąć publikację tej pozycji?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Czy na pewno chcesz usunąć tę opublikowaną pozycję, a także niezapisane zmiany z bieżącej sesji?',
|
||||
onDeletePublishedEntry: 'Czy na pewno chcesz usunąć tę opublikowaną pozycję?',
|
||||
onDeletePublishedEntryBody: 'Czy na pewno chcesz usunąć tę opublikowaną pozycję?',
|
||||
loadingEntry: 'Ładowanie pozycji...',
|
||||
confirmLoadBackup: 'Odzyskano lokalną kopię zapasową tej pozycji, czy chcesz jej użyć?',
|
||||
confirmLoadBackupBody: 'Odzyskano lokalną kopię zapasową tej pozycji, czy chcesz jej użyć?',
|
||||
},
|
||||
editorInterface: {
|
||||
toggleI18n: 'Przełącz i18n',
|
||||
@ -208,8 +208,8 @@ const pl: LocalePhrasesRoot = {
|
||||
copied: 'Skopiowano',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Czy na pewno chcesz usunąć zaznaczone multimedia?',
|
||||
fileTooLarge: 'Plik jest za duży.\nUstawiony maksymalny rozmiar pliku: %{size} kB.',
|
||||
onDeleteBody: 'Czy na pewno chcesz usunąć zaznaczone multimedia?',
|
||||
fileTooLargeBody: 'Plik jest za duży.\nUstawiony maksymalny rozmiar pliku: %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: 'Ładowanie...',
|
||||
|
@ -97,18 +97,18 @@ const pt: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Tem certeza que deseja sair desta página?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Há mudanças não salvas. Por favor, salve-as antes de atualizar o status.',
|
||||
onPublishingNotReady: 'Por favor, altere o status para "Pronto" antes de publicar.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Por favor, altere o status para "Pronto" antes de publicar.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Há mudanças não salvas. Por favor, salve-as antes de publicar.',
|
||||
onPublishing: 'Tem certeza que deseja publicar essa entrada?',
|
||||
onPublishingBody: 'Tem certeza que deseja publicar essa entrada?',
|
||||
onUnpublishing: 'Tem certeza que deseja cancelar a publicação dessa entrada?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Tem certeza de que deseja excluir esta entrada publicada, bem como as alterações não salvas da sessão atual?',
|
||||
onDeletePublishedEntry: 'Tem certeza de que deseja excluir esta entrada publicada?',
|
||||
onDeletePublishedEntryBody: 'Tem certeza de que deseja excluir esta entrada publicada?',
|
||||
loadingEntry: 'Carregando entrada...',
|
||||
confirmLoadBackup: 'Um backup local foi recuperado para esta entrada. Deseja usá-lo?',
|
||||
confirmLoadBackupBody: 'Um backup local foi recuperado para esta entrada. Deseja usá-lo?',
|
||||
},
|
||||
editorInterface: {
|
||||
toggleI18n: 'Mudar i18n',
|
||||
@ -209,8 +209,8 @@ const pt: LocalePhrasesRoot = {
|
||||
copied: 'Copiado',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Tem certeza de que deseja excluir a mídia selecionada?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: 'Tem certeza de que deseja excluir a mídia selecionada?',
|
||||
fileTooLargeBody:
|
||||
'Arquivo muito grande.\nConfigurado para não permitir arquivos maiores que %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -97,18 +97,18 @@ const ro: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Ești sigur/ă că dorești să părăsești pagina?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Există modificări nesalvate! Te rugăm salvează înainte de a actualiza statusul.',
|
||||
onPublishingNotReady: 'Actualizează statusul la „Gata” înainte de publicare.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Actualizează statusul la „Gata” înainte de publicare.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Există modificări nesalvate, salvează-le înainte de publicare.',
|
||||
onPublishing: 'Ești sigur/ă că dorești să publici acest articol?',
|
||||
onPublishingBody: 'Ești sigur/ă că dorești să publici acest articol?',
|
||||
onUnpublishing: 'Ești sigur/ă că dorești să anulezi publicarea acestui articol?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Ești sigur/ă că dorești să ștergi această publicare, dar și modificările nesalvate din sesiunea curentă?',
|
||||
onDeletePublishedEntry: 'Ești sigur/ă că dorești să ștergi această publicare?',
|
||||
onDeletePublishedEntryBody: 'Ești sigur/ă că dorești să ștergi această publicare?',
|
||||
loadingEntry: 'Se încarcă...',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
'Un backup local a fost recuperat pentru această intrare, dorești să îl folosești?',
|
||||
},
|
||||
editorInterface: {
|
||||
@ -202,8 +202,8 @@ const ro: LocalePhrasesRoot = {
|
||||
copied: 'Copiat',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Ești sigur/ă că dorești să ștergi fișierul selectat?',
|
||||
fileTooLarge: 'Fișier prea mare.\nConfigurarea nu permite fișiere mai mari de %{size} KB.',
|
||||
onDeleteBody: 'Ești sigur/ă că dorești să ștergi fișierul selectat?',
|
||||
fileTooLargeBody: 'Fișier prea mare.\nConfigurarea nu permite fișiere mai mari de %{size} KB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: 'Se încarcă...',
|
||||
|
@ -97,18 +97,18 @@ const ru: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Вы уверены, что хотите покинуть эту страницу?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'У вас есть несохраненные изменения, сохраните их перед обновлением статуса.',
|
||||
onPublishingNotReady: 'Пожалуйста, измените статус на «Готов» перед публикацией.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Пожалуйста, измените статус на «Готов» перед публикацией.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'У вас есть несохраненные изменения, сохраните их перед публикацией.',
|
||||
onPublishing: 'Вы уверены, что хотите опубликовать эту запись?',
|
||||
onPublishingBody: 'Вы уверены, что хотите опубликовать эту запись?',
|
||||
onUnpublishing: 'Вы уверены, что хотите отменить публикацию этой записи?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Вы уверены, что хотите удалить эту опубликованную запись, а также несохраненные изменения из текущего сеанса?',
|
||||
onDeletePublishedEntry: 'Вы уверены, что хотите удалить эту опубликованную запись?',
|
||||
onDeletePublishedEntryBody: 'Вы уверены, что хотите удалить эту опубликованную запись?',
|
||||
loadingEntry: 'Загрузка записи…',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
'Для этой записи была восстановлена локальная резервная копия, хотите ли вы ее использовать?',
|
||||
},
|
||||
editorToolbar: {
|
||||
@ -197,8 +197,8 @@ const ru: LocalePhrasesRoot = {
|
||||
copied: 'Скопировано',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Вы уверены, что хотите удалить выбранный медиафайл?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: 'Вы уверены, что хотите удалить выбранный медиафайл?',
|
||||
fileTooLargeBody:
|
||||
'Файл слишком большой.\nНастройки не позволяют сохранять файлы более %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -97,18 +97,18 @@ const sv: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Är du säker på att du vill lämna sidan?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Du har osparade ändringar, vänligen spara dem innan du uppdaterar status.',
|
||||
onPublishingNotReady: 'Vänligen uppdatera status till "Redo" innan du publicerar.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Vänligen uppdatera status till "Redo" innan du publicerar.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Du har osparade ändringar, vänligen spara innan du publicerar.',
|
||||
onPublishing: 'Är du säker på att du vill publicera det här inlägget?',
|
||||
onPublishingBody: 'Är du säker på att du vill publicera det här inlägget?',
|
||||
onUnpublishing: 'Är du säker på att du vill avpublicera det här inlägget?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Är du säker på att du vill radera det här publicerade inlägget, inklusive dina osparade ändringar från nuvarande session?',
|
||||
onDeletePublishedEntry: 'Är du säker på att du vill radera det här publicerade inlägget?',
|
||||
onDeletePublishedEntryBody: 'Är du säker på att du vill radera det här publicerade inlägget?',
|
||||
loadingEntry: 'Hämtar inlägg...',
|
||||
confirmLoadBackup: 'En lokal kopia hittades för det här inlägget, vill du använda den?',
|
||||
confirmLoadBackupBody: 'En lokal kopia hittades för det här inlägget, vill du använda den?',
|
||||
},
|
||||
editorInterface: {
|
||||
toggleI18n: 'Slå på/av i18n',
|
||||
@ -201,8 +201,8 @@ const sv: LocalePhrasesRoot = {
|
||||
copied: 'Kopierad',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Är du säker på att du vill radera valt mediaobjekt?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: 'Är du säker på att du vill radera valt mediaobjekt?',
|
||||
fileTooLargeBody:
|
||||
'Maximal filstorlek överskriden.\nKonfigurerad att inte tillåta filer större än %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -92,18 +92,18 @@ const th: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'คุณแน่ใจหรือว่าจะออกจากหน้านี้?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'คุณมีการเปลี่ยนแปลงที่ยังไม่ได้บันทึก โปรดบันทึกก่อนอัปเดตสถานะ',
|
||||
onPublishingNotReady: 'โปรดอัปเดตสถานะเป็น "พร้อม" ก่อนจะเผยแพร่',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'โปรดอัปเดตสถานะเป็น "พร้อม" ก่อนจะเผยแพร่',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'คุณมีการเปลี่ยนแปลงที่ยังไม่ได้บันทึก โปรดบันทึกก่อนจะเผยแพร่',
|
||||
onPublishing: 'คุณแน่ใจหรือว่าจะเผยแพร่เนื้อหานี้?',
|
||||
onPublishingBody: 'คุณแน่ใจหรือว่าจะเผยแพร่เนื้อหานี้?',
|
||||
onUnpublishing: 'คุณแน่ใจหรือว่าจะไม่ต้องการเผยแพร่เนื้อหานี้?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'คุณแน่ใจหรือว่าจะต้องการลบการเผยแพร่เนื้อหานี้ รวมถึงการเปลี่ยนแปลงที่ยังไม่ได้บันทึก?',
|
||||
onDeletePublishedEntry: 'คุณแน่ใจหรือว่าจะต้องการลบการเผยแพร่เนื้อหานี้?',
|
||||
onDeletePublishedEntryBody: 'คุณแน่ใจหรือว่าจะต้องการลบการเผยแพร่เนื้อหานี้?',
|
||||
loadingEntry: 'กำลังโหลดเนื้อหา...',
|
||||
confirmLoadBackup: 'ข้อมูลสำรองได้ถูกกู้คืนสำหรับเนื้อหานี้ คุณต้องการใช้มันไหม?',
|
||||
confirmLoadBackupBody: 'ข้อมูลสำรองได้ถูกกู้คืนสำหรับเนื้อหานี้ คุณต้องการใช้มันไหม?',
|
||||
},
|
||||
editorToolbar: {
|
||||
publishing: 'กำลังเผยแพร่...',
|
||||
@ -170,8 +170,8 @@ const th: LocalePhrasesRoot = {
|
||||
draft: 'ร่าง',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'คุณแน่ใจหรือว่าจะลบมีเดียที่ถูกเลือก?',
|
||||
fileTooLarge: 'ไฟล์ใหญ่เกินไป\n ค่าที่ตั้งไว้ไม่ยอมรับไฟล์ที่ใหญ่กว่า %{size} kB.',
|
||||
onDeleteBody: 'คุณแน่ใจหรือว่าจะลบมีเดียที่ถูกเลือก?',
|
||||
fileTooLargeBody: 'ไฟล์ใหญ่เกินไป\n ค่าที่ตั้งไว้ไม่ยอมรับไฟล์ที่ใหญ่กว่า %{size} kB.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: 'กำลังโหลด...',
|
||||
|
@ -95,24 +95,24 @@ const tr: LocalePhrasesRoot = {
|
||||
i18n: {
|
||||
writingInLocale: '%{locale} için yazılıyor',
|
||||
copyFromLocale: 'Başka bir dilden doldurun',
|
||||
copyFromLocaleConfirm:
|
||||
copyFromLocaleConfirmBody:
|
||||
'Verileri %{locale} dilinden mi doldurmak istiyorsun?\nVarolan bütün verilerin üzerine yazılacak.',
|
||||
},
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Bu sayfadan ayrılmak istediğinize emin misiniz?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Kaydedilmemiş değişiklikleriniz var, lütfen içeriği güncellemeden önce kaydedin.',
|
||||
onPublishingNotReady: 'Lütfen yayınlamadan önce içeriği "Hazır" olarak güncelleyin.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Lütfen yayınlamadan önce içeriği "Hazır" olarak güncelleyin.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Kaydedilmemiş değişiklikleriniz var, lütfen yayınlamadan önce kaydedin.',
|
||||
onPublishing: 'Bu girdiyi yayınlamak istediğinize emin misiniz?',
|
||||
onPublishingBody: 'Bu girdiyi yayınlamak istediğinize emin misiniz?',
|
||||
onUnpublishing: 'Bu girdiyi yayından kaldırmak istediğinizden emin misiniz?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Bu oturumda kaydedilmiş değişikliklerin yanı sıra geçerli oturumdaki kaydedilmemiş değişikliklerinizi silmek istediğinize emin misiniz?',
|
||||
onDeletePublishedEntry: 'Bu yayınlanmış girdiyi silmek istediğinize emin misiniz?',
|
||||
onDeletePublishedEntryBody: 'Bu yayınlanmış girdiyi silmek istediğinize emin misiniz?',
|
||||
loadingEntry: 'Girdiler yükleniyor...',
|
||||
confirmLoadBackup: 'Bu girdi için yerel bir yedekleme kurtarıldı, kullanmak ister misiniz?',
|
||||
confirmLoadBackupBody: 'Bu girdi için yerel bir yedekleme kurtarıldı, kullanmak ister misiniz?',
|
||||
},
|
||||
editorInterface: {
|
||||
toggleI18n: 'i18n değiştir',
|
||||
@ -213,8 +213,8 @@ const tr: LocalePhrasesRoot = {
|
||||
copied: 'Kopyalandı',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Seçilen medyayı silmek istediğinize emin misiniz?',
|
||||
fileTooLarge:
|
||||
onDeleteBody: 'Seçilen medyayı silmek istediğinize emin misiniz?',
|
||||
fileTooLargeBody:
|
||||
'Dosya çok büyük.\n%{size} kilobaytdan daha büyük dosyaların yüklenmemesi için ayarlanmış.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
|
@ -52,17 +52,17 @@ const uk: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Ви дійсно бажаєте залишити сторінку?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Присутні незбережені зміни, будь ласка збережіть перед зміною статусу.',
|
||||
onPublishingNotReady: 'Будь ласка, встановіть статус "Готово" перед публікацією.',
|
||||
onPublishingWithUnsavedChanges:
|
||||
onPublishingNotReadyBody: 'Будь ласка, встановіть статус "Готово" перед публікацією.',
|
||||
onPublishingWithUnsavedChangesBody:
|
||||
'Присутні незбережені зміни, будь ласка збережіть їх перед публікацією.',
|
||||
onPublishing: 'Ви дійсно бажаєте опублікувати запис?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
onPublishingBody: 'Ви дійсно бажаєте опублікувати запис?',
|
||||
onDeleteWithUnsavedChangesBody:
|
||||
'Ви дійсно бажаєте видалити опублікований запис, як і всі незбережені зміни під час поточної сесії?',
|
||||
onDeletePublishedEntry: 'Ви дійсно бажаєте видалити опублікований запис?',
|
||||
onDeletePublishedEntryBody: 'Ви дійсно бажаєте видалити опублікований запис?',
|
||||
loadingEntry: 'Завантаження...',
|
||||
confirmLoadBackup: 'Відновлено резервну копію, бажаєте її використати?',
|
||||
confirmLoadBackupBody: 'Відновлено резервну копію, бажаєте її використати?',
|
||||
},
|
||||
editorToolbar: {
|
||||
publishing: 'Публікація...',
|
||||
@ -118,7 +118,7 @@ const uk: LocalePhrasesRoot = {
|
||||
draft: 'В роботі',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Ви дійсно бажаєте видалити обрані матеріали?',
|
||||
onDeleteBody: 'Ви дійсно бажаєте видалити обрані матеріали?',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: 'Завантаження...',
|
||||
|
@ -89,17 +89,17 @@ const vi: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: 'Bạn có chắc rằng bạn muốn rời khỏi trang này?',
|
||||
onUpdatingWithUnsavedChanges:
|
||||
onUpdatingWithUnsavedChangesBody:
|
||||
'Bạn chưa lưu những thay đổi, hãy lưu trước khi thay đổi trạng thái.',
|
||||
onPublishingNotReady: 'Hãy thay đổi trạng thái thành "Sẵn sàng" trước khi công bố.',
|
||||
onPublishingWithUnsavedChanges: 'Bạn có thay đổi chưa lưu, hãy lưu trước khi công bố.',
|
||||
onPublishing: 'Bạn có chắc rằng bạn muốn công bố mục này?',
|
||||
onPublishingNotReadyBody: 'Hãy thay đổi trạng thái thành "Sẵn sàng" trước khi công bố.',
|
||||
onPublishingWithUnsavedChangesBody: 'Bạn có thay đổi chưa lưu, hãy lưu trước khi công bố.',
|
||||
onPublishingBody: 'Bạn có chắc rằng bạn muốn công bố mục này?',
|
||||
onUnpublishing: 'Bạn có chắc rằng bạn muốn ngừng công bố mục này?',
|
||||
onDeleteWithUnsavedChanges:
|
||||
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?',
|
||||
onDeletePublishedEntry: 'Bạn có chắc rằng bạn muốn xoá mục đã được công bố này?',
|
||||
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...',
|
||||
confirmLoadBackup:
|
||||
confirmLoadBackupBody:
|
||||
'Một bản sao lưu trên máy đã được phục hồi cho mục này, bạn có muốn tải lên không?',
|
||||
},
|
||||
editorToolbar: {
|
||||
@ -167,8 +167,8 @@ const vi: LocalePhrasesRoot = {
|
||||
draft: 'Bản nháp',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: 'Bạn có chắc rằng bạn muốn xoá tập tin này?',
|
||||
fileTooLarge: '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.',
|
||||
onDeleteBody: 'Bạn có chắc rằng bạn muốn xoá tập tin này?',
|
||||
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.',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: 'Đang tải...',
|
||||
|
@ -97,15 +97,15 @@ const zh_Hans: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: '你确定要离开此页面吗?',
|
||||
onUpdatingWithUnsavedChanges: '你有尚未保存的修改,请在更新状态前进行保存',
|
||||
onPublishingNotReady: '请在发布之前将状态更新为“就绪”',
|
||||
onPublishingWithUnsavedChanges: '你有尚未保存的修改,请在发布前进行保存',
|
||||
onPublishing: '你确定要发布此内容吗?',
|
||||
onUpdatingWithUnsavedChangesBody: '你有尚未保存的修改,请在更新状态前进行保存',
|
||||
onPublishingNotReadyBody: '请在发布之前将状态更新为“就绪”',
|
||||
onPublishingWithUnsavedChangesBody: '你有尚未保存的修改,请在发布前进行保存',
|
||||
onPublishingBody: '你确定要发布此内容吗?',
|
||||
onUnpublishing: '你确定要撤销发布此内容吗?',
|
||||
onDeleteWithUnsavedChanges: '你确定要删除这个已经发布的内容,以及当前尚未保存的修改吗?',
|
||||
onDeletePublishedEntry: '你确定要删除这个已经发布的内容吗?',
|
||||
onDeleteWithUnsavedChangesBody: '你确定要删除这个已经发布的内容,以及当前尚未保存的修改吗?',
|
||||
onDeletePublishedEntryBody: '你确定要删除这个已经发布的内容吗?',
|
||||
loadingEntry: '正在加载内容...',
|
||||
confirmLoadBackup: '发现了一个对应此内容的本地备份,你要加载它吗?',
|
||||
confirmLoadBackupBody: '发现了一个对应此内容的本地备份,你要加载它吗?',
|
||||
},
|
||||
editorInterface: {
|
||||
toggleI18n: '打开/关闭国际化',
|
||||
@ -198,8 +198,8 @@ const zh_Hans: LocalePhrasesRoot = {
|
||||
copied: '已复制',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: '你确定要删除此媒体项目吗?',
|
||||
fileTooLarge: '文件体积过大\n目前的配置中不允许文件体积超过 %{size} kB',
|
||||
onDeleteBody: '你确定要删除此媒体项目吗?',
|
||||
fileTooLargeBody: '文件体积过大\n目前的配置中不允许文件体积超过 %{size} kB',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: '正在加载...',
|
||||
|
@ -92,15 +92,15 @@ const zh_Hant: LocalePhrasesRoot = {
|
||||
},
|
||||
editor: {
|
||||
onLeavePage: '您確定要離開這頁嗎?',
|
||||
onUpdatingWithUnsavedChanges: '您有未儲存的變更,在更新狀態前請先進行儲存。',
|
||||
onPublishingNotReady: '在發布前,請先將狀態設定為:預備發布。',
|
||||
onPublishingWithUnsavedChanges: '您有未儲存的變更,在發布前請先進行儲存。',
|
||||
onPublishing: '你確定要發表此內容嗎?',
|
||||
onUpdatingWithUnsavedChangesBody: '您有未儲存的變更,在更新狀態前請先進行儲存。',
|
||||
onPublishingNotReadyBody: '在發布前,請先將狀態設定為:預備發布。',
|
||||
onPublishingWithUnsavedChangesBody: '您有未儲存的變更,在發布前請先進行儲存。',
|
||||
onPublishingBody: '你確定要發表此內容嗎?',
|
||||
onUnpublishing: '你確定要取消發表此內容嗎?',
|
||||
onDeleteWithUnsavedChanges: '你確定要刪除這篇已發布的內容以及你尚未儲存的變更?',
|
||||
onDeletePublishedEntry: '你確定要刪除這篇已發布的內容?',
|
||||
onDeleteWithUnsavedChangesBody: '你確定要刪除這篇已發布的內容以及你尚未儲存的變更?',
|
||||
onDeletePublishedEntryBody: '你確定要刪除這篇已發布的內容?',
|
||||
loadingEntry: '載入內容中...',
|
||||
confirmLoadBackup: '此內容的本地備份已經還原,你想要使用嗎?',
|
||||
confirmLoadBackupBody: '此內容的本地備份已經還原,你想要使用嗎?',
|
||||
},
|
||||
editorToolbar: {
|
||||
publishing: '發布中...',
|
||||
@ -177,8 +177,8 @@ const zh_Hant: LocalePhrasesRoot = {
|
||||
draft: '草稿',
|
||||
},
|
||||
mediaLibrary: {
|
||||
onDelete: '你確定要刪除已選擇的媒體嗎?',
|
||||
fileTooLarge: '檔案太大。\n已設定不允許大於 %{size} kB 的檔案。',
|
||||
onDeleteBody: '你確定要刪除已選擇的媒體嗎?',
|
||||
fileTooLargeBody: '檔案太大。\n已設定不允許大於 %{size} kB 的檔案。',
|
||||
},
|
||||
mediaLibraryModal: {
|
||||
loading: '載入中...',
|
||||
|
@ -21,7 +21,7 @@ import {
|
||||
GROUP_ENTRIES_SUCCESS,
|
||||
SORT_ENTRIES_FAILURE,
|
||||
SORT_ENTRIES_REQUEST,
|
||||
SORT_ENTRIES_SUCCESS
|
||||
SORT_ENTRIES_SUCCESS,
|
||||
} from '../actions/entries';
|
||||
import { SEARCH_ENTRIES_SUCCESS } from '../actions/search';
|
||||
import { SORT_DIRECTION_ASCENDING, SORT_DIRECTION_NONE } from '../constants';
|
||||
@ -44,7 +44,7 @@ import type {
|
||||
Pages,
|
||||
Sort,
|
||||
SortMap,
|
||||
SortObject
|
||||
SortObject,
|
||||
} from '../interface';
|
||||
import type { EntryDraftState } from './entryDraft';
|
||||
|
||||
@ -204,7 +204,7 @@ function entries(
|
||||
|
||||
pages[payload.collection] = {
|
||||
page: page ?? undefined,
|
||||
ids: loadedEntries.map(entry => entry.slug),
|
||||
ids: [...(pages[payload.collection]?.ids ?? []), ...loadedEntries.map(entry => entry.slug)],
|
||||
isFetching: false,
|
||||
};
|
||||
|
||||
|
@ -26,6 +26,7 @@ import type { EntriesAction } from '../actions/entries';
|
||||
import type { Entry, FieldsErrors } from '../interface';
|
||||
|
||||
export interface EntryDraftState {
|
||||
original?: Entry;
|
||||
entry?: Entry;
|
||||
fieldsErrors: FieldsErrors;
|
||||
hasChanged: boolean;
|
||||
@ -49,13 +50,16 @@ function entryDraftReducer(
|
||||
case DRAFT_CREATE_FROM_ENTRY: {
|
||||
const newState = { ...state };
|
||||
|
||||
const entry: Entry = {
|
||||
...action.payload.entry,
|
||||
newRecord: false,
|
||||
};
|
||||
|
||||
// Existing Entry
|
||||
return {
|
||||
...newState,
|
||||
entry: {
|
||||
...action.payload.entry,
|
||||
newRecord: false,
|
||||
},
|
||||
entry,
|
||||
original: entry,
|
||||
fieldsErrors: {},
|
||||
hasChanged: false,
|
||||
key: uuid(),
|
||||
@ -65,13 +69,16 @@ function entryDraftReducer(
|
||||
const newState = { ...state };
|
||||
delete newState.localBackup;
|
||||
|
||||
const entry: Entry = {
|
||||
...action.payload,
|
||||
newRecord: true,
|
||||
};
|
||||
|
||||
// New Entry
|
||||
return {
|
||||
...newState,
|
||||
entry: {
|
||||
...action.payload,
|
||||
newRecord: true,
|
||||
},
|
||||
entry,
|
||||
original: entry,
|
||||
fieldsErrors: {},
|
||||
hasChanged: false,
|
||||
key: uuid(),
|
||||
@ -88,13 +95,16 @@ function entryDraftReducer(
|
||||
const newState = { ...state };
|
||||
delete newState.localBackup;
|
||||
|
||||
const entry: Entry = {
|
||||
...backupEntry,
|
||||
newRecord: !backupEntry?.path,
|
||||
};
|
||||
|
||||
// Local Backup
|
||||
return {
|
||||
...state,
|
||||
entry: {
|
||||
...backupEntry,
|
||||
newRecord: !backupEntry?.path,
|
||||
},
|
||||
entry,
|
||||
original: entry,
|
||||
fieldsErrors: {},
|
||||
hasChanged: true,
|
||||
key: uuid(),
|
||||
@ -105,13 +115,16 @@ function entryDraftReducer(
|
||||
const newState = { ...state };
|
||||
delete newState.localBackup;
|
||||
|
||||
const entry: Entry = {
|
||||
...action.payload,
|
||||
newRecord: true,
|
||||
};
|
||||
|
||||
// Duplicate Entry
|
||||
return {
|
||||
...newState,
|
||||
entry: {
|
||||
...action.payload,
|
||||
newRecord: true,
|
||||
},
|
||||
entry,
|
||||
original: entry,
|
||||
fieldsErrors: {},
|
||||
hasChanged: true,
|
||||
};
|
||||
@ -157,7 +170,7 @@ function entryDraftReducer(
|
||||
|
||||
return {
|
||||
...newState,
|
||||
hasChanged: !entry || !isEqual(newData, get(entry, dataPath)),
|
||||
hasChanged: !entry || !isEqual(newData, get(newState.original, dataPath)),
|
||||
};
|
||||
}
|
||||
|
||||
@ -211,14 +224,17 @@ function entryDraftReducer(
|
||||
const newState = { ...state };
|
||||
delete newState.localBackup;
|
||||
|
||||
const entry: Entry = {
|
||||
...state.entry,
|
||||
slug: action.payload.slug,
|
||||
isPersisting: false,
|
||||
};
|
||||
|
||||
return {
|
||||
...newState,
|
||||
hasChanged: false,
|
||||
entry: {
|
||||
...state.entry,
|
||||
slug: action.payload.slug,
|
||||
isPersisting: false,
|
||||
},
|
||||
entry,
|
||||
original: entry,
|
||||
};
|
||||
}
|
||||
|
||||
@ -230,13 +246,16 @@ function entryDraftReducer(
|
||||
const newState = { ...state };
|
||||
delete newState.localBackup;
|
||||
|
||||
const entry: Entry = {
|
||||
...state.entry,
|
||||
isPersisting: false,
|
||||
};
|
||||
|
||||
return {
|
||||
...newState,
|
||||
hasChanged: false,
|
||||
entry: {
|
||||
...state.entry,
|
||||
isPersisting: false,
|
||||
},
|
||||
entry,
|
||||
original: entry
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -11,8 +11,9 @@ import formatDate from 'date-fns/format';
|
||||
import formatISO from 'date-fns/formatISO';
|
||||
import parse from 'date-fns/parse';
|
||||
import parseISO from 'date-fns/parseISO';
|
||||
import React, { useCallback, useMemo, useState } from 'react';
|
||||
import React, { useCallback, useEffect, useMemo, useState } from 'react';
|
||||
|
||||
import alert from '../../components/UI/Alert';
|
||||
import { isNotEmpty } from '../../lib/util/string.util';
|
||||
|
||||
import type { MouseEvent } from 'react';
|
||||
@ -113,13 +114,16 @@ const DateTimeControl = ({
|
||||
: field.default;
|
||||
}, [field.default, field.picker_utc, format, inputFormat, localToUTC]);
|
||||
|
||||
const [internalValue, setInternalValue] = useState(value ?? defaultValue);
|
||||
const [internalValue, setInternalValue] = useState(value);
|
||||
|
||||
const dateValue = useMemo(
|
||||
() =>
|
||||
format ? parse(internalValue, format, new Date()) ?? defaultValue : parseISO(internalValue),
|
||||
[defaultValue, format, internalValue],
|
||||
);
|
||||
const dateValue: Date = useMemo(() => {
|
||||
let valueToParse = internalValue;
|
||||
if (!valueToParse) {
|
||||
valueToParse = defaultValue;
|
||||
}
|
||||
|
||||
return format ? parse(valueToParse, format, new Date()) : parseISO(valueToParse);
|
||||
}, [defaultValue, format, internalValue]);
|
||||
|
||||
const utcDate = useMemo(() => {
|
||||
const dateTime = new Date(dateValue);
|
||||
@ -149,14 +153,40 @@ const DateTimeControl = ({
|
||||
[defaultValue, field.picker_utc, format, localToUTC, onChange],
|
||||
);
|
||||
|
||||
useEffect(() => {
|
||||
if (isNotEmpty(internalValue)) {
|
||||
return;
|
||||
}
|
||||
|
||||
setInternalValue(defaultValue);
|
||||
setTimeout(() => {
|
||||
onChange(defaultValue);
|
||||
});
|
||||
}, [defaultValue, internalValue, onChange]);
|
||||
|
||||
const dateTimePicker = useMemo(() => {
|
||||
if (!internalValue) {
|
||||
return null;
|
||||
}
|
||||
|
||||
let formattedValue = defaultValue;
|
||||
try {
|
||||
formattedValue = formatDate(field.picker_utc ? utcDate : dateValue, inputFormat);
|
||||
} catch (e) {
|
||||
alert({
|
||||
title: 'editor.editorWidgets.datetime.invalidDateTitle',
|
||||
body: 'editor.editorWidgets.datetime.invalidDateBody',
|
||||
});
|
||||
console.error(e);
|
||||
}
|
||||
|
||||
if (dateFormat && !timeFormat) {
|
||||
return (
|
||||
<MobileDatePicker
|
||||
key="mobile-date-picker"
|
||||
inputFormat={inputFormat}
|
||||
label={label}
|
||||
value={formatDate(field.picker_utc ? utcDate : dateValue, inputFormat)}
|
||||
value={formattedValue}
|
||||
onChange={handleChange}
|
||||
renderInput={params => (
|
||||
<TextField
|
||||
@ -186,7 +216,7 @@ const DateTimeControl = ({
|
||||
key="time-picker"
|
||||
label={label}
|
||||
inputFormat={inputFormat}
|
||||
value={formatDate(field.picker_utc ? utcDate : dateValue, inputFormat)}
|
||||
value={formattedValue}
|
||||
onChange={handleChange}
|
||||
renderInput={params => (
|
||||
<TextField
|
||||
@ -215,7 +245,7 @@ const DateTimeControl = ({
|
||||
key="mobile-date-time-picker"
|
||||
inputFormat={inputFormat}
|
||||
label={label}
|
||||
value={formatDate(field.picker_utc ? utcDate : dateValue, inputFormat)}
|
||||
value={formattedValue}
|
||||
onChange={handleChange}
|
||||
renderInput={params => (
|
||||
<TextField
|
||||
@ -240,6 +270,7 @@ const DateTimeControl = ({
|
||||
}, [
|
||||
dateFormat,
|
||||
dateValue,
|
||||
defaultValue,
|
||||
field.picker_utc,
|
||||
handleChange,
|
||||
hasErrors,
|
||||
|
@ -21,6 +21,11 @@ const MarkdownPreview = ({
|
||||
|
||||
const viewer = useRef<Viewer | null>(null);
|
||||
|
||||
useEffect(() => {
|
||||
viewer.current?.getInstance().setMarkdown(value ?? '');
|
||||
// eslint-disable-next-line react-hooks/exhaustive-deps
|
||||
}, [value]);
|
||||
|
||||
useEffect(() => {
|
||||
mediaHolder.setBulkMedia(media);
|
||||
viewer.current?.getInstance().setMarkdown(value ?? '');
|
||||
|
@ -7,6 +7,7 @@ import uniqBy from 'lodash/uniqBy';
|
||||
import React, { useCallback, useEffect, useMemo, useState } from 'react';
|
||||
|
||||
import { QUERY_SUCCESS } from '../../actions/search';
|
||||
import { isNotEmpty } from '../../lib/util/string.util';
|
||||
import {
|
||||
addFileTemplateFields,
|
||||
compileStringTemplate,
|
||||
@ -113,7 +114,7 @@ const RelationControl = ({
|
||||
query,
|
||||
locale,
|
||||
label,
|
||||
hasErrors
|
||||
hasErrors,
|
||||
}: WidgetControlProps<string | string[], RelationField>) => {
|
||||
const [internalValue, setInternalValue] = useState(value);
|
||||
const [initialOptions, setInitialOptions] = useState<HitOption[]>([]);
|
||||
@ -184,7 +185,14 @@ const RelationControl = ({
|
||||
|
||||
const [options, setOptions] = useState<HitOption[]>([]);
|
||||
const [open, setOpen] = React.useState(false);
|
||||
const loading = useMemo(() => open && options.length === 0, [open, options.length]);
|
||||
const valueNotEmpty = useMemo(
|
||||
() => (Array.isArray(internalValue) ? internalValue.length > 0 : isNotEmpty(internalValue)),
|
||||
[internalValue],
|
||||
);
|
||||
const loading = useMemo(
|
||||
() => (open || valueNotEmpty) && options.length === 0,
|
||||
[open, valueNotEmpty, options.length],
|
||||
);
|
||||
|
||||
useEffect(() => {
|
||||
let alive = true;
|
||||
|
@ -111,7 +111,7 @@ const useIntersectionObserver = (setActiveId: (activeId: string) => void) => {
|
||||
const StyledNav = styled('nav')(
|
||||
({ theme }) => `
|
||||
width: 100%;
|
||||
padding: 0 16px 16px 0;
|
||||
padding: 0 20px 16px 0;
|
||||
align-self: flex-start;
|
||||
position: sticky;
|
||||
top: 0;
|
||||
@ -120,7 +120,7 @@ const StyledNav = styled('nav')(
|
||||
top: 16px;
|
||||
|
||||
${theme.breakpoints.between('md', 'lg')} {
|
||||
top: 0;
|
||||
top: 24px;
|
||||
}
|
||||
|
||||
${theme.breakpoints.down('md')} {
|
||||
|
@ -39,7 +39,6 @@ const StyledDocsView = styled('div')(
|
||||
${theme.breakpoints.down('lg')} {
|
||||
margin-left: 0;
|
||||
padding-top: 24px;
|
||||
overflow-x: hidden;
|
||||
width: 100vw;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user