diff --git a/web/src/lib/components/faces-page/merge-face-selector.svelte b/web/src/lib/components/faces-page/merge-face-selector.svelte index 752227da28..abbd1bf354 100644 --- a/web/src/lib/components/faces-page/merge-face-selector.svelte +++ b/web/src/lib/components/faces-page/merge-face-selector.svelte @@ -101,23 +101,23 @@ {#if hasSelection} - Selected {selectedPeople.length} + {$t('selected')} {selectedPeople.length} {:else} - Merge people + {$t('merge_people')} {/if}
{$t('merge')}
-

Choose matching people to merge

+

{$t('choose_matching_people_to_merge')}

{#each selectedPeople as person (person.id)} diff --git a/web/src/lib/components/faces-page/merge-suggestion-modal.svelte b/web/src/lib/components/faces-page/merge-suggestion-modal.svelte index 60d064c3a5..9621f6862f 100644 --- a/web/src/lib/components/faces-page/merge-suggestion-modal.svelte +++ b/web/src/lib/components/faces-page/merge-suggestion-modal.svelte @@ -31,7 +31,7 @@ }; - dispatch('close')}> + dispatch('close')}>
{#if !choosePersonToMerge}
diff --git a/web/src/lib/components/faces-page/show-hide.svelte b/web/src/lib/components/faces-page/show-hide.svelte index 258efe2c5d..5c476d396b 100644 --- a/web/src/lib/components/faces-page/show-hide.svelte +++ b/web/src/lib/components/faces-page/show-hide.svelte @@ -54,7 +54,7 @@
-

Show & hide people

+

{$t('show_and_hide_people')}

({countTotalPeople.toLocaleString($locale)})

diff --git a/web/src/lib/components/photos-page/asset-select-control-bar.svelte b/web/src/lib/components/photos-page/asset-select-control-bar.svelte index a51be08f56..1a2af7b955 100644 --- a/web/src/lib/components/photos-page/asset-select-control-bar.svelte +++ b/web/src/lib/components/photos-page/asset-select-control-bar.svelte @@ -1,5 +1,6 @@ @@ -11,7 +10,7 @@ {:then data}
-

{data.videos.toLocaleString($locale)} Video{s(data.videos)}

-

{data.images.toLocaleString($locale)} Photo{s(data.images)}

+

{$t('videos_count', { values: { count: data.videos } })}

+

{$t('photos_count', { values: { count: data.images } })}

{/await} diff --git a/web/src/lib/components/shared-components/status-box.svelte b/web/src/lib/components/shared-components/status-box.svelte index 8d94e9cee2..b53f4e5e05 100644 --- a/web/src/lib/components/shared-components/status-box.svelte +++ b/web/src/lib/components/shared-components/status-box.svelte @@ -59,8 +59,12 @@

- {asByteUnitString(usedBytes, $locale)} of - {asByteUnitString(availableBytes, $locale)} used + {$t('storage_usage', { + values: { + used: asByteUnitString(usedBytes, $locale), + available: asByteUnitString(availableBytes, $locale), + }, + })}

{:else}
diff --git a/web/src/lib/i18n/en.json b/web/src/lib/i18n/en.json index 6a340894e4..0cb9c122ed 100644 --- a/web/src/lib/i18n/en.json +++ b/web/src/lib/i18n/en.json @@ -1,5 +1,6 @@ { "account": "Account", + "account_settings": "Account Settings", "acknowledge": "Acknowledge", "action": "Action", "actions": "Actions", @@ -296,6 +297,7 @@ "album_updated": "Album updated", "album_updated_setting_description": "Receive an email notification when a shared album has new assets", "albums": "Albums", + "albums_count": "{count, plural, one {{count, number} Album} other {{count, number} Albums}}", "all": "All", "all_people": "All people", "allow_dark_mode": "Allow dark mode", @@ -332,7 +334,9 @@ "change_password": "Change password", "change_your_password": "Change your password", "changed_visibility_successfully": "Changed visibility successfully", + "check_all": "Check All", "check_logs": "Check Logs", + "choose_matching_people_to_merge": "Choose matching people to merge", "city": "City", "clear": "Clear", "clear_all": "Clear all", @@ -345,6 +349,7 @@ "comments_are_disabled": "Comments are disabled", "confirm": "Confirm", "confirm_admin_password": "Confirm Admin Password", + "confirm_delete_shared_link": "Are you sure you want to delete this shared link?", "confirm_password": "Confirm Password", "contain": "Contain", "context": "Context", @@ -463,6 +468,7 @@ "unable_to_delete_asset": "Unable to delete asset", "unable_to_delete_exclusion_pattern": "Unable to delete exclusion pattern", "unable_to_delete_import_path": "Unable to delete import path", + "unable_to_delete_shared_link": "Unable to delete shared link", "unable_to_delete_user": "Unable to delete user", "unable_to_edit_exclusion_pattern": "Unable to edit exclusion pattern", "unable_to_edit_import_path": "Unable to edit import path", @@ -526,6 +532,7 @@ "filename": "Filename", "filetype": "Filetype", "filter_people": "Filter people", + "find_them_fast": "Find them fast by name with search", "fix_incorrect_match": "Fix incorrect match", "force_re-scan_library_files": "Force Re-scan All Library Files", "forward": "Forward", @@ -600,6 +607,7 @@ "memories": "Memories", "memories_setting_description": "Manage what you see in your memories", "menu": "Menu", + "merge": "Merge", "merge_people": "Merge people", "merge_people_successfully": "Merge people successfully", "minimize": "Minimize", @@ -624,6 +632,7 @@ "no_albums_message": "Create an album to organize your photos and videos", "no_archived_assets_message": "Archive photos and videos to hide them from your Photos view", "no_assets_message": "CLICK TO UPLOAD YOUR FIRST PHOTO", + "no_duplicates_found": "No duplicates were found.", "no_exif_info_available": "No exif info available", "no_explore_results_message": "Upload more photos to explore your collection.", "no_favorites_message": "Add favorites to quickly find your best pictures and videos", @@ -633,12 +642,16 @@ "no_results": "No results", "no_shared_albums_message": "Create an album to share photos and videos with people in your network", "not_in_any_album": "Not in any album", + "note_apply_storage_label_to_previously_uploaded assets": "Note: To apply the Storage Label to previously uploaded assets, run the", + "note_unlimited_quota": "Note: Enter 0 for unlimited quota", "notes": "Notes", "notification_toggle_setting_description": "Toggle email notifications", "notifications": "Notifications", "notifications_setting_description": "Manage notifications", "oauth": "OAuth", "offline": "Offline", + "offline_paths": "Offline paths", + "offline_paths_description": "These results may be due to manual deletion of files that are not part of an external library.", "ok": "Ok", "oldest_first": "Oldest first", "online": "Online", @@ -679,6 +692,7 @@ "permanently_delete": "Permanently delete", "permanently_deleted_asset": "Permanently deleted asset", "photos": "Photos", + "photos_count": "{count, plural, one {{count, number} Photo} other {{count, number} Photos}}", "photos_from_previous_years": "Photos from previous years", "pick_a_location": "Pick a location", "place": "Place", @@ -714,10 +728,12 @@ "repair_no_results_message": "Untracked and missing files will show up here", "replace_with_upload": "Replace with upload", "require_password": "Require password", + "require_user_to_change_password_on_first_login": "Require user to change password on first login", "reset": "Reset", "reset_password": "Reset password", "reset_people_visibility": "Reset people visibility", "restore": "Restore", + "restore_all": "Restore all", "restore_user": "Restore user", "resume": "Resume", "retry_upload": "Retry upload", @@ -760,6 +776,7 @@ "select_trash_all": "Select trash all", "selected": "Selected", "send_message": "Send message", + "send_welcome_email": "Send welcome email", "server": "Server", "server_stats": "Server Stats", "set": "Set", @@ -780,6 +797,7 @@ "sharing": "Sharing", "sharing_sidebar_description": "Display a link to Sharing in the sidebar", "show_album_options": "Show album options", + "show_and_hide_people": "Show & hide people", "show_file_location": "Show file location", "show_gallery": "Show gallery", "show_hidden_people": "Show hidden people", @@ -793,6 +811,7 @@ "show_progress_bar": "Show Progress Bar", "show_search_options": "Show search options", "shuffle": "Shuffle", + "sign_out": "Sign Out", "sign_up": "Sign up", "size": "Size", "skip_to_content": "Skip to content", @@ -812,6 +831,7 @@ "stop_sharing_photos_with_user": "Stop sharing your photos with this user", "storage": "Storage", "storage_label": "Storage Label", + "storage_usage": "{used} of {available} used", "submit": "Submit", "suggestions": "Suggestions", "sunrise_on_the_beach": "Sunrise on the beach", @@ -832,6 +852,7 @@ "trash": "Trash", "trash_all": "Trash All", "trash_no_results_message": "Trashed photos and videos will show up here.", + "trashed_items_will_be_permanently_deleted_after": "Trashed items will be permanently deleted after {days, plural, one {# day} other {# days}}.", "type": "Type", "unarchive": "Unarchive", "unarchived": "Unarchived", @@ -845,6 +866,8 @@ "unlinked_oauth_account": "Unlinked OAuth account", "unselect_all": "Unselect all", "unstack": "Un-stack", + "untracked_files": "Untracked files", + "untracked_files_decription": "These files are not tracked by the application. They can be the results of failed moves, interrupted uploads, or left behind due to a bug", "up_next": "Up next", "updated_password": "Updated password", "upload": "Upload", @@ -864,6 +887,7 @@ "video_hover_setting": "Play video thumbnail on hover", "video_hover_setting_description": "Play video thumbnail when mouse is hovering over item. Even when disabled, playback can be started by hovering over the play icon.", "videos": "Videos", + "videos_count": "{count, plural, one {# Video} other {# Videos}}", "view_all": "View All", "view_all_users": "View all users", "view_links": "View links", @@ -875,5 +899,6 @@ "welcome_to_immich": "Welcome to immich", "year": "Year", "yes": "Yes", + "you_dont_have_any_shared_links": "You don't have any shared links", "zoom_image": "Zoom Image" } diff --git a/web/src/routes/(user)/albums/[albumId=id]/[[photos=photos]]/[[assetId=id]]/+page.svelte b/web/src/routes/(user)/albums/[albumId=id]/[[photos=photos]]/[[assetId=id]]/+page.svelte index 929a80f249..ef6c48814b 100644 --- a/web/src/routes/(user)/albums/[albumId=id]/[[photos=photos]]/[[assetId=id]]/+page.svelte +++ b/web/src/routes/(user)/albums/[albumId=id]/[[photos=photos]]/[[assetId=id]]/+page.svelte @@ -510,7 +510,7 @@ disabled={album.assetCount === 0} on:click={() => (viewMode = ViewMode.SELECT_USERS)} > - Share + {$t('share')} {/if} diff --git a/web/src/routes/(user)/people/+page.svelte b/web/src/routes/(user)/people/+page.svelte index 553726afca..29c2a50ae5 100644 --- a/web/src/routes/(user)/people/+page.svelte +++ b/web/src/routes/(user)/people/+page.svelte @@ -422,7 +422,7 @@ (selectHidden = !selectHidden)}>
-

Show & hide people

+

{$t('show_and_hide_people')}

diff --git a/web/src/routes/(user)/people/[personId]/[[photos=photos]]/[[assetId=id]]/+page.svelte b/web/src/routes/(user)/people/[personId]/[[photos=photos]]/[[assetId=id]]/+page.svelte index 9392f1b60a..7de385f47d 100644 --- a/web/src/routes/(user)/people/[personId]/[[photos=photos]]/[[assetId=id]]/+page.svelte +++ b/web/src/routes/(user)/people/[personId]/[[photos=photos]]/[[assetId=id]]/+page.svelte @@ -492,7 +492,9 @@

{:else}

{$t('add_a_name')}

-

Find them fast by name with search

+

+ {$t('find_them_fast')} +

{/if}
diff --git a/web/src/routes/(user)/sharing/sharedlinks/+page.svelte b/web/src/routes/(user)/sharing/sharedlinks/+page.svelte index 47decdd395..39f8eb87ec 100644 --- a/web/src/routes/(user)/sharing/sharedlinks/+page.svelte +++ b/web/src/routes/(user)/sharing/sharedlinks/+page.svelte @@ -33,8 +33,8 @@ const isConfirmed = await dialogController.show({ id: 'delete-shared-link', title: $t('delete_shared_link'), - prompt: 'Are you sure you want to delete this shared link?', - confirmText: 'Delete', + prompt: $t('confirm_delete_shared_link'), + confirmText: $t('delete'), }); if (!isConfirmed) { @@ -46,7 +46,7 @@ notificationController.show({ message: $t('deleted_shared_link'), type: NotificationType.Info }); await refresh(); } catch (error) { - handleError(error, 'Unable to delete shared link'); + handleError(error, $t('errors.unable_to_delete_shared_link')); } }; @@ -72,7 +72,7 @@
-

You don't have any shared links

+

{$t('you_dont_have_any_shared_links')}

{:else}
diff --git a/web/src/routes/(user)/trash/[[photos=photos]]/[[assetId=id]]/+page.svelte b/web/src/routes/(user)/trash/[[photos=photos]]/[[assetId=id]]/+page.svelte index 624698334d..baef91b39d 100644 --- a/web/src/routes/(user)/trash/[[photos=photos]]/[[assetId=id]]/+page.svelte +++ b/web/src/routes/(user)/trash/[[photos=photos]]/[[assetId=id]]/+page.svelte @@ -101,7 +101,7 @@
- Restore all + {$t('restore_all')}
handleEmptyTrash()} disabled={$isMultiSelectState}> @@ -114,7 +114,7 @@

- Trashed items will be permanently deleted after {$serverConfig.trashDays} days. + {$t('trashed_items_will_be_permanently_deleted_after', { values: { days: $serverConfig.trashDays } })}

diff --git a/web/src/routes/(user)/utilities/[duplicates]/[[photos=photos]]/[[assetId=id]]/+page.svelte b/web/src/routes/(user)/utilities/[duplicates]/[[photos=photos]]/[[assetId=id]]/+page.svelte index ae94b74a2f..b0b51d3b37 100644 --- a/web/src/routes/(user)/utilities/[duplicates]/[[photos=photos]]/[[assetId=id]]/+page.svelte +++ b/web/src/routes/(user)/utilities/[duplicates]/[[photos=photos]]/[[assetId=id]]/+page.svelte @@ -65,7 +65,7 @@ {/key} {:else}

- No duplicates were found. + {$t('no_duplicates_found')}

{/if}