feat: completed base feature set for the app

This commit is contained in:
2026-07-18 20:25:17 +02:00
parent e9d6c70eb0
commit 638202b96c
46 changed files with 4486 additions and 541 deletions

View File

@@ -73,6 +73,7 @@ statusBar-offlineModeActive = Airplane Mode (active)
projectSelector-switchProject = Switch project
projectSelector-projectsHeader = Projects
projectSelector-newProject = New Project
projectSelector-openProject = Open Project…
projectSelector-createProject = Create Project
projectSelector-projectName = Project name
projectSelector-projectNamePlaceholder = My Blog
@@ -82,6 +83,8 @@ projectSelector-deleteProject = Delete Project
projectSelector-toast-switched = Switched to { $name }
projectSelector-toast-switchFailed = Project switch failed
projectSelector-toast-created = Project "{ $name }" created
projectSelector-toast-opened = Project "{ $name }" opened
projectSelector-toast-openFailed = Failed to open project: { $error }
projectSelector-toast-createFailed = Failed to create project
projectSelector-toast-deleteFailed = Failed to delete project
tabBar-closeHint = Close
@@ -149,6 +152,7 @@ engine-validateTranslationsFailed = Translation validation failed: { $error }
engine-fillMissingTranslationsOffline = Cannot fill translations: AI is unavailable in offline mode
engine-fillMissingTranslationsNoAi = Cannot fill translations: AI not yet available
engine-uploadStarted = Uploading site...
engine-uploadingTarget = Uploading { $target }…
engine-uploadMissingCredentials = Publishing credentials incomplete. Configure in project settings.
engine-uploadOffline = Cannot upload: airplane mode is active
engine-generateSiteStarted = Generating site...
@@ -156,8 +160,16 @@ engine-generateSiteNoProject = No active project
engine-previewDataDirUnavailable = Project data directory unavailable
engine-previewPortInUse = Preview server port is already in use
dialog-selectFolder = Select Folder
dialog-openProject = Open Project Folder
dialog-importMedia = Import Media
dialog-replaceMedia = Replace Media File
dialog-imageFilter = Images
editor-replaceFile = Replace File…
media-toast-imported = Imported { $count } media file(s)
media-toast-importFailed = Some media files could not be imported: { $error }
media-toast-replaced = Media file replaced
media-toast-unchanged = The selected file is identical; nothing changed
media-toast-replaceFailed = Failed to replace media file: { $error }
settings-nav-project = Project
settings-nav-editor = Editor
settings-nav-content = Content
@@ -410,4 +422,50 @@ engine-checkingItem = Checking: { $current }/{ $total } — { $name }
engine-renderingPost = Rendering { $post }
engine-writingGeneratedFiles = Writing generated files
engine-generationComplete = Site generation complete
engine-runScript = Running script…
engine-regeneratingItem = Regenerating: { $name }
metadataDiff-run = Run Diff
metadataDiff-running = Comparing database and filesystem…
metadataDiff-idle = Run the metadata diff to compare portable files with the database.
metadataDiff-clean = Database and filesystem metadata are in sync.
metadataDiff-fileToDb = Use File
metadataDiff-dbToFile = Use Database
metadataDiff-orphans = Orphan files
metadataDiff-errors = Errors
metadataDiff-repaired = Metadata difference repaired
metadataDiff-field = { $field }: DB = { $database } · File = { $file }
metadataDiff-entity = { $entity } · { $path }
metadataDiff-orphan = { $reason } · { $path }
engine-fillMissingTranslationsStarted = Filling missing translations…
engine-translatingContent = Translating content…
engine-fillMissingTranslationsComplete = Translation batch complete: { $posts } posts, { $media } media, { $failed } failed
engine-autoTranslationStarted = Creating missing translations…
engine-autoTranslationComplete = Created { $count } draft translations
translationValidation-run = Validate
translationValidation-running = Validating translations…
translationValidation-idle = Run validation to check translations in the database and filesystem.
translationValidation-clean = All translations are consistent.
translationValidation-databaseIssues = Database issues
translationValidation-filesystemIssues = Filesystem issues
translationValidation-missingSourcePost = Source post is missing
translationValidation-sameLanguageAsCanonical = Language matches the source post
translationValidation-doNotTranslateHasTranslations = Post is marked do not translate
translationValidation-contentInDatabase = Published content remains in the database
translationValidation-missingTranslation = Configured translation is missing
blogmark-invalid = Invalid blogmark: { $error }
blogmark-unknownProject = The project targeted by this blogmark does not exist here.
blogmark-noProject = Open a project before importing a blogmark.
blogmark-imported = Blogmark imported
blogmark-failed = Blogmark import failed: { $error }
engine-generatedPage = Generated { $url } ({ $current }/{ $total })
settings-imageImportConcurrency = Image Import Concurrency (18)
settings-imageImportConcurrencyInvalid = Image import concurrency must be a number from 1 to 8
find-titleFind = Find
find-titleReplace = Find and Replace
find-query = Find text
find-replacement = Replacement
find-next = Find Next
find-replace = Replace
find-replaceAll = Replace All
find-noMatches = No matches found
find-replacedCount = Replaced { $count } matches