diff options
Diffstat (limited to 'apps/files')
-rw-r--r-- | apps/files/l10n/pl.js | 6 | ||||
-rw-r--r-- | apps/files/l10n/pl.json | 6 | ||||
-rw-r--r-- | apps/files/src/actions/sidebarAction.spec.ts | 2 | ||||
-rw-r--r-- | apps/files/src/actions/sidebarAction.ts | 2 | ||||
-rw-r--r-- | apps/files/src/components/FilesListTableHeaderActions.vue | 6 | ||||
-rw-r--r-- | apps/files/src/components/FilesNavigationSearch.vue | 8 | ||||
-rw-r--r-- | apps/files/src/filters/TypeFilter.ts | 2 | ||||
-rw-r--r-- | apps/files/src/utils/actionUtils.ts | 6 | ||||
-rw-r--r-- | apps/files/src/utils/davUtils.ts | 2 | ||||
-rw-r--r-- | apps/files/src/utils/filesViews.spec.ts | 8 | ||||
-rw-r--r-- | apps/files/src/views/FilesList.vue | 6 | ||||
-rw-r--r-- | apps/files/src/views/Settings.vue | 60 |
12 files changed, 61 insertions, 53 deletions
diff --git a/apps/files/l10n/pl.js b/apps/files/l10n/pl.js index 107bd2813bd..91b14c35ee9 100644 --- a/apps/files/l10n/pl.js +++ b/apps/files/l10n/pl.js @@ -202,13 +202,17 @@ OC.L10N.register( "Sort favorites first" : "Najpierw sortuj ulubione", "Sort folders before files" : "Sortuj katalogi przed plikami", "Enable folder tree" : "Włącz drzewo katalogów", + "Visual settings" : "Ustawienia wizualne", "Show hidden files" : "Pokaż ukryte pliki", "Show file type column" : "Pokaż kolumnę typu pliku", "Crop image previews" : "Przytnij podglądy obrazów", + "Show files extensions" : "Pokaż rozszerzenia plików", "Additional settings" : "Ustawienia dodatkowe", "WebDAV" : "WebDAV", "WebDAV URL" : "URL WebDAV", "Copy to clipboard" : "Kopiuj do schowka", + "Use this address to access your Files via WebDAV." : "Użyj tego adresu, aby uzyskać dostęp do swoich plików przez WebDAV.", + "Two-Factor Authentication is enabled for your account, and therefore you need to use an app password to connect an external WebDAV client." : "Uwierzytelnianie dwuskładnikowe jest włączone dla Twojego konta, dlatego musisz użyć hasła aplikacji, aby połączyć zewnętrznego klienta WebDAV.", "Warnings" : "Ostrzeżenie", "Prevent warning dialogs from open or reenable them." : "Zapobiegaj otwieraniu okien dialogowych z ostrzeżeniami lub włącz je ponownie.", "Show a warning dialog when changing a file extension." : "Pokaż okno dialogowe z ostrzeżeniem przy zmianie rozszerzenia pliku.", @@ -325,6 +329,7 @@ OC.L10N.register( "Templates" : "Szablony", "New template folder" : "Nowy katalog szablonów", "In folder" : "W katalogu", + "Search in all files" : "Szukaj we wszystkich plikach", "Search in folder: {folder}" : "Szukaj w katalogu: {folder}", "One of the dropped files could not be processed" : "Jeden z upuszczonych plików nie mógł być przetworzony", "Your browser does not support the Filesystem API. Directories will not be uploaded" : "Twoja przeglądarka nie obsługuje interfejsu API systemu plików. Katalogi nie zostaną przesłane", @@ -358,6 +363,7 @@ OC.L10N.register( "No favorites yet" : "Brak ulubionych", "Files and folders you mark as favorite will show up here" : "Pliki i katalogi, które oznaczysz jako ulubione wyświetlą się tutaj", "List of your files and folders." : "Lista Twoich plików i katalogów.", + "Folder tree" : "Drzewo folderów", "List of your files and folders that are not shared." : "Lista twoich plików i katalogów, które nie są udostępniane", "No personal files found" : "Nie znaleziono plików osobistych", "Files that are not shared will show up here." : "Tutaj pojawią się pliki, które nie są udostępniane.", diff --git a/apps/files/l10n/pl.json b/apps/files/l10n/pl.json index 763e3543115..18eac5d41da 100644 --- a/apps/files/l10n/pl.json +++ b/apps/files/l10n/pl.json @@ -200,13 +200,17 @@ "Sort favorites first" : "Najpierw sortuj ulubione", "Sort folders before files" : "Sortuj katalogi przed plikami", "Enable folder tree" : "Włącz drzewo katalogów", + "Visual settings" : "Ustawienia wizualne", "Show hidden files" : "Pokaż ukryte pliki", "Show file type column" : "Pokaż kolumnę typu pliku", "Crop image previews" : "Przytnij podglądy obrazów", + "Show files extensions" : "Pokaż rozszerzenia plików", "Additional settings" : "Ustawienia dodatkowe", "WebDAV" : "WebDAV", "WebDAV URL" : "URL WebDAV", "Copy to clipboard" : "Kopiuj do schowka", + "Use this address to access your Files via WebDAV." : "Użyj tego adresu, aby uzyskać dostęp do swoich plików przez WebDAV.", + "Two-Factor Authentication is enabled for your account, and therefore you need to use an app password to connect an external WebDAV client." : "Uwierzytelnianie dwuskładnikowe jest włączone dla Twojego konta, dlatego musisz użyć hasła aplikacji, aby połączyć zewnętrznego klienta WebDAV.", "Warnings" : "Ostrzeżenie", "Prevent warning dialogs from open or reenable them." : "Zapobiegaj otwieraniu okien dialogowych z ostrzeżeniami lub włącz je ponownie.", "Show a warning dialog when changing a file extension." : "Pokaż okno dialogowe z ostrzeżeniem przy zmianie rozszerzenia pliku.", @@ -323,6 +327,7 @@ "Templates" : "Szablony", "New template folder" : "Nowy katalog szablonów", "In folder" : "W katalogu", + "Search in all files" : "Szukaj we wszystkich plikach", "Search in folder: {folder}" : "Szukaj w katalogu: {folder}", "One of the dropped files could not be processed" : "Jeden z upuszczonych plików nie mógł być przetworzony", "Your browser does not support the Filesystem API. Directories will not be uploaded" : "Twoja przeglądarka nie obsługuje interfejsu API systemu plików. Katalogi nie zostaną przesłane", @@ -356,6 +361,7 @@ "No favorites yet" : "Brak ulubionych", "Files and folders you mark as favorite will show up here" : "Pliki i katalogi, które oznaczysz jako ulubione wyświetlą się tutaj", "List of your files and folders." : "Lista Twoich plików i katalogów.", + "Folder tree" : "Drzewo folderów", "List of your files and folders that are not shared." : "Lista twoich plików i katalogów, które nie są udostępniane", "No personal files found" : "Nie znaleziono plików osobistych", "Files that are not shared will show up here." : "Tutaj pojawią się pliki, które nie są udostępniane.", diff --git a/apps/files/src/actions/sidebarAction.spec.ts b/apps/files/src/actions/sidebarAction.spec.ts index 75ed8c97b47..9085bf595ad 100644 --- a/apps/files/src/actions/sidebarAction.spec.ts +++ b/apps/files/src/actions/sidebarAction.spec.ts @@ -17,7 +17,7 @@ describe('Open sidebar action conditions tests', () => { test('Default values', () => { expect(action).toBeInstanceOf(FileAction) expect(action.id).toBe('details') - expect(action.displayName([], view)).toBe('Open details') + expect(action.displayName([], view)).toBe('Details') expect(action.iconSvgInline([], view)).toMatch(/<svg.+<\/svg>/) expect(action.default).toBeUndefined() expect(action.order).toBe(-50) diff --git a/apps/files/src/actions/sidebarAction.ts b/apps/files/src/actions/sidebarAction.ts index 0b8ad91741e..8f020b4ee8d 100644 --- a/apps/files/src/actions/sidebarAction.ts +++ b/apps/files/src/actions/sidebarAction.ts @@ -16,7 +16,7 @@ export const ACTION_DETAILS = 'details' export const action = new FileAction({ id: ACTION_DETAILS, - displayName: () => t('files', 'Open details'), + displayName: () => t('files', 'Details'), iconSvgInline: () => InformationSvg, // Sidebar currently supports user folder only, /files/USER diff --git a/apps/files/src/components/FilesListTableHeaderActions.vue b/apps/files/src/components/FilesListTableHeaderActions.vue index 53b7e7ef21b..6a808355c58 100644 --- a/apps/files/src/components/FilesListTableHeaderActions.vue +++ b/apps/files/src/components/FilesListTableHeaderActions.vue @@ -305,16 +305,16 @@ export default defineComponent({ return } - showError(this.t('files', '"{displayName}" failed on some elements', { displayName })) + showError(this.t('files', '{displayName}: failed on some elements', { displayName })) return } // Show success message and clear selection - showSuccess(this.t('files', '"{displayName}" batch action executed successfully', { displayName })) + showSuccess(this.t('files', '{displayName}: done', { displayName })) this.selectionStore.reset() } catch (e) { logger.error('Error while executing action', { action, e }) - showError(this.t('files', '"{displayName}" action failed', { displayName })) + showError(this.t('files', '{displayName}: failed', { displayName })) } finally { // Remove loading markers this.loading = null diff --git a/apps/files/src/components/FilesNavigationSearch.vue b/apps/files/src/components/FilesNavigationSearch.vue index e34d4bf0971..0890dffcb39 100644 --- a/apps/files/src/components/FilesNavigationSearch.vue +++ b/apps/files/src/components/FilesNavigationSearch.vue @@ -55,9 +55,9 @@ const isSearchView = computed(() => currentView.value.id === VIEW_ID) */ const searchLabel = computed(() => { if (searchStore.scope === 'globally') { - return t('files', 'Search globally by filename …') + return t('files', 'Search everywhere …') } - return t('files', 'Search here by filename …') + return t('files', 'Search here …') }) </script> @@ -72,13 +72,13 @@ const searchLabel = computed(() => { <template #icon> <NcIconSvgWrapper :path="mdiMagnify" /> </template> - {{ t('files', 'Filter and search from this location') }} + {{ t('files', 'Search here') }} </NcActionButton> <NcActionButton close-after-click @click="searchStore.scope = 'globally'"> <template #icon> <NcIconSvgWrapper :path="mdiSearchWeb" /> </template> - {{ t('files', 'Search globally') }} + {{ t('files', 'Search everywhere') }} </NcActionButton> </NcActions> </template> diff --git a/apps/files/src/filters/TypeFilter.ts b/apps/files/src/filters/TypeFilter.ts index 94b109ea7a4..3170e22b260 100644 --- a/apps/files/src/filters/TypeFilter.ts +++ b/apps/files/src/filters/TypeFilter.ts @@ -73,7 +73,7 @@ const getTypePresets = async () => [ { id: 'image', // TRANSLATORS: This is for filtering files, e.g. PNG or JPEG, so photos, drawings, or images in general - label: t('files', 'Photos and images'), + label: t('files', 'Images'), icon: svgImage, mime: ['image'], }, diff --git a/apps/files/src/utils/actionUtils.ts b/apps/files/src/utils/actionUtils.ts index f6d43727c29..adacf621b4c 100644 --- a/apps/files/src/utils/actionUtils.ts +++ b/apps/files/src/utils/actionUtils.ts @@ -59,13 +59,13 @@ export const executeAction = async (action: FileAction) => { } if (success) { - showSuccess(t('files', '"{displayName}" action executed successfully', { displayName })) + showSuccess(t('files', '{displayName}: done', { displayName })) return } - showError(t('files', '"{displayName}" action failed', { displayName })) + showError(t('files', '{displayName}: failed', { displayName })) } catch (error) { logger.error('Error while executing action', { action, error }) - showError(t('files', '"{displayName}" action failed', { displayName })) + showError(t('files', '{displayName}: failed', { displayName })) } finally { // Reset the loading marker Vue.set(currentNode, 'status', undefined) diff --git a/apps/files/src/utils/davUtils.ts b/apps/files/src/utils/davUtils.ts index d8dc12d069d..54c1a6ea966 100644 --- a/apps/files/src/utils/davUtils.ts +++ b/apps/files/src/utils/davUtils.ts @@ -29,7 +29,7 @@ export function humanizeWebDAVError(error: unknown) { } else if (status === 403) { return t('files', 'This operation is forbidden') } else if (status === 500) { - return t('files', 'This directory is unavailable, please check the logs or contact the administrator') + return t('files', 'This folder is unavailable, please try again later or contact the administration') } else if (status === 503) { return t('files', 'Storage is temporarily not available') } diff --git a/apps/files/src/utils/filesViews.spec.ts b/apps/files/src/utils/filesViews.spec.ts index e8c2ab3a6c1..03b0bb9aeb0 100644 --- a/apps/files/src/utils/filesViews.spec.ts +++ b/apps/files/src/utils/filesViews.spec.ts @@ -26,11 +26,7 @@ describe('hasPersonalFilesView', () => { }) describe('defaultView', () => { - beforeEach(() => { - document.querySelectorAll('input[type="hidden"]').forEach((el) => { - el.remove() - }) - }) + beforeEach(removeInitialState) test('Returns files view if set', () => { mockInitialState('files', 'config', { default_view: 'files' }) @@ -57,6 +53,8 @@ function removeInitialState(): void { document.querySelectorAll('input[type="hidden"]').forEach((el) => { el.remove() }) + // clear the cache + delete globalThis._nc_initial_state } /** diff --git a/apps/files/src/views/FilesList.vue b/apps/files/src/views/FilesList.vue index 3f993e24958..f9e517e92ee 100644 --- a/apps/files/src/views/FilesList.vue +++ b/apps/files/src/views/FilesList.vue @@ -816,13 +816,13 @@ export default defineComponent({ } if (success) { - showSuccess(t('files', '"{displayName}" action executed successfully', { displayName })) + showSuccess(t('files', '{displayName}: done', { displayName })) return } - showError(t('files', '"{displayName}" action failed', { displayName })) + showError(t('files', '{displayName}: failed', { displayName })) } catch (error) { logger.error('Error while executing action', { action, error }) - showError(t('files', '"{displayName}" action failed', { displayName })) + showError(t('files', '{displayName}: failed', { displayName })) } finally { this.loadingAction = null } diff --git a/apps/files/src/views/Settings.vue b/apps/files/src/views/Settings.vue index 0838d308af9..bfac8e0b3d6 100644 --- a/apps/files/src/views/Settings.vue +++ b/apps/files/src/views/Settings.vue @@ -8,7 +8,7 @@ :name="t('files', 'Files settings')" @update:open="onClose"> <!-- Settings API--> - <NcAppSettingsSection id="settings" :name="t('files', 'Files settings')"> + <NcAppSettingsSection id="settings" :name="t('files', 'General')"> <fieldset class="files-settings__default-view" data-cy-files-settings-setting="default_view"> <legend> @@ -42,12 +42,12 @@ <NcCheckboxRadioSwitch data-cy-files-settings-setting="folder_tree" :checked="userConfig.folder_tree" @update:checked="setConfig('folder_tree', $event)"> - {{ t('files', 'Enable folder tree') }} + {{ t('files', 'Folder tree') }} </NcCheckboxRadioSwitch> </NcAppSettingsSection> - <!-- Visual settings --> - <NcAppSettingsSection id="settings" :name="t('files', 'Visual settings')"> + <!-- Appearance --> + <NcAppSettingsSection id="settings" :name="t('files', 'Appearance')"> <NcCheckboxRadioSwitch data-cy-files-settings-setting="show_hidden" :checked="userConfig.show_hidden" @update:checked="setConfig('show_hidden', $event)"> @@ -58,16 +58,16 @@ @update:checked="setConfig('show_mime_column', $event)"> {{ t('files', 'Show file type column') }} </NcCheckboxRadioSwitch> + <NcCheckboxRadioSwitch data-cy-files-settings-setting="show_files_extensions" + :checked="userConfig.show_files_extensions" + @update:checked="setConfig('show_files_extensions', $event)"> + {{ t('files', 'Show file extensions') }} + </NcCheckboxRadioSwitch> <NcCheckboxRadioSwitch data-cy-files-settings-setting="crop_image_previews" :checked="userConfig.crop_image_previews" @update:checked="setConfig('crop_image_previews', $event)"> {{ t('files', 'Crop image previews') }} </NcCheckboxRadioSwitch> - <NcCheckboxRadioSwitch data-cy-files-settings-setting="show_files_extensions" - :checked="userConfig.show_files_extensions" - @update:checked="setConfig('show_files_extensions', $event)"> - {{ t('files', 'Show files extensions') }} - </NcCheckboxRadioSwitch> </NcAppSettingsSection> <!-- Settings API--> @@ -85,7 +85,7 @@ :label="t('files', 'WebDAV URL')" :show-trailing-button="true" :success="webdavUrlCopied" - :trailing-button-label="t('files', 'Copy to clipboard')" + :trailing-button-label="t('files', 'Copy')" :value="webdavUrl" class="webdav-url-input" readonly="readonly" @@ -101,7 +101,7 @@ :href="webdavDocs" target="_blank" rel="noreferrer noopener"> - {{ t('files', 'Use this address to access your Files via WebDAV.') }} ↗ + {{ t('files', 'How to access files using WebDAV') }} ↗ </a> </em> <br> @@ -113,22 +113,20 @@ </NcAppSettingsSection> <NcAppSettingsSection id="warning" :name="t('files', 'Warnings')"> - <em>{{ t('files', 'Prevent warning dialogs from open or reenable them.') }}</em> <NcCheckboxRadioSwitch type="switch" :checked="userConfig.show_dialog_file_extension" @update:checked="setConfig('show_dialog_file_extension', $event)"> - {{ t('files', 'Show a warning dialog when changing a file extension.') }} + {{ t('files', 'Warn before changing a file extension') }} </NcCheckboxRadioSwitch> <NcCheckboxRadioSwitch type="switch" :checked="userConfig.show_dialog_deletion" @update:checked="setConfig('show_dialog_deletion', $event)"> - {{ t('files', 'Show a warning dialog when deleting files.') }} + {{ t('files', 'Warn before deleting files') }} </NcCheckboxRadioSwitch> </NcAppSettingsSection> <NcAppSettingsSection id="shortcuts" :name="t('files', 'Keyboard shortcuts')"> - <em>{{ t('files', 'Speed up your Files experience with these quick shortcuts.') }}</em> <h3>{{ t('files', 'Actions') }}</h3> <dl> @@ -137,7 +135,7 @@ <kbd>a</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Open the actions menu for a file') }} + {{ t('files', 'File actions') }} </dd> </div> <div> @@ -145,7 +143,7 @@ <kbd>F2</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Rename a file') }} + {{ t('files', 'Rename') }} </dd> </div> <div> @@ -153,7 +151,7 @@ <kbd>Del</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Delete a file') }} + {{ t('files', 'Delete') }} </dd> </div> <div> @@ -161,7 +159,7 @@ <kbd>s</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Favorite or remove a file from favorites') }} + {{ t('files', 'Add or remove favorite') }} </dd> </div> <div v-if="isSystemtagsEnabled"> @@ -169,7 +167,7 @@ <kbd>t</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Manage tags for a file') }} + {{ t('files', 'Manage tags') }} </dd> </div> </dl> @@ -189,7 +187,7 @@ <kbd>ESC</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Deselect all files') }} + {{ t('files', 'Deselect all') }} </dd> </div> <div> @@ -197,7 +195,7 @@ <kbd>Ctrl</kbd> + <kbd>Space</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Select or deselect a file') }} + {{ t('files', 'Select or deselect') }} </dd> </div> <div> @@ -205,7 +203,7 @@ <kbd>Ctrl</kbd> + <kbd>Shift</kbd> <span>+ <kbd>Space</kbd></span> </dt> <dd class="shortcut-description"> - {{ t('files', 'Select a range of files') }} + {{ t('files', 'Select a range') }} </dd> </div> </dl> @@ -217,7 +215,7 @@ <kbd>Alt</kbd> + <kbd>↑</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Navigate to the parent folder') }} + {{ t('files', 'Go to parent folder') }} </dd> </div> <div> @@ -225,7 +223,7 @@ <kbd>↑</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Navigate to the file above') }} + {{ t('files', 'Go to file above') }} </dd> </div> <div> @@ -233,7 +231,7 @@ <kbd>↓</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Navigate to the file below') }} + {{ t('files', 'Go to file below') }} </dd> </div> <div> @@ -241,7 +239,7 @@ <kbd>←</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Navigate to the file on the left (in grid mode)') }} + {{ t('files', 'Go left in grid') }} </dd> </div> <div> @@ -249,7 +247,7 @@ <kbd>→</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Navigate to the file on the right (in grid mode)') }} + {{ t('files', 'Go right in grid') }} </dd> </div> </dl> @@ -261,7 +259,7 @@ <kbd>V</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Toggle the grid view') }} + {{ t('files', 'Toggle grid view') }} </dd> </div> <div> @@ -269,7 +267,7 @@ <kbd>D</kbd> </dt> <dd class="shortcut-description"> - {{ t('files', 'Open the sidebar for a file') }} + {{ t('files', 'Open file sidebar') }} </dd> </div> <div> @@ -400,7 +398,7 @@ export default { await navigator.clipboard.writeText(this.webdavUrl) this.webdavUrlCopied = true - showSuccess(t('files', 'WebDAV URL copied to clipboard')) + showSuccess(t('files', 'WebDAV URL copied')) setTimeout(() => { this.webdavUrlCopied = false }, 5000) |