@elytracms/studio 0.0.94 → 0.0.95
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/convex/asset-alt-migration.test.ts +2 -2
- package/convex/asset-meta-patch.test.ts +218 -0
- package/convex/asset-replace-delete-race.test.ts +127 -0
- package/convex/assets.ts +27 -2
- package/convex/delivery-redirects.test.ts +167 -0
- package/convex/delivery.ts +15 -5
- package/convex/rail-write-parity.test.ts +6 -6
- package/convex/redirects.ts +1 -1
- package/convex/schema.ts +6 -0
- package/dist/addon.d.ts +1 -1
- package/dist/addon.js.map +1 -1
- package/dist/components/assets/asset-detail.js +26 -11
- package/dist/components/assets/asset-detail.js.map +1 -1
- package/dist/components/assets/asset-locale.d.ts +9 -0
- package/dist/components/assets/asset-locale.js +16 -0
- package/dist/components/assets/asset-locale.js.map +1 -0
- package/dist/components/assets/asset-meta-label.d.ts +12 -0
- package/dist/components/assets/asset-meta-label.js +15 -0
- package/dist/components/assets/asset-meta-label.js.map +1 -0
- package/dist/components/assets/asset-metadata.d.ts +69 -15
- package/dist/components/assets/asset-metadata.js +99 -11
- package/dist/components/assets/asset-metadata.js.map +1 -1
- package/dist/components/assets/asset-search.js +8 -2
- package/dist/components/assets/asset-search.js.map +1 -1
- package/dist/components/assets/asset-thumb.js +6 -2
- package/dist/components/assets/asset-thumb.js.map +1 -1
- package/dist/components/assets/assets-collection-view-source.d.ts +23 -9
- package/dist/components/assets/assets-collection-view-source.js +78 -26
- package/dist/components/assets/assets-collection-view-source.js.map +1 -1
- package/dist/components/assets/assets-store.js +17 -4
- package/dist/components/assets/assets-store.js.map +1 -1
- package/dist/components/builder/builder-store.d.ts +21 -0
- package/dist/components/builder/builder-store.js +22 -0
- package/dist/components/builder/builder-store.js.map +1 -1
- package/dist/components/builder/canvas-commit-boundary.d.ts +22 -0
- package/dist/components/builder/canvas-commit-boundary.js +27 -0
- package/dist/components/builder/canvas-commit-boundary.js.map +1 -0
- package/dist/components/builder/canvas-rebase.d.ts +77 -0
- package/dist/components/builder/canvas-rebase.js +169 -0
- package/dist/components/builder/canvas-rebase.js.map +1 -0
- package/dist/components/builder/canvas-render-context.d.ts +6 -3
- package/dist/components/builder/canvas-render-context.js +17 -9
- package/dist/components/builder/canvas-render-context.js.map +1 -1
- package/dist/components/builder/composition-field-editor.d.ts +20 -2
- package/dist/components/builder/composition-field-editor.js +45 -27
- package/dist/components/builder/composition-field-editor.js.map +1 -1
- package/dist/components/builder/node-factory.js +15 -3
- package/dist/components/builder/node-factory.js.map +1 -1
- package/dist/components/builder/property-inspector.js +3 -1
- package/dist/components/builder/property-inspector.js.map +1 -1
- package/dist/components/builder/run-inspector.js +10 -6
- package/dist/components/builder/run-inspector.js.map +1 -1
- package/dist/components/cms/asset-field.d.ts +5 -2
- package/dist/components/cms/asset-field.js +34 -17
- package/dist/components/cms/asset-field.js.map +1 -1
- package/dist/components/cms/asset-picker.js +3 -1
- package/dist/components/cms/asset-picker.js.map +1 -1
- package/dist/components/cms/canvas-commit.d.ts +56 -0
- package/dist/components/cms/canvas-commit.js +35 -0
- package/dist/components/cms/canvas-commit.js.map +1 -0
- package/dist/components/cms/collection-table.js +23 -7
- package/dist/components/cms/collection-table.js.map +1 -1
- package/dist/components/cms/commit-policy.d.ts +6 -2
- package/dist/components/cms/commit-policy.js +1 -1
- package/dist/components/cms/commit-policy.js.map +1 -1
- package/dist/components/cms/detail-editor.js +11 -1
- package/dist/components/cms/detail-editor.js.map +1 -1
- package/dist/components/cms/use-document-draft.d.ts +62 -4
- package/dist/components/cms/use-document-draft.js +102 -32
- package/dist/components/cms/use-document-draft.js.map +1 -1
- package/dist/components/cms/use-live-url.d.ts +6 -1
- package/dist/components/cms/use-live-url.js +12 -9
- package/dist/components/cms/use-live-url.js.map +1 -1
- package/dist/components/collection-view/cms-collection-view-source.js +9 -5
- package/dist/components/collection-view/cms-collection-view-source.js.map +1 -1
- package/dist/components/deployment-setup-gate.js +10 -1
- package/dist/components/deployment-setup-gate.js.map +1 -1
- package/dist/components/records/record-lens.js +3 -8
- package/dist/components/records/record-lens.js.map +1 -1
- package/dist/lib/assets/upload.d.ts +25 -7
- package/dist/lib/assets/upload.js +30 -21
- package/dist/lib/assets/upload.js.map +1 -1
- package/dist/lib/cms/published-documents.d.ts +24 -6
- package/dist/lib/cms/published-documents.js +39 -6
- package/dist/lib/cms/published-documents.js.map +1 -1
- package/dist/lib/cms-views/view-model.d.ts +14 -101
- package/dist/lib/cms-views/view-model.js +20 -101
- package/dist/lib/cms-views/view-model.js.map +1 -1
- package/dist/lib/collection-view/collection-view-source.d.ts +6 -1
- package/dist/lib/collection-view/collection-view-source.js.map +1 -1
- package/dist/lib/engine-version.d.ts +1 -1
- package/dist/lib/engine-version.js +1 -1
- package/dist/lib/engine-version.js.map +1 -1
- package/dist/lib/i18n/messages.de.js +7 -3
- package/dist/lib/i18n/messages.de.js.map +1 -1
- package/dist/lib/i18n/messages.en.d.ts +5 -1
- package/dist/lib/i18n/messages.en.js +8 -4
- package/dist/lib/i18n/messages.en.js.map +1 -1
- package/dist/lib/operations/config-manifest-lookup.d.ts +1 -1
- package/dist/lib/operations/config-manifest-lookup.js +3 -3
- package/dist/lib/operations/config-manifest-lookup.js.map +1 -1
- package/dist/lib/persistence/deployment-readiness.js +14 -11
- package/dist/lib/persistence/deployment-readiness.js.map +1 -1
- package/dist/lib/persona/labels.js +1 -0
- package/dist/lib/persona/labels.js.map +1 -1
- package/dist/lib/query/index.d.ts +2 -2
- package/dist/lib/query/index.js +1 -1
- package/dist/lib/query/index.js.map +1 -1
- package/dist/lib/query/operations-query.d.ts +26 -0
- package/dist/lib/query/operations-query.js +12 -0
- package/dist/lib/query/operations-query.js.map +1 -1
- package/dist/lib/registry/index.js +2 -2
- package/dist/lib/registry/index.js.map +1 -1
- package/dist/lib/registry/preview.d.ts +10 -0
- package/dist/lib/registry/preview.js +13 -4
- package/dist/lib/registry/preview.js.map +1 -1
- package/dist/lib/routes/route-issues.js +6 -3
- package/dist/lib/routes/route-issues.js.map +1 -1
- package/dist/lib/workspace/workspace-source.js +6 -7
- package/dist/lib/workspace/workspace-source.js.map +1 -1
- package/dist/previews/entry-node.d.ts +14 -0
- package/dist/previews/entry-node.js +22 -0
- package/dist/previews/entry-node.js.map +1 -0
- package/dist/previews/harness.js +2 -16
- package/dist/previews/harness.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.de.js","sourceRoot":"","sources":["../../../src/lib/i18n/messages.de.ts"],"names":[],"mappings":"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","sourcesContent":["import type { TranslationCatalog } from './messages.en'\n\n/**\n * The engine-shipped **German** studio-chrome catalog (EC-398), importable as\n * `@elytracms/studio/locales/de` and passed by reference into\n * `defineStudio({ i18n: { locales: { de: deMessages } } })` — translations stay\n * code passed directly (EC-241's principle; no registry, no runtime fetch). A\n * consumer overrides individual strings by spreading:\n * `{ ...deMessages, 'some.key': 'eigene Formulierung' }`.\n *\n * Seeded 2026-07-15 as the best-of merge of the two hand-maintained consumer\n * catalogs (Naturkinder wins conflicts) + fresh translations for the keys both\n * lacked (incl. EC-397's sign-in/boot copy). Typed against\n * {@link TranslationCatalog} so an unknown/stale key fails typecheck;\n * `messages.de.test.ts` pins EXACT key parity with the EN source (no missing,\n * no stale, matching `{var}` placeholders) — a new engine string fails the\n * engine build until it is translated here.\n *\n * Sections mirror `messages.en.ts` so the files diff side-by-side.\n *\n * Glossar: Sammlung · Dokument · Feld · Medien · Komponente · Weiterleitung ·\n * Verweis · Version · Entwurf · veröffentlichen · Benutzer · Rolle ·\n * Einstellungen · Bereitstellung.\n */\nexport const deMessages: TranslationCatalog = {\n // ─────────────────────────────────────────────────────────────────────────\n // Common — generic, reused across surfaces\n // ─────────────────────────────────────────────────────────────────────────\n 'common.save': 'Speichern',\n 'common.saving': 'Wird gespeichert…',\n 'common.saveChanges': 'Änderungen speichern',\n 'common.cancel': 'Abbrechen',\n 'common.delete': 'Löschen',\n 'common.remove': 'Entfernen',\n 'common.add': 'Hinzufügen',\n 'common.edit': 'Bearbeiten',\n 'common.close': 'Schließen',\n 'common.copy': 'Kopieren',\n 'common.duplicate': 'Duplizieren',\n 'common.select': 'Auswählen',\n 'common.clear': 'Zurücksetzen',\n 'common.apply': 'Anwenden',\n 'common.upload': 'Hochladen',\n 'common.retry': 'Erneut versuchen',\n 'common.discard': 'Verwerfen',\n 'common.dismiss': 'Schließen',\n 'common.loading': 'Wird geladen…',\n 'common.searchPlaceholder': 'Suchen…',\n 'common.none': 'Keine',\n 'common.required': 'erforderlich',\n 'common.optional': 'optional',\n 'common.yes': 'Ja',\n 'common.no': 'Nein',\n 'common.true': 'wahr',\n 'common.false': 'falsch',\n 'common.backendUnreachable': 'Das Speicher-Backend ist nicht erreichbar.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Built-in navigation views (the section rail)\n // ─────────────────────────────────────────────────────────────────────────\n 'nav.cms.label': 'Inhalt',\n 'nav.cms.description': 'Sammlungen, Felder und Dokumente modellieren.',\n 'nav.components.label': 'Komponenten',\n 'nav.components.description': 'Registry der Primitive und Projektkomponenten durchsuchen.',\n 'nav.redirects.label': 'Weiterleitungen',\n 'nav.redirects.description': 'URL-Weiterleitungen (301/302) für diese Website erstellen und verwalten.',\n 'nav.assets.label': 'Medien',\n 'nav.assets.description': 'Hochgeladene Medien und Metadaten verwalten.',\n 'nav.users.label': 'Benutzer',\n 'nav.users.description': 'Verwalten, wer Zugriff auf diese Bereitstellung hat, und deren Rolle.',\n 'nav.settings.label': 'Einstellungen',\n 'nav.settings.description': 'Projektmetadaten und Sprachen konfigurieren.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Current-user menu (shell header)\n // ─────────────────────────────────────────────────────────────────────────\n 'userMenu.accountMenu': 'Kontomenü',\n 'userMenu.lightMode': 'Heller Modus',\n 'userMenu.darkMode': 'Dunkler Modus',\n 'userMenu.accountSettings': 'Kontoeinstellungen',\n 'userMenu.soon': 'Bald',\n 'userMenu.signOut': 'Abmelden',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Shell — top bar, section rail, boot/error frames, project chrome\n // ─────────────────────────────────────────────────────────────────────────\n 'shell.allProjects': 'Alle Projekte',\n 'shell.breadcrumb.label': 'Brotkrümelnavigation',\n 'shell.nav.label': 'Bereiche',\n 'shell.sidebar.expand': 'Seitenleiste ausklappen',\n 'shell.sidebar.collapse': 'Seitenleiste einklappen',\n 'shell.sidebar.collapseLabel': 'Einklappen',\n 'shell.nav.planned': 'Geplant',\n 'shell.nav.collapseView': '{name} einklappen',\n 'shell.nav.expandView': '{name} ausklappen',\n 'shell.nav.issuesCount': '{count} Sidebar-Probleme',\n // EC-606 — gespeicherte Dokumente einer Sammlung, die das Projekt nicht (mehr) deklariert.\n 'shell.nav.orphanedCollections':\n 'Gespeicherte Dokumente aus Sammlungen, die dieses Projekt nicht deklariert, sind im Studio ausgeblendet: {collections}. Um sie zurückzuholen, deklarieren Sie die Sammlung in „{file}“ erneut (oder stellen Sie ihre alte id wieder her).',\n 'shell.nav.orphanedCollections.item': '„{collection}“ ({count} gespeichert)',\n 'shell.nav.orphanedCollections.itemPublished':\n '„{collection}“ ({count} gespeichert, davon {published} veröffentlicht)',\n 'shell.sectionState.empty.title': 'Noch nichts vorhanden',\n 'shell.sectionState.empty.description': 'Dieser Bereich hat keine Inhalte für das aktive Projekt.',\n 'shell.sectionState.loading.description': 'Der aktuelle Stand dieses Bereichs wird geladen.',\n 'shell.sectionState.error.title': 'Etwas ist schiefgelaufen',\n 'shell.sectionState.error.description':\n 'Dieser Bereich konnte nicht geladen werden. Bitte versuchen Sie es gleich erneut.',\n 'shell.sectionState.unavailable.title': 'Nicht verfügbar',\n 'shell.sectionState.unavailable.description': 'Dieser Bereich ist für das aktive Projekt nicht verfügbar.',\n 'shell.sectionState.planned.title': 'Geplant',\n 'shell.sectionState.planned.description': 'Diese Oberfläche ist geplant und für dieses Projekt noch nicht aktiviert.',\n 'shell.sectionState.badge.empty': 'leer',\n 'shell.sectionState.badge.loading': 'lädt',\n 'shell.sectionState.badge.error': 'Fehler',\n 'shell.sectionState.badge.unavailable': 'nicht verfügbar',\n 'shell.sectionState.badge.planned': 'geplant',\n 'shell.projectNotFound.title': 'Projekt nicht gefunden',\n 'shell.projectNotFound.body':\n 'Dieses Projekt existiert nicht oder wurde gelöscht. Möglicherweise bestand es nur in dieser Sitzung.',\n 'shell.backToProjects': 'Zurück zu den Projekten',\n 'shell.routeNotFound.title': 'Seite nicht gefunden',\n 'shell.routeNotFound.body': 'Diese Studio-URL verweist auf keinen Bereich.',\n 'shell.projectSwitcher.recent': 'Zuletzt verwendet',\n 'shell.projects': 'Projekte',\n 'shell.projectSwitcher.browseAll': 'Alle Projekte durchsuchen',\n 'shell.project.notProvisioned': 'nicht bereitgestellt',\n 'shell.projectList.recent': 'Zuletzt verwendet',\n 'shell.projectList.empty.title': 'Keine Projekte',\n 'shell.projectCard.open': 'Projekt öffnen',\n 'shell.session.loading': 'Projekt wird geladen…',\n 'shell.session.error.title': 'Der gespeicherte Stand dieses Projekts konnte nicht geladen werden',\n 'shell.session.error.body':\n 'Das Studio greift gegenüber einem aktiven Backend niemals auf Beispielinhalte zurück – Ihre Daten sind sicher. Versuchen Sie es erneut, sobald das Backend erreichbar ist.',\n 'shell.workspaceGate.title': 'Workspace-Konfiguration ist ungültig',\n 'shell.workspaceGate.issuesLabel': 'Probleme der Workspace-Konfiguration',\n 'shell.backend.connecting': 'Verbindung zum Backend wird hergestellt…',\n 'shell.backend.notConfigured.title': 'Backend nicht konfiguriert',\n 'shell.backend.unavailable.title': 'Backend nicht verfügbar',\n 'shell.backend.unavailable.body':\n 'Das konfigurierte Convex-Deployment hat nicht geantwortet. Ihre Daten sind im Backend sicher – das Studio wechselt nicht zur lokalen Speicherung.',\n 'shell.backend.retryConnection': 'Verbindung erneut versuchen',\n // EC-258 — the unified deployment-setup boot gate.\n 'shell.deploymentSetup.title': 'Bereitstellung einrichten',\n 'shell.deploymentSetup.checking': 'Bereitstellung wird geprüft…',\n 'shell.deploymentSetup.description':\n 'Das Studio kann erst starten, wenn diese Punkte behoben sind. Korrigieren Sie alle Einträge und laden Sie anschließend neu.',\n 'shell.deploymentSetup.issuesLabel': 'Prüfungen der Bereitstellung',\n 'shell.deploymentSetup.fixLabel': 'Beheben',\n 'shell.deploymentSetup.retry': 'Erneut prüfen',\n // EC-399 — expected deployment env vars (presence only) on the setup screen.\n 'shell.deploymentSetup.envSection': 'Umgebungsvariablen der Bereitstellung',\n 'shell.deploymentSetup.envSectionHint':\n 'Umgebungsvariablen, die diese Bereitstellung erwartet — nur Vorhandensein, Werte werden nie angezeigt. `elytra doctor` prüft sie verlässlich.',\n 'shell.unsavedChanges.title': 'Nicht gespeicherte Änderungen',\n 'shell.unsavedChanges.body':\n 'Sie haben nicht gespeicherte Änderungen. Speichern Sie sie, bevor Sie die Seite verlassen, oder verwerfen Sie sie.',\n 'shell.unsavedChanges.saving': 'Wird gespeichert…',\n 'shell.devLogin.badge': 'Dev-Login',\n 'shell.devLogin.hint':\n 'Automatische Dev-Anmeldung: Das Studio wurde über VITE_ELYTRA_DEV_LOGIN automatisch angemeldet (nur in Entwicklungs-Builds). Entfernen Sie die Variable, um die echte Anmeldung zu testen.',\n 'shell.playground.badge': 'Playground',\n 'shell.playground.hint':\n 'Playground-Modus: Daten liegen im Arbeitsspeicher dieses Geräts und werden beim Neuladen zurückgesetzt. Es wird nichts in einem Backend gespeichert.',\n 'shell.deliveryHealth.dismiss': 'Schließen',\n 'shell.rolePolicyDrift.title':\n 'Diese Deployment-Umgebung setzt eine andere Rollenrichtlinie durch, als das Projekt deklariert – Berechtigungen sind möglicherweise nicht wie erwartet.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Customization issues — the section-rail foot (`NavIssues`)\n // ─────────────────────────────────────────────────────────────────────────\n // EC-478. Jede `{var}` ist ein BEZEICHNER (Eintrags-id, Erweiterungspunkt,\n // Komponenten-/Sammlungs-id) und bleibt bewusst unübersetzt. Fachbegriffe, die\n // im Code stehen (`reuse.component`, `reuse.relationProp`, `studio.config`,\n // Prop, Slot, Block), bleiben ebenfalls unübersetzt — der Entwickler muss sie\n // in seiner Konfiguration wiederfinden.\n // EC-479 — das Projekt deklariert nichts, womit das Studio arbeiten könnte.\n 'customization.issue.noCollections':\n 'Dieses Projekt deklariert keine Inhaltssammlungen. Fügen Sie sie in „{file}“ hinzu — das Studio zeigt Ihr Schema oder keines, niemals Beispielinhalte.',\n 'customization.issue.duplicateOverrideId':\n 'Doppelte Überschreibungs-id „{id}“ für „{point}“ — die spätere wird ignoriert.',\n 'customization.issue.unknownOverrideTarget':\n 'Die Überschreibung „{id}“ für „{point}“ passt zu keinem eingebauten Baustein, den sie ersetzen könnte.',\n 'customization.issue.invalidOverride': 'Die Überschreibung „{id}“ für „{point}“ ist ungültig: {reason}',\n 'customization.issue.reason.rendererNotAComponent': 'der Renderer ist keine Komponente',\n 'customization.issue.reason.viewNoRender': 'die Ansicht hat keine render-Funktion',\n 'customization.issue.reason.viewNoLabel': 'die Ansicht hat keine Beschriftung',\n 'customization.issue.derivedIdBuiltinCollision':\n 'Die Ansicht „{label}“ für „{point}“ leitet die id „{id}“ aus ihrer Beschriftung ab, was der eingebauten Ansicht „{id}“ entspricht — die eingebaute Ansicht bleibt erhalten und diese wird ignoriert. Geben Sie eine explizite id an, um eine eingebaute Ansicht absichtlich zu ersetzen.',\n 'customization.issue.derivedIdCollectionCollision':\n 'Die Ansichts-id „{id}“ für „{point}“ ist mehrdeutig: Sie verbindet die Sammlungen {collections} mit „-“, und eine Sammlung heißt buchstäblich „{joined}“ — deren eigene Ansicht leitet dieselbe id ab. Geben Sie dieser Gruppe eine explizite id.',\n // EC-467 — die Deklaration wiederverwendbarer Elemente (`defineStudio({ reuse })`).\n 'builder.reuse.config.unknownComponent':\n 'Wiederverwendbare Elemente: Die Studio-Konfiguration deklariert reuse.component „{component}“, was keine registrierte Komponente ist. Korrigieren Sie die id oder entfernen Sie den reuse-Block, damit das Studio die Einbettung selbst ermittelt.',\n 'builder.reuse.config.noRelationProp':\n 'Wiederverwendbare Elemente: Die deklarierte Einbettung „{component}“ hat kein Relations-Prop für ein einzelnes Dokument und kann daher auf kein wiederverwendbares Dokument zeigen. Eine Einbettung benötigt genau ein Relations-Prop mit Kardinalität eins.',\n 'builder.reuse.config.unknownRelationProp':\n 'Wiederverwendbare Elemente: Die deklarierte Einbettung „{component}“ hat kein Relations-Prop für ein einzelnes Dokument mit dem Namen „{relationProp}“. Ihre Relations-Props sind: {props}.',\n 'builder.reuse.config.ambiguousRelationProp':\n 'Wiederverwendbare Elemente: Die deklarierte Einbettung „{component}“ hat {count} Relations-Props für ein einzelnes Dokument ({props}) — ergänzen Sie reuse.relationProp, um anzugeben, welches auf das wiederverwendbare Dokument zeigt.',\n 'builder.reuse.config.unknownCollection':\n 'Wiederverwendbare Elemente: „{component}.{relationProp}“ verweist auf die Sammlung „{collection}“, die dieses Projekt nicht definiert.',\n 'builder.reuse.config.noBlocksField':\n 'Wiederverwendbare Elemente: Die Sammlung „{collection}“ hinter „{component}.{relationProp}“ hat kein Block-Feld (Komposition), sodass die Einbettung nichts einbinden kann.',\n 'builder.reuse.config.ambiguousInference':\n 'Wiederverwendbare Elemente: {count} Komponenten haben die Form einer wiederverwendbaren Einbettung ({components}). Ein Projekt hat genau eine wiederverwendbare Einbettung, deshalb rät das Studio nicht — deklarieren Sie sie in studio.config als reuse: { component: \\'<id>\\' }. Bis dahin sind die Wiederverwendungs-Gesten deaktiviert.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Auth / errors\n // ─────────────────────────────────────────────────────────────────────────\n 'auth.signIn': 'Anmelden',\n // EC-397 — the engine sign-in screen (`SignInView`/`SignInScreen`).\n 'auth.signIn.heading': 'Bei {productName} anmelden',\n 'auth.signIn.headingCreate': 'Konto erstellen',\n 'auth.signIn.subtext.continue': 'Weiter zu {project}.',\n 'auth.signIn.subtext.register': 'Registrieren für {project}.',\n 'auth.signIn.subtext.generic': 'Melden Sie sich mit Ihrem Studio-Konto an.',\n 'auth.signIn.emailLabel': 'E-Mail',\n 'auth.signIn.emailPlaceholder': 'name@beispiel.de',\n 'auth.signIn.passwordLabel': 'Passwort',\n 'auth.signIn.submit': 'Anmelden',\n 'auth.signIn.submitCreate': 'Konto erstellen',\n 'auth.signIn.submitting': 'Anmeldung läuft…',\n 'auth.signIn.submittingCreate': 'Konto wird erstellt…',\n 'auth.signIn.toggle.firstTime': 'Zum ersten Mal bei dieser Bereitstellung?',\n 'auth.signIn.toggle.alreadyHave': 'Sie haben bereits ein Konto für diese Bereitstellung?',\n 'auth.signIn.toggle.signIn': 'Anmelden',\n 'auth.signIn.toggle.createAccount': 'Konto erstellen',\n 'auth.signIn.devAccounts.title': 'Playground-Modus — vorbereitete Entwicklungskonten',\n // EC-397 — engine-classified sign-in failures (the EC-362/EC-363 reason\n // codes). Each message MUST stay byte-identical to the auth-adapter copy it\n // localizes: `signInErrorMessageKey` (lib/auth-errors.ts) recognizes a\n // failure by exact EN-message match, so a reworded adapter message simply\n // falls back to the raw English until re-synced here —\n // `lib/auth-errors.test.ts` pins the sync against the real classifier.\n 'auth.signIn.error.invalidCredentials': 'E-Mail-Adresse oder Passwort ist falsch.',\n 'auth.signIn.error.invalidCredentialsSignUp':\n 'Diese E-Mail-Adresse oder dieses Passwort kann nicht verwendet werden (Passwort zu kurz?).',\n 'auth.signIn.error.accountExists': 'Für diese E-Mail-Adresse gibt es bereits ein Konto. Bitte melden Sie sich an.',\n 'auth.signIn.error.deploymentMisconfigured':\n 'Diese Bereitstellung kann Sie nicht anmelden: Der Auth-Signaturschlüssel ist nicht gesetzt. Führen Sie `npx @convex-dev/auth` für diese Bereitstellung aus und versuchen Sie es erneut. (Die Bereitstellungsprüfung meldet dasselbe.)',\n 'auth.signIn.error.notInvited':\n 'Diese Bereitstellung ist nur auf Einladung zugänglich. Bitten Sie eine Administratorin oder einen Administrator, Ihre E-Mail-Adresse einzuladen, und erstellen Sie dann Ihr Konto.',\n 'auth.signIn.error.tooManyAttempts':\n 'Zu viele fehlgeschlagene Anmeldeversuche — warten Sie einen Moment und versuchen Sie es dann erneut.',\n 'auth.signIn.error.serverError':\n 'Anmeldung fehlgeschlagen (unerwarteter Serverfehler) — prüfen Sie die Logs der Bereitstellung.',\n 'auth.signIn.error.serverErrorSignUp':\n 'Registrierung fehlgeschlagen (unerwarteter Serverfehler) — prüfen Sie die Logs der Bereitstellung.',\n 'auth.signIn.error.unavailable': 'Die Anmeldung ist derzeit nicht verfügbar.',\n 'auth.signIn.error.playgroundSignUp':\n 'Die Registrierung ist im Playground-Modus nicht verfügbar — verwenden Sie die unten aufgeführten Entwicklungskonten.',\n // EC-397 — root-route boot states (`createStudioRootRoute`).\n 'auth.boot.checkingSession': 'Sitzung wird geprüft…',\n 'error.dismiss': 'Fehler schließen',\n // EC-403 — the blocking session-expired re-auth overlay\n // (`session-expired-overlay.tsx`), raised app-wide when any operation fails\n // the session-expired predicate; re-auth happens in place, no navigation.\n 'error.sessionExpiredTitle': 'Sie wurden abgemeldet',\n 'error.sessionExpired':\n 'Sie wurden abgemeldet, daher werden Ihre letzten Änderungen nicht gespeichert. Melden Sie sich erneut an, um weiterzuarbeiten — Ihre ungespeicherten Änderungen bleiben genau hier erhalten.',\n\n // EC-494 — Betriebs-Fehler, die die Operations-Grenze überqueren. Bezeichner\n // (Operationsnamen, Entitätsarten, Dokumentschlüssel, Feldnamen) bleiben unübersetzt.\n // EC-494 — die Titel der Fehler-Badges im Banner.\n 'operations.errorLabel.validation': 'Konnte nicht gespeichert werden',\n 'operations.errorLabel.not-found': 'Nicht gefunden',\n 'operations.errorLabel.conflict': 'Konflikt',\n 'operations.errorLabel.backend-unavailable': 'Verbindungsproblem',\n 'operations.errorLabel.unauthorized': 'Nicht erlaubt',\n 'operations.errorLabel.unknown': 'Etwas ist schiefgelaufen',\n 'operations.error.invalidInput': 'Die Eingabe für „{operation}“ ist ungültig.',\n 'operations.error.notFound': 'Kein {entity} für „{target}“ gefunden.',\n 'operations.error.conflict': '„{target}“ steht im Konflikt mit einem vorhandenen Datensatz.',\n 'operations.error.revisionConflict':\n '„{target}“ wurde geändert, seit Sie es geladen haben (jetzt Revision {revision}) — laden Sie es neu und übernehmen Sie Ihre Änderung erneut.',\n 'operations.error.revisionConflictGone': '„{target}“ existiert nicht mehr — es wurde gelöscht, seit Sie es geladen haben.',\n 'operations.error.documentExists': '„{target}“ existiert bereits — beim Anlegen wird nie ein Dokument überschrieben.',\n 'operations.error.singletonExists':\n '„{collection}“ hat bereits sein Dokument „{target}“ — öffnen Sie es, statt ein weiteres anzulegen.',\n 'operations.error.patchConflictOne':\n '{count} Änderung an „{target}“ wurde abgelehnt: dasselbe Feld wurde geändert, seit Sie das Dokument geladen haben.',\n 'operations.error.patchConflict':\n '{count} Änderungen an „{target}“ wurden abgelehnt: dieselben Felder wurden geändert, seit Sie das Dokument geladen haben.',\n 'operations.error.backendUnavailable': 'Das Persistenz-Backend ist nicht erreichbar.',\n 'operations.error.unauthorized': 'Die Operation „{operation}“ wurde vom Autorisierungs-Hook abgelehnt.',\n 'operations.error.unknown': 'Es ist ein unbekannter Fehler bei der Operation aufgetreten.',\n 'operations.error.documentSchemaViolation': 'Das Dokument „{collection}:{id}“ verletzt das Schema seiner Sammlung.',\n 'operations.error.strictReferencesBlockDelete':\n '„{target}“ kann nicht gelöscht werden: {count} Dokumente verweisen über strikte Beziehungsfelder darauf — {named}{more}. Entfernen Sie zuerst diese Verweise.',\n 'operations.error.strictReferencesBlockDeleteOne':\n '„{target}“ kann nicht gelöscht werden: {count} Dokument verweist über strikte Beziehungsfelder darauf — {named}. Entfernen Sie zuerst diese Verweise.',\n 'operations.error.strictReferencesBlockUnpublish':\n 'Die Veröffentlichung von „{target}“ kann nicht zurückgenommen werden: {count} Dokumente verweisen über strikte Beziehungsfelder darauf — {named}{more}. Entfernen Sie zuerst diese Verweise.',\n 'operations.error.strictReferencesBlockUnpublishOne':\n 'Die Veröffentlichung von „{target}“ kann nicht zurückgenommen werden: {count} Dokument verweist über strikte Beziehungsfelder darauf — {named}. Entfernen Sie zuerst diese Verweise.',\n // EC-589 — die Gegenrichtung von `strict: true`: Veröffentlichen verweigert, solange ein striktes Ziel fehlt oder unveröffentlicht ist.\n 'operations.error.strictTargetsUnpublishedOne':\n 'Das Dokument „{target}“ kann nicht veröffentlicht werden: Ein Ziel einer strikten Beziehung fehlt oder ist unveröffentlicht — veröffentlichen Sie es zuerst.',\n 'operations.error.strictTargetsUnpublished':\n 'Das Dokument „{target}“ kann nicht veröffentlicht werden: Ziele strikter Beziehungen fehlen oder sind unveröffentlicht — veröffentlichen Sie sie zuerst.',\n 'operations.error.publishNeedsLocales':\n '„{target}“ kann nicht veröffentlicht werden: Seine Sammlung deklariert lokalisierte Felder ({fields}), und es wurde keine Sprachkonfiguration übergeben, um deren ausgeblendete Werte zu beurteilen.',\n 'operations.error.versionNotPinnable':\n 'Version {version} von „{target}“ wurde nicht durch eine Veröffentlichung erfasst und kann daher nicht live geschaltet werden — stellen Sie sie im Entwurf wieder her und veröffentlichen Sie diesen.',\n 'operations.errorDetail.andMore': ' und {count} weitere',\n\n // EC-494 — Fehler von Inhaltsabfragen (Filterleiste + Listing-Hinweis im Canvas).\n // „filterable“, „asc“, „desc“, „in“, „empty“ sind Schlüsselwörter aus der Konfiguration\n // und bleiben wörtlich stehen.\n 'content.queryError.nonFilterableField':\n 'Das Feld \"{field}\" in \"{collection}\" ist nicht als filterable deklariert.',\n 'content.queryError.unknownField': 'Das Feld \"{field}\" existiert in \"{collection}\" nicht.',\n 'content.queryError.unknownCollection': 'Die Sammlung \"{collection}\" ist nicht definiert.',\n 'content.queryError.filterShape':\n 'Der Filter für \"{field}\" muss ein Skalar oder ein Operator-Objekt sein.',\n 'content.queryError.filterNoOperators': 'Der Filter für \"{field}\" enthält keine Operatoren.',\n 'content.queryError.unknownOperator':\n 'Unbekannter Filteroperator \"{operator}\" auf \"{field}\" — das Vokabular ist genau {vocabulary}.',\n 'content.queryError.operatorInRequiresArray':\n 'Der Operator \"in\" auf \"{field}\" erwartet ein Array aus Skalaren.',\n 'content.queryError.operatorRequiresString':\n 'Der Operator \"{operator}\" auf \"{field}\" erwartet einen Zeichenkettenwert.',\n 'content.queryError.operatorEmptyRequiresBoolean':\n 'Der Operator \"empty\" auf \"{field}\" erwartet einen Wahrheitswert (true = ist leer).',\n 'content.queryError.operatorRequiresScalar':\n 'Der Operator \"{operator}\" auf \"{field}\" erwartet einen skalaren Wert.',\n 'content.queryError.sortNotFilterable':\n 'Das Sortierfeld \"{field}\" in \"{collection}\" ist nicht als filterable deklariert.',\n 'content.queryError.sortUnknownField':\n 'Das Sortierfeld \"{field}\" existiert in \"{collection}\" nicht.',\n 'content.queryError.sortDirection': 'Die Sortierrichtung muss \"asc\" oder \"desc\" sein.',\n 'content.queryError.limitPositiveInteger': 'Das Limit muss eine positive ganze Zahl sein.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — collection list / view bar / filters / cells\n // ─────────────────────────────────────────────────────────────────────────\n // EC-412 — the CMS section landing (`cms-index.tsx`): the collection grid.\n 'cms.index.heading': 'Inhalt',\n 'cms.index.description':\n 'Schemabasierte Sammlungen. Öffnen Sie eine Sammlung, um ihre Dokumente als Tabelle zu durchsuchen und im Detail-Editor zu bearbeiten.',\n 'cms.index.fieldCount.one': '{count} Feld',\n 'cms.index.fieldCount.other': '{count} Felder',\n 'cms.index.singleDocument': 'Einzeldokument',\n 'cms.list.new': 'Neu',\n 'cms.list.newPage': 'Neue Seite',\n 'cms.list.newNamed': 'Neu: {noun}',\n 'cms.list.moreActions': 'Weitere Aktionen',\n 'cms.list.rowActionsColumnLabel': 'Zeilenaktionen',\n 'cms.list.rowActionsLabel': 'Aktionen für {id}',\n 'cms.list.rowAction.open': 'Öffnen',\n 'cms.list.import': 'Importieren…',\n 'cms.list.export': 'Exportieren',\n 'cms.list.forReview': 'Zur Überprüfung',\n 'cms.list.count': '{count} {noun}',\n 'cms.list.countFiltered': '{visible} von {total} {noun}',\n 'cms.list.emptyNone': 'Noch keine {noun}.',\n 'cms.list.emptyFiltered': 'Keine Dokumente entsprechen den Filtern der aktuellen Ansicht.',\n 'cms.list.selectAll': 'Alle Dokumente in der Ansicht auswählen',\n 'cms.list.selectRow': '{title} auswählen',\n 'cms.list.column.title': 'Titel',\n 'cms.list.column.state': 'Status',\n // EC-448 — Icon-Header der fixierten Status-Punkt-Spalte (nur `aria-label`/`title`).\n 'cms.list.column.statusHeader': 'Status',\n 'cms.list.column.url': 'URL',\n // EC-445 — reserved date pseudo-columns (participate in the columns model).\n 'cms.list.column.updatedAt': 'Aktualisiert',\n 'cms.list.column.publishedAt': 'Veröffentlicht',\n // EC-346 — the State column's per-row badge (`DocStateBadge`); was hardcoded\n // English. Distinct keys from `cms.editor.draftState`/`publishedState` (title\n // case, editor header) and `cms.filter.state.*`/`cms.reference.*Badge` (filter\n // builder / reference dialog) — same words, different UI contexts (EC-241).\n 'cms.docState.published': 'veröffentlicht',\n // EC-448 — dritter Dok-Status (veröffentlicht mit unveröffentlichten Änderungen).\n 'cms.docState.changed': 'geändert',\n 'cms.docState.draft': 'Entwurf',\n // EC-479 — ohne Projektsprachen kann keine CMS-Sitzung geöffnet werden.\n 'cms.session.noLocales.title': 'Dieses Projekt deklariert keine Sprachen',\n 'cms.session.noLocales.body':\n 'Fügen Sie Ihrer Projektkonfiguration eine locales-Liste hinzu. Die Standardsprache ist der Schlüssel, unter dem Ihre Inhalte gespeichert werden — das Studio wählt sie deshalb nicht für Sie aus.',\n 'cms.list.view.all': 'Alle Einträge',\n 'cms.list.unknownCollection': 'Unbekannte Sammlung {id}.',\n 'cms.list.import.noId': '(keine ID)',\n 'cms.list.display.ariaLabel': 'Anzeigeoptionen',\n 'cms.list.display.title': 'Anzeige: Layout und Spalten',\n 'cms.list.display.layout': 'Layout',\n 'cms.list.display.flatList': 'Flache Liste',\n 'cms.list.display.pageHierarchy': 'Seitenhierarchie',\n 'cms.list.display.columns': 'Spalten · die erste sichtbare ist der Titel',\n 'cms.list.display.toggleColumn': 'Spalte {field} umschalten',\n 'cms.list.display.titleTag': '(Titel)',\n 'cms.list.display.moveColumnUp': 'Spalte {field} nach oben verschieben',\n 'cms.list.display.moveColumnDown': 'Spalte {field} nach unten verschieben',\n 'cms.list.bulk.count': '{count} ausgewählt',\n 'cms.list.bulk.publish': 'Veröffentlichen',\n 'cms.list.bulk.unpublish': 'Zurückziehen',\n 'cms.list.bulk.noSettableFields': 'Keine filterbaren Skalarfelder zum Setzen.',\n 'cms.list.bulk.setField': 'Feld setzen',\n 'cms.list.bulk.clearSelection': 'Auswahl aufheben',\n // EC-494 — die beiden studio-seitigen Fehlergründe je Eintrag.\n 'cms.list.bulk.error.notInSession': 'Das Dokument ist nicht mehr in der Sitzung.',\n 'cms.list.bulk.error.notValidToPublish':\n 'Das Dokument ist nicht gültig zum Veröffentlichen.',\n 'cms.list.bulk.set.set': 'Setze',\n 'cms.list.bulk.set.to': 'auf',\n 'cms.list.bulk.set.valueAria': 'Wert setzen',\n 'cms.list.bulk.set.apply': 'Auf Auswahl anwenden',\n 'cms.list.bulk.report.verb.setField': '{field} setzen',\n 'cms.list.bulk.report.verb.publish': 'veröffentlichen',\n 'cms.list.bulk.report.verb.unpublish': 'zurückziehen',\n 'cms.list.bulk.report.verb.delete': 'löschen',\n 'cms.list.bulk.report.summary': 'Sammelaktion {action}: {succeeded} erfolgreich',\n 'cms.list.bulk.report.failedSuffix': ', {count} fehlgeschlagen',\n 'cms.list.bulk.report.failedBadge': '{count} fehlgeschlagen',\n 'cms.list.bulk.report.done': 'fertig',\n 'cms.list.bulk.error.invalidSetField': 'Feld-Setzen fehlt Feld/Wert oder das Sammlungsschema.',\n 'cms.filter.button': 'Filter',\n 'cms.filter.summaryMultiple': '{count} Filter',\n 'cms.filter.clearAria': 'Filter löschen',\n 'cms.filter.refineSession': 'Verfeinern · diese Sitzung',\n 'cms.filter.clearAll': 'Alle löschen',\n 'cms.filter.add': 'Filter hinzufügen',\n 'cms.filter.andHint': 'Alle Bedingungen müssen zutreffen (UND)',\n 'cms.filter.fieldAria': 'Filterfeld',\n 'cms.filter.operatorAria': 'Filteroperator',\n 'cms.filter.remove': 'Filter entfernen',\n // EC-494 — die beiden studio-seitigen Klausel-Probleme.\n 'cms.filter.issue.stateOperator': 'Status-Filter unterstützen nur \"eq\" und \"in\".',\n 'cms.filter.issue.stateValue': 'Der Status muss \"draft\" oder \"published\" sein.',\n 'cms.filter.valueAria': 'Filterwert',\n 'cms.filter.valueListPlaceholder': 'Wert, Wert, …',\n 'cms.filter.pickRelation': 'Auswählen…',\n 'cms.filter.state.published': 'veröffentlicht',\n 'cms.filter.state.draft': 'Entwurf',\n // Operator labels (EC-345) — keyed by operator AND field type in `operatorLabelKey`.\n 'cms.filter.op.contains': 'enthält',\n 'cms.filter.op.equals': 'ist gleich',\n 'cms.filter.op.is': 'ist',\n 'cms.filter.op.startsWith': 'beginnt mit',\n 'cms.filter.op.endsWith': 'endet mit',\n 'cms.filter.op.isAnyOf': 'ist einer von',\n 'cms.filter.op.lessThan': 'kleiner als',\n 'cms.filter.op.atMost': 'höchstens',\n 'cms.filter.op.greaterThan': 'größer als',\n 'cms.filter.op.atLeast': 'mindestens',\n 'cms.filter.op.on': 'am',\n 'cms.filter.op.before': 'vor',\n 'cms.filter.op.onOrBefore': 'am oder vor',\n 'cms.filter.op.after': 'nach',\n 'cms.filter.op.onOrAfter': 'am oder nach',\n 'cms.filter.op.isEmpty': 'ist leer',\n 'cms.filter.op.isNotEmpty': 'ist nicht leer',\n 'cms.cell.fallbackTitle': 'Zeigt {source} (Ersatz) — noch keine {requested}-Übersetzung. Zum Übersetzen bearbeiten.',\n 'cms.cell.richText': 'Rich Text',\n 'cms.cell.itemCount.one': '{count} Element',\n 'cms.cell.itemCount.other': '{count} Elemente',\n 'cms.cell.object': 'Objekt',\n 'cms.cell.blockCount.one': '{count} Block',\n 'cms.cell.blockCount.other': '{count} Blöcke',\n 'cms.cell.createsVariantTitle': 'Beim Speichern wird die {locale}-Übersetzung dieses Feldes erstellt.',\n 'cms.cell.newVariant': 'neu',\n 'cms.cell.editAria': '{field} von {title} bearbeiten',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — document detail editor\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.editor.notFoundTitle': 'Nicht gefunden',\n 'cms.editor.backToList': 'Zurück zu {label}',\n 'cms.editor.publishFailed': 'Veröffentlichung fehlgeschlagen.',\n 'cms.editor.publishFailedReason': 'Veröffentlichung fehlgeschlagen: {error}',\n 'cms.editor.saveFailed': 'Speichern fehlgeschlagen',\n 'cms.editor.unsavedChanges': 'Nicht gespeicherte Änderungen',\n 'cms.editor.saved': 'Gespeichert',\n // 0.0.42 (round 3): the standalone \"View live\" button is retired — opening the live\n // page now hangs off the header URL row's leaf segment. These strings still drive the\n // leaf's tooltip (open-live target + the published-gating reasons).\n 'cms.editor.openLiveUrl': '{path} öffnen',\n 'cms.editor.loadingLiveUrl': 'Live-URL wird geladen…',\n 'cms.editor.publishToViewLive': 'Veröffentlichen, um die Live-Seite zu sehen',\n 'cms.editor.setFrontendUrlHint': 'frontendUrl in elytra.config.ts setzen, um zu aktivieren',\n 'cms.editor.switchToDraftToPublish': 'Zum Entwurf wechseln, um zu veröffentlichen',\n 'cms.editor.fixIssuesToPublish.one': '{count} Problem beheben, um zu veröffentlichen',\n 'cms.editor.fixIssuesToPublish.other': '{count} Probleme beheben, um zu veröffentlichen',\n 'cms.editor.publishing': 'Wird veröffentlicht…',\n 'cms.editor.publishedState': 'Veröffentlicht',\n 'cms.editor.publish': 'Veröffentlichen',\n 'cms.editor.moreActions': 'Weitere Aktionen',\n 'cms.editor.unpublish': 'Veröffentlichung zurückziehen',\n // 0.0.39 — the Publish button is a split button: primary Publish (stay) + a\n // \"Publish & close\" dropdown item (publish, then return to the list). Replaces the\n // retired EC-316 \"Save & close\" (autosave made a bare \"Save\" meaningless).\n 'cms.editor.publishActions': 'Veröffentlichungsoptionen',\n 'cms.editor.publishAndClose': 'Veröffentlichen & schließen',\n 'cms.editor.saveAndClose': 'Speichern & schließen',\n 'cms.editor.duplicateCreated': 'Duplikat als neuer Entwurf erstellt',\n 'cms.editor.discardDraft': 'Änderungen verwerfen',\n 'cms.editor.discardDraftUpToDateHint':\n 'Der Entwurf entspricht der veröffentlichten Version — es gibt nichts zu verwerfen.',\n 'cms.editor.switchToDraftToDiscard': 'Zum Entwurf wechseln, um Änderungen zu verwerfen',\n 'cms.editor.discardDraftTitle': 'Entwurfsänderungen verwerfen?',\n 'cms.editor.discardDraftDescription':\n 'Dadurch wird der Entwurf auf den aktuell veröffentlichten Inhalt zurückgesetzt. Ihre unveröffentlichten Änderungen werden ersetzt — ein Schnappschuss bleibt im Versionsverlauf erhalten.',\n 'cms.editor.discardDraftConfirm': 'Änderungen verwerfen',\n 'cms.editor.discardingDraft': 'Änderungen werden verworfen…',\n 'cms.editor.draftState': 'Entwurf',\n 'cms.editor.publishToViewPublished': 'Dieses Dokument veröffentlichen, um die veröffentlichte Version zu sehen',\n 'cms.editor.publishedReadOnlyBanner': 'Sie sehen die veröffentlichte Version – schreibgeschützt.',\n 'cms.editor.switchToDraft': 'Zum Entwurf wechseln',\n 'cms.editor.loadingPublishedVersion': 'Veröffentlichte Version wird geladen…',\n 'cms.editor.noPublishedVersion': 'Keine veröffentlichte Version für dieses Dokument gefunden.',\n 'cms.editor.unsavedChangesGuard':\n 'Sie haben nicht gespeicherte Änderungen an diesem Datensatz. Speichern Sie sie vor dem Verlassen oder verwerfen Sie sie.',\n 'cms.editor.readOnlyBadge': 'schreibgeschützt',\n // EC-318 — connected fields: the per-field localization connection affordance that\n // replaces EC-176's passive \"showing EN\" text. Shown only on a localized field in a\n // non-base locale (never on the base locale, non-localized fields, or read-only).\n 'cms.editor.localeFollowsBase': 'Folgt {base}',\n 'cms.editor.localeFollowsHint':\n 'Dieses Feld folgt dem Wert für {base}. Geben Sie eine Übersetzung ein oder übernehmen Sie zunächst eine Kopie aus {base}.',\n 'cms.editor.localeFillFromBase': 'Aus {base} übernehmen',\n 'cms.editor.localeTranslated': 'Übersetzt',\n 'cms.editor.localeTranslatedHint':\n 'Für {locale} übersetzt. Wenn Sie den Text leeren, folgt er wieder dem Wert für {base} — eine absichtlich leere Übersetzung wird nicht unterstützt.',\n 'cms.editor.localeResetToBase': 'Auf {base} zurücksetzen',\n 'cms.editor.localeResetTitle': 'Auf den Wert für {base} zurücksetzen?',\n 'cms.editor.localeResetDescription':\n 'Dadurch wird die Übersetzung dieses Felds für {locale} entfernt. Bis zu einer neuen Übersetzung folgt es wieder dem Wert für {base}.',\n 'cms.editor.localeResetConfirm': 'Auf {base} zurücksetzen',\n 'cms.editor.issuesPane': 'Probleme',\n 'cms.editor.detailsPane': 'Details',\n 'cms.editor.servedAt': 'Ausgeliefert unter {path}',\n 'cms.editor.slugUrlHint':\n 'Die URL wird aus dem Slug (und dem übergeordneten Element) abgeleitet – Slug festlegen, um sie zu definieren.',\n 'cms.editor.defaultGroup': 'Felder',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — issues pane (validation)\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.issues.none': 'Keine Probleme',\n 'cms.issues.satisfied': 'Dieses Dokument entspricht dem Sammlungsschema.',\n // EC-443: value fix — the calque „Zu label“ read as broken German.\n 'cms.issues.goToField': 'Zum Feld „{field}“',\n // EC-443 — issue-card titles (one per CmsIssueCode, see messages.en.ts).\n 'cms.issue.duplicate-collection': 'Doppelte Sammlung',\n 'cms.issue.duplicate-field': 'Doppeltes Feld',\n 'cms.issue.unknown-collection': 'Unbekannte Sammlung',\n 'cms.issue.invalid-collection-config': 'Ungültige Sammlungskonfiguration',\n 'cms.issue.invalid-field-config': 'Ungültige Feldkonfiguration',\n 'cms.issue.reserved-field-name': 'Reservierter Feldname',\n 'cms.issue.missing-required-field': 'Pflichtfeld fehlt',\n 'cms.issue.invalid-field-value': 'Ungültiger Wert',\n 'cms.issue.invalid-field-value.warning': 'Wert prüfen',\n 'cms.issue.unknown-relation-target': 'Fehlende Referenz',\n 'cms.issue.unpublished-relation-target': 'Unveröffentlichte Referenz',\n 'cms.issue.cardinality-violation': 'Falsche Anzahl von Werten',\n 'cms.issue.unknown-asset': 'Fehlende Mediendatei',\n 'cms.issue.duplicate-document': 'Doppelter Eintrag',\n 'cms.issue.unknown-locale': 'Unbekannte Sprache',\n 'cms.issue.missing-localized-value': 'Fehlende Übersetzung',\n 'cms.issue.route-conflict': 'URL-Konflikt',\n 'cms.issue.redirect-loop': 'Weiterleitungsschleife',\n 'cms.issue.invalid-redirect': 'Doppelte Weiterleitung',\n 'cms.issue.unknown-route-target': 'Fehlende Seite',\n 'cms.issue.hierarchy-cycle': 'Schleife in der Seitenhierarchie',\n 'cms.issue.document-nesting-depth': 'Inhalt zu tief verschachtelt',\n 'cms.issue.singleton-document-drift': 'Mehr als ein Dokument',\n 'cms.issue.duplicate-alias': 'Slot doppelt belegt',\n 'cms.issue.unknown-alias': 'Unbekannter Slot',\n 'cms.issue.unfilled-slot': 'Leerer Slot',\n 'cms.issue.custom-validation': 'Validierungsregel',\n 'cms.issue.hidden-predicate-error': 'Fehlerhafte Sichtbarkeitsregel',\n 'cms.issue.unaddressable-url': 'Nicht erreichbare URL',\n 'cms.issue.unknown-version': 'Unbekannte Version',\n 'cms.issue.invalid-stored-document': 'Unlesbares gespeichertes Dokument',\n // EC-443 — issue-card body templates (see messages.en.ts for the fallback contract).\n 'cms.issueBody.missing-required-field': 'Das Pflichtfeld „{field}“ ist nicht ausgefüllt.',\n 'cms.issueBody.missing-localized-value.default':\n 'Das Pflichtfeld „{field}“ hat keinen Wert für die Standardsprache „{locale}“.',\n 'cms.issueBody.missing-localized-value.fallback':\n 'Das Feld „{field}“ hat keinen Wert für „{locale}“ und keinen Fallback.',\n 'cms.issueBody.unknown-asset':\n 'Das Feld „{field}“ verweist auf die unbekannte Mediendatei „{asset}“.',\n 'cms.issueBody.document-nesting-depth.error':\n 'Dieser Inhalt ist {depth} Ebenen tief verschachtelt und überschreitet damit das Speicherlimit von {limit} Ebenen – teilen Sie ihn in kleinere verknüpfte Einträge auf.',\n 'cms.issueBody.document-nesting-depth.warning':\n 'Dieser Inhalt ist {depth} Ebenen tief verschachtelt und nähert sich dem Speicherlimit von {limit} Ebenen.',\n 'cms.issueBody.hierarchy-cycle':\n 'Dieser Eintrag ist sein eigener Vorfahr – die Kette der übergeordneten Einträge bildet eine Schleife.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS validation issue BODIES (EC-487)\n //\n // EC-443 localized the issue TITLES (`cms.issue.<code>` above); the bodies were\n // still built as English template literals inside `packages/core`, which cannot\n // import this catalog. EC-478 solved that shape for `CustomizationIssue` by having\n // the producer carry a message KEY; these are the same carriage for\n // `CmsValidationIssue`, so the rail foot, the Issues pane and the for-review lane\n // never mix a German title with an English body.\n //\n // The English source is a SECOND copy of what the producer builds — the tie between\n // them is `lib/persona/cms-issue-i18n.test.ts`, which renders every real producer's\n // issue through this catalog and asserts byte-identity. Interpolated values are\n // IDENTIFIERS (field/collection/route/locale ids, patterns, counts) and stay\n // unlocalized in every language.\n //\n // `cms.issueDetail.*` are FRAGMENTS spliced into the sentences above.\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.issueMessage.duplicateDocument': 'Doppeltes Dokument „{id}“ in der Sammlung „{collection}“.',\n 'cms.issueMessage.fieldDetail': 'Das Feld „{field}“ {detail}.',\n 'cms.issueMessage.fieldReason': 'Feld „{field}“: {reason}',\n 'cms.issueMessage.fieldHiddenPredicateThrew': 'Die Sichtbarkeitsregel des Feldes „{field}“ hat einen Fehler ausgelöst („{reason}“), daher wird das Feld angezeigt und geprüft. Korrigieren Sie die Regel in der Projektkonfiguration.',\n 'cms.issueMessage.groupHiddenPredicateThrew': 'Die Sichtbarkeitsregel der Gruppe „{group}“ hat einen Fehler ausgelöst („{reason}“), daher werden ihre Felder angezeigt und geprüft. Korrigieren Sie die Regel in der Projektkonfiguration.',\n 'cms.issueMessage.relationUnknownTargetCollection': 'Das Beziehungsfeld „{field}“ zielt auf die unbekannte Sammlung „{target}“.',\n 'cms.issueMessage.relationSingleValued': 'Das Beziehungsfeld „{field}“ ist einwertig, hat aber {count} Ziele.',\n 'cms.issueMessage.relationNotAReference': 'Das Beziehungsfeld „{field}“ enthält einen Wert, der keine Dokumentreferenz ist.',\n 'cms.issueMessage.relationWrongCollection': 'Das Beziehungsfeld „{field}“ zeigt auf die Sammlung „{got}“, zielt aber auf „{target}“.',\n 'cms.issueMessage.relationMissingDocument': 'Das Beziehungsfeld „{field}“ verweist auf das fehlende Dokument „{id}“ in „{target}“.',\n 'cms.issueMessage.relationUnpublishedDocument': 'Das Beziehungsfeld „{field}“ verweist auf das unveröffentlichte Dokument „{id}“ in „{target}“ — auf der veröffentlichten Website erscheint dort ein Platzhalter.',\n // EC-589 — eine strikte Beziehung (Feld, Unterfeld oder Prop) auf ein unveröffentlichtes Ziel blockiert das Veröffentlichen.\n 'cms.issueMessage.relationStrictUnpublished': 'Das Beziehungsfeld „{field}“ ist strikt: „{id}“ in „{target}“ ist nicht veröffentlicht — dieses Dokument kann erst veröffentlicht werden, wenn es veröffentlicht ist.',\n 'cms.issueMessage.assetNoAssetCollection': 'Das Medienfeld „{field}“ benötigt eine Mediensammlung, es ist aber keine registriert.',\n 'cms.issueMessage.assetSingleValued': 'Das Medienfeld „{field}“ ist einwertig, hat aber {count} Ziele.',\n 'cms.issueMessage.assetExpectsId': 'Das Medienfeld „{field}“ erwartet eine Medien-id.',\n 'cms.issueMessage.assetUnknown': 'Das Medienfeld „{field}“ verweist auf das unbekannte Medium „{asset}“.',\n 'cms.issueMessage.assetNotAccepted': 'Das Medienfeld „{field}“ akzeptiert nur {accept}, das Medium „{asset}“ ist aber {type}.',\n 'cms.issueMessage.requiredFieldMissing': 'Das Pflichtfeld „{field}“ fehlt.',\n 'cms.issueMessage.perLocaleMapValue': 'Das Feld „{field}“ erwartet einen Wert vom Typ „{type}“, enthält aber eine Sprach-Zuordnung (Schlüssel: {keys}) — sprachabhängige Werte liegen im „localized“-Bereich des Dokuments, niemals im Feldwert selbst.',\n 'cms.issueMessage.preConvergenceV1': 'Das Feld „{field}“ enthält eine Inhaltsform von vor der Konvergenz (die v1-Hülle „{ version, doc }“) — die Engine liest nur noch die konvergierte Sequenz „{ version: 2, content }“. Dieser Inhalt muss neu eingespielt werden (Re-Seed).',\n 'cms.issueMessage.preConvergenceBareBlocks': 'Das Feld „{field}“ enthält eine Inhaltsform von vor der Konvergenz (eine blanke Komponentenliste) — die Engine liest nur noch die konvergierte Sequenz „{ version: 2, content }“. Dieser Inhalt muss neu eingespielt werden (Re-Seed).',\n 'cms.issueMessage.preConvergencePlaintext': 'Das Feld „{field}“ enthält eine Inhaltsform von vor der Konvergenz (unstrukturierter Alttext) — die Engine liest nur noch die konvergierte Sequenz „{ version: 2, content }“. Dieser Inhalt muss neu eingespielt werden (Re-Seed).',\n 'cms.issueMessage.gateUnknownCollection': 'Das Projekt deklariert keine Collection „{collection}“ — es gibt keine Regeln, nach denen sie veröffentlicht werden könnte.',\n 'cms.issueMessage.gateAssetLibraryUnready': 'Die Medienbibliothek konnte nicht gelesen werden — die Veröffentlichung ungeprüfter Medienverweise wird verweigert. Bitte erneut versuchen.',\n 'cms.issueMessage.gateNoLocales': 'Das Projekt deklariert keine Sprachen — die Veröffentlichung ohne sie wird verweigert.',\n // EC-595 A2 — der Feldkonflikt und die schlanke Feld-Präsenz.\n 'cms.conflict.changedBy': 'Seit Beginn Ihrer Bearbeitung von {name} geändert — Ihr Text bleibt hier, bis Sie entscheiden.',\n 'cms.conflict.removedBy': 'Seit Beginn Ihrer Bearbeitung von {name} entfernt — Ihre Änderung hat nichts mehr, worauf sie sich bezieht.',\n 'cms.conflict.theirs': 'Deren Wert: {value}',\n 'cms.conflict.takeTheirs': 'Deren übernehmen',\n 'cms.conflict.keepMine': 'Meinen behalten',\n 'cms.conflict.someoneElse': 'jemand anderem',\n 'cms.conflict.youInAnotherTab': 'Ihnen (in einem anderen Tab)',\n 'cms.conflict.empty': '(leer)',\n 'cms.conflict.structured': 'ein strukturierter Wert',\n 'cms.conflict.cellRefused': 'Dieses Feld wurde seit dem Laden von jemand anderem geändert — dessen Wert wird angezeigt.',\n 'cms.presence.inField': '{name} ist in diesem Feld',\n 'cms.presence.inFieldMany': '{names} sind in diesem Feld',\n 'cms.presence.someone': 'Jemand',\n 'cms.issueMessage.richTextHoldsArray': 'Das Rich-Text-Feld „{field}“ erwartet einen Rich-Text-Wert („{ version: 2, content }“), enthält aber ein Array.',\n 'cms.issueMessage.richTextHoldsBareDoc': 'Das Rich-Text-Feld „{field}“ erwartet einen Rich-Text-Wert („{ version: 2, content }“), enthält aber ein blankes Rich-Text-Dokument ohne die Hülle „{ version: 2, content }“.',\n 'cms.issueMessage.richTextHoldsObject': 'Das Rich-Text-Feld „{field}“ erwartet einen Rich-Text-Wert („{ version: 2, content }“), enthält aber ein Objekt mit den Schlüsseln „{keys}“.',\n 'cms.issueMessage.unknownCollectionForDocument': 'Das Dokument „{id}“ verweist auf die unbekannte Sammlung „{collection}“.',\n 'cms.issueMessage.localizedPlainValue': 'Das sprachabhängige Feld „{field}“ enthält einen einfachen Wert im gemeinsamen „values“-Bereich — erwartet werden sprachabhängige Werte unter „localized.<locale>.{field}“. Der einfache Wert dient nur noch als letzte Rückfallebene.',\n 'cms.issueMessage.requiredLocalizedMissingDefault': 'Das sprachabhängige Pflichtfeld „{field}“ fehlt für die Standardsprache „{locale}“.',\n 'cms.issueMessage.localizedNoValueNoFallback': 'Das sprachabhängige Feld „{field}“ hat keinen Wert für die Sprache „{locale}“ und keine Rückfallebene.',\n 'cms.issueMessage.hierarchyCycle': 'Das Dokument „{id}“ ist sein eigener Vorfahre — die Elternkette bildet einen Zyklus.',\n 'cms.issueMessage.nestingDepthError': 'Das Dokument „{id}“ ist {depth} Ebenen tief verschachtelt und überschreitet damit das Schreib-Limit des Backends von {limit} Ebenen — selbst das Falten der Tiefe beim Speichern rettet ein so tiefes Dokument nicht, der Schreibvorgang kann nicht ausgeführt werden. Teilen Sie es in kleinere verknüpfte Dokumente auf.',\n 'cms.issueMessage.nestingDepthWarning': 'Das Dokument „{id}“ ist {depth} Ebenen tief verschachtelt und nähert sich damit dem Limit des Backends von {limit} Ebenen. Flachen Sie den tiefsten Pfad ab, bevor er weiter wächst.',\n 'cms.issueMessage.propFilterable': 'Die Komponenten-Eigenschaft „{field}“ deklariert „filterable“, was nur für Dokumentfelder gilt.',\n 'cms.issueMessage.propUnique': 'Die Komponenten-Eigenschaft „{field}“ deklariert „unique“, was nur über die Dokumente einer Sammlung hinweg gilt.',\n 'cms.issueMessage.singletonDrift': 'Das Einzelstück „{collection}“ hat {count} Dokumente — es sollte genau eines haben. Behalten Sie das richtige Dokument und entfernen Sie die übrigen, damit es sich direkt öffnen lässt.',\n 'cms.issueMessage.unknownAlias.one': 'Ein Dokument ist dem Alias „{alias}“ zugewiesen, der kein deklarierter Slot von „{collection}“ ist ({declared}). Weisen Sie einen gültigen Slot zu.',\n 'cms.issueMessage.unknownAlias.other': '{count} Dokumente sind dem Alias „{alias}“ zugewiesen, der kein deklarierter Slot von „{collection}“ ist ({declared}). Weisen Sie einen gültigen Slot zu.',\n 'cms.issueMessage.duplicateAlias': '{count} Dokumente teilen sich den Alias „{alias}“ in „{collection}“. Jeder Slot darf nur einem Dokument zugewiesen sein — weisen Sie neu zu oder entfernen Sie die Duplikate.',\n 'cms.issueMessage.unfilledSlot': 'Der Slot „{slot}“ von „{collection}“ hat noch kein Dokument. Weisen Sie eines zu, damit Code, der „{slot}“ auflöst, es findet.',\n 'cms.issueMessage.reservedFieldName': 'Der Feldname „{field}“ ist reserviert (der Diskriminator selbstbeschreibender Knoten).',\n 'cms.issueMessage.duplicateSelectOption': 'Doppelte Auswahloption „{option}“ im Feld „{field}“.',\n 'cms.issueMessage.duplicateObjectField': 'Doppeltes Feld „{field}“ im Objektfeld „{parent}“.',\n 'cms.issueMessage.assetCollectionSingleton': 'Die Mediensammlung „{collection}“ kann kein Einzelstück sein.',\n 'cms.issueMessage.unknownPresentationBodyField': 'Die Sammlung „{collection}“ deklariert „{field}“ als Inhaltsfeld der Darstellung, definiert dieses Feld aber nicht.',\n 'cms.issueMessage.duplicateCollectionField': 'Doppeltes Feld „{field}“ in der Sammlung „{collection}“.',\n 'cms.issueMessage.duplicateCollectionId': 'Doppelte Sammlungs-id „{collection}“.',\n 'cms.issueMessage.unknownLocale': 'Die Sprache „{locale}“ gehört nicht zum konfigurierten Sprachsatz.',\n 'cms.issueMessage.unknownVersion': 'Für das Dokument „{id}“ ist keine Version {version} aufgezeichnet.',\n 'cms.issueMessage.routeConflict': 'Die Routen „{first}“ und „{second}“ treffen auf dieselben URLs zu (Muster „{pattern}“).',\n 'cms.issueMessage.redirectLoop': 'Die Weiterleitungskette ab „{from}“ bildet eine Schleife (…{chain}).',\n 'cms.issueMessage.duplicateRedirect': 'Die Weiterleitung „{redirect}“ (von „{redirectFrom}“) doppelt die Weiterleitung „{kept}“ (von „{keptFrom}“) — ohne abschließende Schrägstriche sind beide „{from}“. „{kept}“ gilt; lösche oder ändere die andere.',\n 'cms.issueMessage.allDynamicShadowsMount': 'Die Route „{route}“ („{pattern}“) besteht nur aus dynamischen Segmenten und trifft damit auf JEDE URL mit {depth} Segmenten zu — die Hierarchie-Einhängung „{mountRoute}“ („{mountPattern}“) wird auf dieser Ebene nur dort herangezogen, wo die Route kein Dokument auflöst. Nichts ist dadurch grundsätzlich unerreichbar, aber der Vorrang entscheidet sich dort am INHALT statt an den Routen: {shadowed} werden stillschweigend verdeckt, sobald ein zusammengesetzter Pfad mit {claimed} kollidiert — und keine Seite erfährt davon. Geben Sie der Route ein statisches Präfix („/blog/:slug“), damit sie einen Namensraum beansprucht statt einer ganzen Ebene.',\n 'cms.issueMessage.mountCannotServe': 'Die Hierarchie-Einhängung „{route}“ („{pattern}“) kann niemals ein Dokument ausliefern: {why}. Der Resolver überspringt eine solche Einhängung stillschweigend, deshalb liefert jede URL unter „{space}“ einen 404, ohne dass ein Hinweis erscheint.',\n 'cms.issueMessage.deadCatchAll': 'Die Route „{route}“ („{pattern}“) liefert in beide Richtungen nichts: Sie endet in einem Catch-all, deshalb verwirft sie jeder Router — ihr Präfix enthält aber ein dynamisches Segment ({dynamic}), deshalb wird auch keine Hierarchie-Einhängung daraus gebaut. Das Präfix einer Einhängung muss statisch sein — deklarieren Sie eine Einhängung pro Sprache (`{ pattern: \\'/de/:path*\\', locale: \\'de\\' }`) oder entfernen Sie die Route.',\n 'cms.issueMessage.mountConflict': '{opening} — ein exakter Gleichstand, nur durch die Deklarationsreihenfolge getrennt; deshalb beansprucht „{earlier}“ (Sammlung „{earlierCollection}“) dort jede URL, die der eigene Baum auflöst, und Dokumente aus „{laterCollection}“ sind an diesen URLs unerreichbar.',\n 'cms.issueMessage.routeBoundDocumentNotFound': 'Das an die Route gebundene Dokument „{collection}:{id}“ wurde nicht gefunden.',\n 'cms.issueMessage.routeParamNotCaptured': 'Die Route „{route}“ bindet ihr Dokument an den URL-Parameter „:{param}“, den das Muster „{pattern}“ nicht erfasst.',\n 'cms.issueMessage.collectionNotDefined': 'Die Sammlung „{collection}“ ist nicht definiert.',\n 'cms.issueMessage.storedDocumentUnreadable':\n 'Das gespeicherte Dokument {document} konnte nicht gelesen werden und wird nicht ausgeliefert ({reason}).',\n 'cms.issueMessage.unaddressableLocaleCollision': 'Keine URL erreicht „{id}“ in der Sprache „{locale}“: die Adresse wäre „{url}“, aber das erste Segment „{segment}“ ist ein deklarierter Sprachcode — die Website liest diese URL daher als Sprache „{segment}“, Pfad „{readPath}“. Benennen Sie dieses Segment um — an diesem Dokument oder an der übergeordneten Seite, zu der es gehört — damit es nicht mit einem Sprachcode kollidiert.',\n 'cms.issueDetail.expectsString': 'erwartet eine Zeichenkette',\n 'cms.issueDetail.expectsRichText': 'erwartet Rich-Text-Inhalt (eine Zeichenkette oder einen Rich-Text-Wert)',\n 'cms.issueDetail.expectsNumber': 'erwartet eine Zahl',\n 'cms.issueDetail.expectsBoolean': 'erwartet einen Wahrheitswert',\n 'cms.issueDetail.expectsIsoDate': 'erwartet ein ISO-8601-Datum (z. B. „2026-09-18“)',\n 'cms.issueDetail.expectsDate': 'erwartet ein Datum (ISO-8601-Zeichenkette oder Epochenzahl)',\n 'cms.issueDetail.valueNotAmongOptions': 'hat den Wert „{value}“, der nicht zu seinen Optionen gehört',\n 'cms.issueDetail.expectsObjectList': 'erwartet eine Liste von Objekten',\n 'cms.issueDetail.expectsObject': 'erwartet ein Objekt',\n 'cms.issueDetail.implausibleYear': 'hat das Jahr {year}, was unbeabsichtigt wirkt (erwartet wird eine vierstellige Jahreszahl)',\n 'cms.issueDetail.dateBoundNotADate': 'deklariert {bound} `{declared}` auf einem Datumsfeld, was kein Datum ist — verwenden Sie eine ISO-8601-Zeichenkette wie „1900-01-01“',\n 'cms.issueDetail.earlierThanMin': 'liegt vor {min}',\n 'cms.issueDetail.laterThanMax': 'liegt nach {max}',\n 'cms.issueDetail.stringBoundOffDate': 'deklariert {bound} „{declared}“ als Zeichenkette, was nur auf einem Datumsfeld sinnvoll ist — verwenden Sie eine Zahl',\n 'cms.issueDetail.shorterThanMinLength': 'ist kürzer als die Mindestlänge {min}',\n 'cms.issueDetail.longerThanMaxLength': 'ist länger als die Höchstlänge {max}',\n 'cms.issueDetail.doesNotMatchPattern': 'entspricht nicht dem Muster {pattern}',\n 'cms.issueDetail.lessThanMin': 'ist kleiner als das Minimum {min}',\n 'cms.issueDetail.greaterThanMax': 'ist größer als das Maximum {max}',\n 'cms.issueDetail.fewerThanMinItems': 'hat weniger als {min} Einträge',\n 'cms.issueDetail.moreThanMaxItems': 'hat mehr als {max} Einträge',\n 'cms.issueDetail.duplicateValue': 'muss innerhalb der Sammlung eindeutig sein, aber das Dokument „{other}“ hat diesen Wert bereits',\n 'cms.issueDetail.duplicateValueForLocale': 'muss innerhalb der Sammlung eindeutig sein, aber das Dokument „{other}“ hat diesen Wert bereits für die Sprache „{locale}“',\n 'cms.issueDetail.shadowedRootDocuments': 'die WURZEL-Dokumente von „{collection}“ unter „{space}“',\n 'cms.issueDetail.shadowedNestedDocuments': '„{collection}“-Dokumente, die {levels} Ebenen unter „{space}“ verschachtelt sind',\n 'cms.issueDetail.claimedBySlug': 'einem Slug aus „{collection}“',\n 'cms.issueDetail.claimedByOwnDocument': 'dem eigenen Dokument der Route',\n 'cms.issueDetail.mountCollectionNotDeclared': 'die Sammlung „{collection}“ ist nicht deklariert',\n 'cms.issueDetail.mountCollectionNotHierarchical': 'die Sammlung „{collection}“ hat keine `parent`-Selbstbeziehung und damit keine verschachtelten Pfade zum Zusammensetzen',\n 'cms.issueDetail.mountsSamePath': 'Die Hierarchie-Einhängungen „{earlier}“ („{earlierPattern}“) und „{later}“ („{laterPattern}“) sind beide unter „{space}“ eingehängt',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — details pane (slot + sidebar fields)\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.details.slot': 'Slot',\n 'cms.details.noSlot': '— Kein Slot —',\n 'cms.details.slotInUse': ' — belegt',\n 'cms.details.slotHint':\n 'Ein stabiler Name, mit dem die Website dieses Dokument findet (z. B. das Hauptmenü), unabhängig davon, welcher genaue Eintrag es ist. Ein Dokument pro Slot.',\n 'cms.details.empty': 'Keine Dokumenteigenschaften festzulegen.',\n // The composed-URL affordance (EC-315 \"hybrid split\") — moved to the detail-editor\n // HEADER under the title in 0.0.42 (round 3); ancestor-document segments link to\n // their editors, static route segments are plain, and the leaf carries the live link.\n 'cms.details.urlCurrent': 'diese Seite',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — import dialog\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.import.title': 'Dokumente importieren',\n 'cms.import.invalidJson': 'Eingabe ist kein gültiges JSON.',\n 'cms.import.imported': '{count} importiert',\n 'cms.import.rejected': '{count} abgelehnt:',\n 'cms.import.confirm': 'Importieren',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — versions (compare + pane)\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.version.paneLabel': 'Versionen',\n 'cms.version.compare': 'Vergleichen',\n 'cms.version.closeCompare': 'Vergleich schließen',\n 'cms.version.loadingHistory': 'Versionsverlauf wird geladen…',\n // Shown in the lazy boundary while the version-compare chunk loads (EC-322).\n 'cms.version.loadingCompare': 'Vergleich wird geladen…',\n 'cms.version.versionUnavailable': 'Diese Version ist nicht mehr verfügbar. Wählen Sie eine andere zum Vergleichen.',\n 'cms.version.currentDraft': 'Aktueller Entwurf',\n 'cms.version.unsavedEdits': 'nicht gespeicherte Änderungen',\n 'cms.version.baseCaption': 'Basis',\n 'cms.version.compareWithCaption': 'Vergleichen mit',\n 'cms.version.compareNewer': 'Neuere Version vergleichen',\n 'cms.version.compareOlder': 'Ältere Version vergleichen',\n 'cms.version.restoreWholeTitle': 'Gesamtes Dokument auf v{version} wiederherstellen',\n 'cms.version.restoreVersion': 'Version wiederherstellen',\n 'cms.version.noDifferences': 'Keine Unterschiede',\n 'cms.version.changeSummary.one': '{count} Änderung · {unchanged} unverändert',\n 'cms.version.changeSummary.other': '{count} Änderungen · {unchanged} unverändert',\n 'cms.version.comparingPastVersionsHint':\n ' · zwei frühere Versionen werden verglichen – „Vergleichen mit“ auf „Aktueller Entwurf“ setzen, um wiederherzustellen',\n 'cms.version.versionsIdentical': 'Diese beiden Versionen sind identisch.',\n 'cms.version.beforeVersion': 'Vorher · v{version}',\n 'cms.version.afterTarget': 'Nachher · {target}',\n 'cms.version.restoreField': '{field} aus v{version} wiederherstellen',\n 'cms.version.restoreFieldLocale': '{field} ({locale}) aus v{version} wiederherstellen',\n 'cms.version.textUnchanged': 'Text unverändert – Formatierung oder Leerzeichen unterscheiden sich.',\n 'cms.version.restoreBlock': 'Diesen Block aus v{version} wiederherstellen',\n 'cms.version.nestedContentChanged': 'Verschachtelter Inhalt geändert.',\n // EC-593 — wo die Diff-Zeile einer verschachtelten Komponente sitzt.\n 'cms.version.nestedInProse': 'im Text',\n 'cms.version.nestedIn': 'in {path}',\n 'cms.version.blockAdded': 'Block hinzugefügt.',\n 'cms.version.blockRemoved': 'Block entfernt.',\n 'cms.version.emptyValue': 'leer',\n 'cms.version.richText': 'Rich Text',\n 'cms.version.itemCount.one': '{count} Element',\n 'cms.version.itemCount.other': '{count} Elemente',\n 'cms.version.objectValue': 'Objekt',\n 'cms.version.kindNew': 'neu',\n 'cms.version.kindRemoved': 'entfernt',\n 'cms.version.unpublishedChanges': 'Nicht veröffentlichte Änderungen',\n 'cms.version.notPublishedYet': 'Noch nicht veröffentlicht',\n 'cms.version.fixValidationToPublish': 'Validierungsprobleme des Dokuments beheben, um zu veröffentlichen',\n 'cms.version.liveUpToDate': 'Die Live-Version ist aktuell – nichts zu veröffentlichen.',\n 'cms.version.comparingHint':\n 'Vergleich von v{base} → {target}. Klicken Sie auf eine Version, um sie als Basis festzulegen.',\n 'cms.version.noVersionsYet': 'Noch keine veröffentlichten Versionen.',\n 'cms.version.baseBadge': 'Basis',\n 'cms.version.comparedBadge': 'Verglichen',\n 'cms.version.compareWithDraft': 'Diese Version mit dem aktuellen Entwurf vergleichen',\n 'cms.version.compareVersionLabel': 'v{version} vergleichen',\n 'cms.version.rowActionsLabel': 'Aktionen für v{version}',\n 'cms.version.switchToDraftToRestore': 'Zum Entwurf wechseln, um wiederherzustellen',\n 'cms.version.restore': 'Wiederherstellen',\n // EC-199 provenance — a subtle marker on versions recorded from AI-authored content.\n 'cms.version.aiAuthored': 'KI',\n 'cms.version.aiAuthoredTitle': 'Mit dem KI-Assistenten erstellt',\n\n // EC-317 — descriptor lane, unified/side-by-side toggle, truncation, zebra.\n 'cms.version.fieldColumnHeader': 'Feld',\n 'cms.version.viewSideBySide': 'Nebeneinander',\n 'cms.version.viewUnified': 'Zusammengeführt',\n 'cms.version.viewModeAriaLabel': 'Darstellung des Vergleichs',\n 'cms.version.unifiedCaption': 'v{base} → {target}',\n 'cms.version.showMore': 'Mehr anzeigen',\n 'cms.version.showLess': 'Weniger anzeigen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — delete/unpublish reference-confirm dialog\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.reference.documentCount': '{count} Dokumente',\n 'cms.reference.confirmTitle': '{action}: {subject}?',\n 'cms.reference.checking': 'Eingehende Verweise werden geprüft…',\n 'cms.reference.checkUnavailable':\n 'Eingehende Verweise konnten nicht geprüft werden – der Verweisindex ist nicht erreichbar.',\n 'cms.reference.blocked.one':\n 'Blockiert: {count} strikter Verweis verhindert dies. Entfernen Sie zuerst die unten aufgeführten Verweise.',\n 'cms.reference.blocked.other':\n 'Blockiert: {count} strikte Verweise verhindern dies. Entfernen Sie zuerst die unten aufgeführten Verweise.',\n 'cms.reference.notReferenced': 'Nirgendwo referenziert.',\n 'cms.reference.permanentDelete.one': 'Dadurch wird das Dokument dauerhaft gelöscht.',\n 'cms.reference.permanentDelete.other': 'Dadurch werden die {count} ausgewählten Dokumente dauerhaft gelöscht.',\n 'cms.reference.canProceed':\n 'Sie können {action} – {summary} zeigen dann einen Fallback, bis das behoben ist. Jede davon wird zu einem sichtbaren Validierungsproblem.',\n 'cms.reference.proceedUnavailable':\n 'Fortfahren ist möglich, aber die betroffenen Stellen können derzeit nicht aufgelistet werden.',\n 'cms.reference.proceedAnyway': 'Trotzdem {action}',\n 'cms.reference.verb.unpublish': 'zurückziehen',\n 'cms.reference.verb.delete': 'löschen',\n 'cms.reference.placeCount.one': '{count} Stelle',\n 'cms.reference.placeCount.other': '{count} Stellen',\n 'cms.reference.bulkSummary': '{count} Dokumente sind betroffen; {places}',\n 'cms.reference.atLocation': 'bei',\n 'cms.reference.strictBadge': 'strikt',\n 'cms.reference.draftBadge': 'Entwurf',\n 'cms.reference.publishedBadge': 'veröffentlicht',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — field controls / scalar editor\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.field.rendererCrashed': 'Benutzerdefinierter Renderer abgestürzt — Standardsteuerung wird angezeigt.',\n 'cms.field.noRenderer': 'Kein Feld-Renderer für Steuerung „{control}“ registriert.',\n 'cms.field.itemActions': 'Elementaktionen',\n 'cms.field.moveUp': 'Nach oben',\n 'cms.field.moveDown': 'Nach unten',\n 'cms.field.collapseAll': 'Alle einklappen',\n 'cms.field.expandAll': 'Alle ausklappen',\n 'cms.field.noItems': 'Keine Elemente',\n 'cms.field.dragToReorder': 'Zum Umsortieren ziehen',\n 'cms.field.addItem': 'Element hinzufügen',\n 'cms.field.value': 'Wert',\n 'cms.field.valuePlaceholder': 'Wert',\n 'cms.field.colour': 'Farbe',\n // EC-315 — the smart slug / URL-segment control.\n 'cms.field.slug.regenerate': 'Slug neu erzeugen',\n 'cms.field.slug.taken': 'Wird bereits von „{title}“ verwendet',\n 'cms.field.slug.takenGeneric': 'Dieser Slug wird bereits verwendet.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — relation picker\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.relation.change': 'Ändern',\n 'cms.relation.openTitle': '{title} öffnen',\n 'cms.relation.pick': 'Auswählen',\n 'cms.relation.pickTitle.one': 'Verknüpftes Dokument auswählen',\n 'cms.relation.pickTitle.many': 'Verknüpfte Dokumente auswählen',\n 'cms.relation.fromCollection': 'Aus {collection}',\n 'cms.relation.selectMultipleHint': 'Mehrfachauswahl',\n 'cms.relation.noDocuments': 'Keine Dokumente in {collection}.',\n 'cms.relation.selectedCount': '{count} ausgewählt',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — asset field + asset picker\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.asset.rejected.one': '„{name}“ übersprungen — nur {types} hier erlaubt.',\n 'cms.asset.rejected.other': '{count} Dateien übersprungen — nur {types} hier erlaubt.',\n 'cms.asset.dropToUpload': 'Zum Hochladen ablegen',\n 'cms.asset.selectOrDrop': 'Bild auswählen oder ablegen',\n 'cms.asset.selectAsset': 'Medien auswählen',\n 'cms.asset.altLabel': 'Alt:',\n 'cms.asset.notSet': 'nicht gesetzt',\n 'cms.asset.imageOptions.title': 'Bildoptionen',\n 'cms.asset.imageOptions.description': 'Was zu dieser Verwendung des Bildes gehört, getrennt von dem, was überall für das Bild gilt.',\n 'cms.asset.imageOptions.placementTitle': 'An dieser Stelle',\n 'cms.asset.imageOptions.placementHint': 'Nur diese Verwendung des Bildes — eine andere Seite kann es anders zeigen.',\n 'cms.asset.imageOptions.assetTitle': 'Über dieses Bild',\n 'cms.asset.imageOptions.assetHint': 'Gilt überall, wo dieses Bild verwendet wird — eine Änderung hier ändert jede Verwendung.',\n 'cms.asset.imageOptions.whereUsed': 'Wo es verwendet wird',\n 'cms.asset.replaceFile': 'Datei ersetzen',\n 'cms.asset.replacing': 'Wird ersetzt …',\n 'cms.asset.replaceWrongKind': '„{name}“ nicht verwendet — der Ersatz muss {types} sein, wie die aktuelle Datei.',\n 'cms.asset.replaceSaveFirst': 'Speichern oder verwerfen Sie zuerst die Änderungen an den Metadaten.',\n 'cms.asset.replacedCheckFocal': 'Die Datei wurde ersetzt — prüfen Sie, ob der Fokuspunkt das Motiv noch erfasst.',\n 'cms.asset.focalPoint': 'Fokuspunkt',\n 'cms.asset.resetToCentre': 'Auf Mitte zurücksetzen',\n 'cms.asset.focalPointHint': 'Klicken oder ziehen Sie auf das Bild, um den Fokuspunkt für den Zuschnitt festzulegen.',\n 'cms.asset.noMetaFields':\n 'Für die Medien-Sammlung sind keine bearbeitbaren Metadatenfelder deklariert. Fügen Sie Felder (z. B. {code1}, {code2}) im Code hinzu.',\n 'cms.asset.pickTitle': 'Medien auswählen',\n 'cms.asset.pickDescription': 'Aus der Medienbibliothek des Projekts auswählen.',\n 'cms.asset.noProject': 'Die Medienbibliothek benötigt ein Projekt — diese CMS-Sitzung hat keins.',\n 'cms.asset.restoreDialogSize': 'Dialoggröße wiederherstellen',\n 'cms.asset.maximizeDialog': 'Dialog maximieren',\n 'cms.asset.searchPlaceholder': 'Medien suchen…',\n 'cms.asset.loading': 'Medien werden geladen…',\n 'cms.asset.loadError': 'Medien konnten nicht geladen werden.',\n 'cms.asset.noMatches': 'Keine Medien entsprechen Ihrer Suche.',\n 'cms.asset.empty': 'Noch keine Medien — Dateien hier ablegen oder hochladen.',\n 'cms.asset.noAltText': 'Kein Alt-Text',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Assets rail (EC-319: the universal list + grid/list toggle + detail surface)\n // ─────────────────────────────────────────────────────────────────────────\n 'assets.error.loadFailed': 'Medien konnten nicht geladen werden',\n 'assets.loading': 'Medien werden geladen…',\n 'assets.uploads.heading': 'Uploads',\n 'assets.upload.phase.queued': 'in Warteschlange',\n 'assets.upload.phase.preparing': 'wird vorbereitet',\n 'assets.upload.phase.uploading': 'wird hochgeladen',\n 'assets.upload.phase.confirming': 'Metadaten werden gespeichert',\n 'assets.upload.phase.done': 'fertig',\n 'assets.upload.phase.failed': 'fehlgeschlagen',\n 'assets.upload.attempt': 'Versuch {count}',\n 'assets.upload.dismissLabel': 'Upload verwerfen',\n 'assets.viewToggle.groupLabel': 'Listen- oder Rasteransicht',\n 'assets.viewToggle.list': 'Listenansicht',\n 'assets.viewToggle.grid': 'Rasteransicht',\n 'assets.detail.metadataHeading': 'Metadaten',\n 'assets.references.buttonLabel': 'Verweise',\n 'assets.references.title': 'Verwendet von — {name}',\n 'assets.references.description':\n 'Alles, was dieses Medienelement referenziert, mit Direktlinks zum genauen Feld oder Knoten.',\n 'assets.delete.raceError.one':\n 'Das Medienelement wird jetzt an {count} Stelle referenziert — zum Prüfen erneut öffnen.',\n 'assets.delete.raceError.other':\n 'Das Medienelement wird jetzt an {count} Stellen referenziert — zum Prüfen erneut öffnen.',\n 'assets.delete.title': '{filename} löschen?',\n 'assets.delete.description':\n 'Entfernt die gespeicherten Daten und den Metadatensatz. Dies kann nicht rückgängig gemacht werden.',\n 'assets.delete.checking': 'Verweise werden geprüft…',\n 'assets.delete.inUse.one': 'An {count} Stelle verwendet',\n 'assets.delete.inUse.other': 'An {count} Stellen verwendet',\n 'assets.delete.brokenWarning':\n 'Beim Löschen bleiben diese Verweise defekt — sie erscheinen als Validierungsprobleme.',\n 'assets.delete.noReferences': 'Keine Verweise gefunden. Kann gefahrlos gelöscht werden.',\n 'assets.delete.confirmAnyway': 'Trotzdem löschen',\n 'assets.focalPoint.noPreview':\n 'Keine Bildvorschau — laden Sie ein Bildmedium hoch oder wählen Sie eines aus, um einen Fokuspunkt festzulegen.',\n 'assets.focalPoint.setLabel': 'Fokuspunkt festlegen',\n // Vorschauen erzeugen — EC-400 Thumbnail-Nachrüstung.\n 'assets.generatePreviews.button': 'Vorschauen erzeugen',\n 'assets.generatePreviews.hint':\n 'Vorhandene Bilder auf leichtere Vorschau-Thumbnails herunterskalieren und so Egress sparen. Bereits vorhandene werden übersprungen.',\n 'assets.generatePreviews.running': 'Vorschauen werden erzeugt… {done}/{total}',\n 'assets.generatePreviews.done': '{count} Vorschauen erzeugt',\n 'assets.generatePreviews.none': 'Vorschauen bereits aktuell',\n 'assets.generatePreviews.cancelled': 'Abgebrochen — {count} erzeugt',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Users (section)\n // ─────────────────────────────────────────────────────────────────────────\n 'users.checkingAccess': 'Zugriff wird geprüft…',\n 'users.restrictedTitle': 'Nur für Administratoren',\n 'users.restrictedBody':\n 'Zum Verwalten von Benutzern und Rollen ist die Administratorrolle für diese Bereitstellung erforderlich. Bitten Sie einen Administrator, Ihnen Zugriff zu gewähren.',\n 'users.loadFailed': 'Benutzer konnten nicht geladen werden',\n 'users.loading': 'Benutzer werden geladen…',\n // Built-in users rail — its schema labels resolve through the catalog (msgLabel),\n // so a consumer's translation catalog localizes the rail with no per-rail override.\n 'users.rail.label': 'Benutzer',\n 'users.rail.labelSingular': 'Benutzer',\n 'users.field.name.label': 'Name',\n 'users.field.email.label': 'E-Mail',\n 'users.field.role.label': 'Rolle',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Invites (EC-324) — invite-based onboarding, admin action in the users rail\n // ─────────────────────────────────────────────────────────────────────────\n 'invites.invite': 'Benutzer einladen',\n 'invites.pending': 'Ausstehend:',\n 'invites.dialogTitle': 'Benutzer einladen',\n 'invites.dialogBody':\n 'Die Person tritt bei, indem sie mit dieser E-Mail-Adresse ein Konto erstellt. Die offene Registrierung ist geschlossen — nur eingeladene Adressen können sich registrieren.',\n 'invites.emailLabel': 'E-Mail',\n 'invites.roleLabel': 'Rolle',\n 'invites.send': 'Einladung senden',\n 'invites.sending': 'Einladung wird gesendet…',\n 'invites.sent': '{email} wurde eingeladen.',\n 'invites.revoked': 'Die Einladung für {email} wurde widerrufen.',\n 'invites.revokeAria': 'Einladung für {email} widerrufen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Account settings (EC-240 H-tail) — the member's OWN record + credentials\n // ─────────────────────────────────────────────────────────────────────────\n 'account.loading': 'Konto wird geladen…',\n 'account.loadFailed': 'Ihr Konto konnte nicht geladen werden',\n 'account.notMemberTitle': 'Noch kein Zugriff',\n 'account.notMemberBody':\n 'Sie sind angemeldet, gehören dieser Bereitstellung aber noch nicht an. Bitten Sie einen Administrator, Ihnen eine Rolle zuzuweisen.',\n // Account rail schema labels resolve through the catalog (msgLabel), like the users rail.\n 'account.rail.label': 'Konto',\n 'account.rail.labelSingular': 'Konto',\n 'account.field.name.label': 'Name',\n 'account.field.avatar.label': 'Avatar-URL',\n 'account.field.avatar.hint': 'Ein Link zu Ihrem Profilbild.',\n 'account.field.email.label': 'E-Mail',\n 'account.field.role.label': 'Rolle',\n 'account.security.title': 'Anmeldung & Sicherheit',\n 'account.security.method': 'Sie melden sich mit Ihrer E-Mail-Adresse und Ihrem Passwort an.',\n 'account.password.current': 'Aktuelles Passwort',\n 'account.password.new': 'Neues Passwort',\n 'account.password.confirm': 'Neues Passwort bestätigen',\n 'account.password.change': 'Passwort ändern',\n 'account.password.changing': 'Passwort wird geändert…',\n 'account.password.changed': 'Ihr Passwort wurde geändert.',\n 'account.password.mismatch': 'Die neuen Passwörter stimmen nicht überein.',\n // EC-412 — engine-classified change-password failures (mirrors the EC-397\n // sign-in pattern; the EN copy is pinned to the auth-adapter constants).\n 'account.password.error.notSignedIn': 'Sie sind nicht angemeldet.',\n 'account.password.error.currentIncorrect': 'Ihr aktuelles Passwort ist falsch.',\n 'account.password.error.weakPassword': 'Wählen Sie ein stärkeres Passwort (mindestens 8 Zeichen).',\n 'account.password.error.tooManyAttempts':\n 'Zu viele fehlgeschlagene Versuche — warten Sie einen Moment und versuchen Sie es dann erneut.',\n 'account.password.error.deploymentMisconfigured':\n 'Diese Bereitstellung kann Ihr Passwort nicht ändern: Der Auth-Signaturschlüssel ist nicht gesetzt. Führen Sie `npx @convex-dev/auth` aus.',\n 'account.password.error.serverError':\n 'Passwortänderung fehlgeschlagen (unerwarteter Serverfehler) — prüfen Sie die Logs der Bereitstellung.',\n 'account.password.error.playgroundUnsupported':\n 'Die Passwortänderung ist im Playground-Modus nicht verfügbar.',\n // EC-416 — update-profile failures (not-authenticated reuses notSignedIn above).\n 'account.profile.error.unavailable': 'Die Profilaktualisierung ist derzeit nicht verfügbar.',\n 'account.profile.error.playgroundUnsupported':\n 'Die Profilbearbeitung ist im Playground-Modus nicht verfügbar.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Redirects (section)\n // ─────────────────────────────────────────────────────────────────────────\n 'records.loadFailed': '{label} konnten nicht geladen werden',\n 'records.loading': '{label} werden geladen…',\n 'records.untitled': '(neu: {label})',\n 'redirects.loadFailed': 'Weiterleitungen konnten nicht geladen werden',\n 'redirects.loading': 'Weiterleitungen werden geladen…',\n // Built-in redirects rail — schema labels via the catalog (msgLabel), see above.\n 'redirects.rail.label': 'Weiterleitungen',\n 'redirects.rail.labelSingular': 'Weiterleitung',\n 'redirects.field.from.label': 'Quelle',\n 'redirects.field.to.label': 'Ziel',\n 'redirects.field.permanent.label': 'Dauerhaft (301)',\n 'redirects.field.enabled.label': 'Aktiv',\n\n // ─────────────────────────────────────────────────────────────────────────\n // References panel\n // ─────────────────────────────────────────────────────────────────────────\n 'references.title': 'Verweise',\n 'references.hintOutbound': 'Worauf dieser Eintrag verweist – klicken, um zum Ziel oder zum genauen Feld zu springen.',\n 'references.emptyOutbound': 'Keine ausgehenden Verweise.',\n 'references.usedBy': 'Verwendet von',\n 'references.hintInbound':\n 'Alles, was auf diesen Eintrag verweist – klicken, um zum genauen Feld oder Knoten zu springen.',\n 'references.emptyInbound': 'Nirgendwo verwendet.',\n 'references.loading': 'Verweise werden geladen…',\n 'references.loadFailed': 'Verweise konnten nicht geladen werden',\n 'references.indexUnreachable': 'Der Verweisindex ist nicht erreichbar.',\n 'references.sectionLoadError': 'Dieser Abschnitt konnte nicht geladen werden: {error}',\n 'references.locationPrefix': 'in',\n 'references.badgeDraft': 'Entwurf',\n 'references.badgePublished': 'veröffentlicht',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Components registry browser\n // ─────────────────────────────────────────────────────────────────────────\n 'components.detail.notFound.title': 'Komponente nicht gefunden',\n 'components.detail.notFound.body': 'Keine Komponente mit der ID {id} registriert.',\n 'components.detail.notFound.back': 'Zurück zu Komponenten',\n 'components.detail.allComponents': 'Alle Komponenten',\n 'components.status.valid': 'gültig',\n 'components.status.incompatible': 'inkompatibel',\n 'components.status.invalid': 'ungültig',\n 'components.status.aria': 'Status: {status}',\n 'components.status.description.valid': 'Das Manifest ist registriert und eine Implementierung ist eingebunden.',\n 'components.status.description.incompatible':\n 'Das Manifest ist registriert, aber es ist keine Implementierung verfügbar — der Renderer zeigt einen Fallback.',\n 'components.status.description.invalid': 'Die Registry hat ein strukturiertes Problem für diese Komponente gemeldet.',\n 'components.index.title': 'Komponenten-Registry',\n 'components.index.subtitle':\n 'Durchsuchen Sie die Plattform-Primitive und die Komponenten dieses Projekts. Wählen Sie eine aus, um Manifest, Felder und Vorschau-Fixtures zu inspizieren.',\n 'components.index.stat.total': 'Komponenten',\n 'components.index.stat.totalHint': '{primitives} Primitive · {projects} Projekt',\n 'components.index.stat.valid': 'Gültig',\n 'components.index.stat.needAttention': 'Benötigt Aufmerksamkeit',\n 'components.index.stat.needAttentionHint': '{incompatible} inkompatibel · {invalid} ungültig',\n 'components.index.pickHint':\n 'Wählen Sie eine Komponente aus der Liste, um die Detailansicht zu öffnen — Manifest-Metadaten, den Prop- und Slot-Inspektor und den visuellen Fixture-Runner.',\n 'components.index.byCategory': 'Nach Kategorie',\n 'components.index.guide.title': 'Projektkomponenten registrieren',\n 'components.index.guide.badge': 'Anleitung',\n 'components.index.guide.intro':\n 'Komponenten sind Code und gehören Ihrem Repository. Registrieren Sie ein Manifest mit Eigenschaftsschemata, Standardwerten, Inspektor-Steuerelementen, Slots und Vorschauzuständen. Das Studio kann die Komponente anschließend durchsuchen, prüfen und anzeigen. Diese Anleitungen im Repository erklären die Einzelheiten:',\n 'components.index.guide.doc.authoring':\n 'So deklarieren und registrieren Sie eine Komponente, damit das Studio sie durchsuchen, prüfen und anzeigen kann.',\n 'components.index.guide.doc.fixtures':\n 'Deterministische Vorschauzustände erstellen — die Zustände, die in der Live-Vorschau dieser Ansicht erscheinen.',\n 'components.index.guide.doc.extensibility':\n 'Die Plattform erweitern: eigene Feldtypen, Datenquellen, Export-Ziele und Plugins.',\n 'components.index.guide.namespaceNote':\n 'Komponenten sind die Liste in Ihrer Konfiguration, mit IDs Ihrer Wahl (Heading, site.Hero). Elytras eigene Komponenten sind das optionale Paket @elytracms/components — alle, eine Auswahl oder keine.',\n 'components.taxonomy.uncategorized': 'Ohne Kategorie',\n 'components.detail.tab.preview': 'Vorschau',\n 'components.detail.tab.manifest': 'Manifest',\n 'components.preview.reset': 'Zustand zurücksetzen',\n 'components.preview.resetProps': 'Eigenschaften zurücksetzen',\n 'components.preview.edited': 'bearbeitet',\n 'components.preview.incompatibleNote':\n 'Es ist keine Implementierung verbunden — der Renderer zeigt seine Ersatzdarstellung.',\n 'components.preview.serverOnlyTitle': 'Nur serverseitige Komponente',\n 'components.preview.serverOnlyBody':\n 'Diese Komponente kann nicht im Client gerendert werden und daher nicht in der Live-Vorschau laufen. In Ihren Auslieferungs-Frames wird sie weiterhin gerendert.',\n 'components.preview.slotsNote':\n 'Der Slot-Inhalt der Vorschau folgt dem ausgewählten Zustand. Die vollständige Slot-Bearbeitung erfolgt auf der Arbeitsfläche eines Dokuments — übertragen Sie diese Kombination mit „In Dokument verwenden…“ in ein Dokument.',\n 'components.preview.unavailableTitle': 'Vorschau nicht verfügbar',\n 'components.preview.propNeedsDocument':\n 'In einem Dokument bearbeitbar — im Komponenten-Preview fehlt der Workspace-Kontext.',\n 'components.transfer.action': 'In Dokument verwenden…',\n 'components.transfer.title': '„{name}“ in einem Dokument verwenden',\n 'components.transfer.description':\n 'Erstellen Sie einen neuen Entwurf oder fügen Sie die Komponente dem Block-Feld eines vorhandenen Dokuments hinzu und öffnen Sie es anschließend.',\n 'components.transfer.intoField': 'in',\n 'components.transfer.newDocument': 'Neues Dokument in {collection}',\n 'components.transfer.orExisting': 'oder einem vorhandenen Dokument hinzufügen',\n 'components.transfer.noTargets': 'Kein Dokumentfeld kann diese Komponente aufnehmen.',\n 'components.fieldInspector.props': 'Props',\n 'components.fieldInspector.noProps': 'Diese Komponente deklariert keine bearbeitbaren Props.',\n 'components.fieldInspector.slots': 'Slots',\n 'components.fieldInspector.noSlots': 'Diese Komponente hat keine Slots.',\n 'components.fieldInspector.inline': 'inline',\n 'components.fieldInspector.default': 'Standard',\n 'components.fieldInspector.allows': 'erlaubt',\n 'components.fixtureRunner.statesAria': 'Fixture-Zustände',\n 'components.preview.breakpointAria': 'Vorschaubreite',\n 'components.browser.searchPlaceholder': 'Komponenten suchen…',\n 'components.browser.searchAria': 'Komponenten suchen',\n 'components.browser.namespaceAria': 'Nach Namespace filtern',\n 'components.browser.all': 'Alle',\n 'components.browser.primitives': 'Primitive',\n 'components.browser.project': 'Projekt',\n 'components.browser.noMatchQuery': 'Keine Komponenten entsprechen „{query}“.',\n 'components.browser.noMatchFilters': 'Keine Komponenten entsprechen den ausgewählten Filtern.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Settings\n // ─────────────────────────────────────────────────────────────────────────\n 'settings.identity.title': 'Identität',\n 'settings.identity.name': 'Name',\n 'settings.identity.urlKey': 'URL-Schlüssel',\n 'settings.locales.title': 'Sprachen',\n 'settings.locales.configuredCount': '{count} konfiguriert',\n 'settings.locales.configured': 'Konfigurierte Sprachen',\n 'settings.locales.defaultSuffix': ' · Standard',\n 'settings.environments.title': 'Umgebungen & Export',\n 'settings.environments.label': 'Umgebungen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // App-views shell\n // ─────────────────────────────────────────────────────────────────────────\n 'appViews.singleton.opening': '{label} wird geöffnet…',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Builder / canvas\n // ─────────────────────────────────────────────────────────────────────────\n // Shown in the lazy boundary while the page-builder canvas chunk loads (EC-322).\n 'builder.canvas.loading': 'Page Builder wird geladen…',\n 'builder.blocksPanel.title': 'Block einfügen',\n 'builder.blocksPanel.addsInto': 'Fügt ein in {destination}.',\n 'builder.blocksPanel.searchPlaceholder': 'Blöcke suchen…',\n 'builder.blocksPanel.searchAria': 'Blöcke suchen',\n 'builder.blocksPanel.layoutHelpers': 'Layout-Helfer',\n 'builder.blocksPanel.noAllowed': 'Keine zulässigen Komponenten gefunden.',\n 'builder.blocksPanel.noMatch': 'Keine Komponenten passen zu „{query}“.',\n 'builder.blocksPanel.insertTileAria': '{title} — {variant} einfügen',\n 'builder.blocksPanel.copyExactAria': 'Exakte Konfiguration kopieren — {title} ({variant})',\n 'builder.blocksPanel.copyExactConfiguration': 'Exakte Konfiguration kopieren',\n 'builder.blocksPanel.previewFailed': 'Vorschau fehlgeschlagen: {error}',\n // EC-439: one tile per component; a 2+-fixture component gets a variants chip + flyout.\n 'builder.blocksPanel.insertComponentAria': '{title} einfügen',\n 'builder.blocksPanel.variantCount': '{count} Varianten',\n 'builder.blocksPanel.variantsAria': '{count} Varianten von {title} anzeigen',\n 'builder.blocksPanel.variantsHeading': 'Varianten',\n 'builder.blocksPanel.variantIssuesHint': 'Einige Varianten haben Validierungsprobleme.',\n 'builder.pageTree.title': 'Seitenstruktur',\n 'builder.pageTree.addChild': 'Unterelement hinzufügen',\n 'builder.pageTree.moreActions': 'Weitere Aktionen',\n 'builder.pageTree.moveUp': 'Nach oben',\n 'builder.pageTree.moveDown': 'Nach unten',\n 'builder.clipboard.paste': 'Einfügen',\n 'builder.clipboard.cut': 'Ausschneiden',\n 'builder.clipboard.writeError': 'Konnte nicht in die Zwischenablage schreiben: {detail}',\n 'builder.clipboard.rootCannotBeCut': 'Das Seiten-Wurzelelement kann nicht ausgeschnitten werden.',\n 'builder.clipboard.copied': '{label} kopiert',\n 'builder.clipboard.cutNotice': '{label} ausgeschnitten',\n 'builder.clipboard.pastedInto': '{summary} · in {destination}',\n 'builder.clipboard.notAllowed':\n '{component} kann nicht in {destination} eingefügt werden — der Slot lässt es nicht zu.',\n 'builder.clipboard.notAllowedByField':\n '{component} kann nicht auf oberster Ebene von „{field}“ eingefügt werden — das Feld lässt es nicht zu.',\n 'builder.clipboard.issueComponent': 'Komponente',\n // EC-584 — eine abgelehnte Platzierung (der eine Platzierungsrichter im Builder-Reducer).\n 'builder.placement.notAllowedByField':\n '{component} ist auf oberster Ebene von „{field}“ nicht erlaubt — das Feld lässt es nicht zu. Nichts wurde geändert.',\n 'builder.placement.notAllowedInSlot':\n '{component} ist in {destination} nicht erlaubt — der Slot lässt es nicht zu. Nichts wurde geändert.',\n 'builder.placement.serverOnly':\n '{component} wird nur auf dem Server gerendert und kann nicht auf die Arbeitsfläche gesetzt werden. Nichts wurde geändert.',\n 'builder.placement.dismiss': 'Hinweis schließen',\n // EC-494 — Zwischenablage-Fehler aus der Engine plus der studio-seitige Einfüge-Diff.\n 'builder.clipboard.error.corruptJson': 'Der Inhalt der Zwischenablage ist kein gültiges JSON: {detail}',\n 'builder.clipboard.error.notEnvelope':\n 'Der Inhalt der Zwischenablage ist kein Elytra-Fragment-Umschlag.',\n 'builder.clipboard.error.foreignFormat':\n 'Der Inhalt der Zwischenablage ist kein Elytra-Fragment (erwartetes Format \"{expected}\").',\n 'builder.clipboard.error.versionNewer':\n 'Die Fragmentversion {version} ist neuer als von diesem Studio unterstützt (Version {supported}).',\n 'builder.clipboard.error.versionUnsupported':\n 'Die Fragmentversion {version} wird nicht unterstützt (dieses Studio liest Version {supported}).',\n 'builder.clipboard.error.invalidPayload':\n 'Das Fragment der Zwischenablage verletzt das Fragment-Schema.',\n 'builder.clipboard.error.nodeNotFound': 'In der Komposition existiert kein Knoten \"{nodeId}\".',\n 'builder.clipboard.error.fixtureNotFound':\n 'Die Komponente \"{component}\" deklariert kein Fixture namens \"{fixture}\".',\n 'builder.clipboard.issue.missingComponent':\n 'Die Komponente \"{componentId}\" ist in diesem Projekt nicht registriert.',\n 'builder.clipboard.summary.pasted': 'Eingefügt',\n 'builder.clipboard.summary.pastedWith': 'Eingefügt — {parts}',\n 'builder.clipboard.summary.componentMissingOne': '{count} Komponente fehlt',\n 'builder.clipboard.summary.componentsMissing': '{count} Komponenten fehlen',\n 'builder.reuse.makeReusable': 'Wiederverwendbar machen',\n 'builder.reuse.detachToCopy': 'Als Kopie loslösen',\n 'builder.reuse.defaultElementName': 'Wiederverwendbares Element',\n 'builder.reuse.madeReusablePublished': '„{name}“ wiederverwendbar gemacht und veröffentlicht.',\n 'builder.reuse.madeReusablePublishFailed':\n '„{name}“ wiederverwendbar gemacht, aber die Veröffentlichung ist fehlgeschlagen — veröffentlichen Sie es aus seinem Dokument.',\n 'builder.reuse.madeReusableDraft':\n '„{name}“ wiederverwendbar gemacht (Entwurf) — veröffentlichen Sie es, um es auf Live-Seiten anzuzeigen.',\n 'builder.reuse.noTargetToDetach': 'Dieses Element hat kein Ziel zum Loslösen.',\n 'builder.reuse.noContentToDetach': 'Das referenzierte Element hat keinen Inhalt zum Loslösen.',\n 'builder.reuse.detachedToCopy': 'Als bearbeitbare Kopie losgelöst — die Live-Verknüpfung ist getrennt.',\n 'builder.reuse.makeReusableDescription':\n 'Verschiebt den ausgewählten Block in ein neues wiederverwendbares Element und bettet es hier ein. Dasselbe Element kann dann auf jeder Seite eingebettet werden. Veröffentlichen Sie es jetzt, um den Abschnitt überall sichtbar zu halten, oder speichern Sie es als Entwurf, um zuerst weiter zu bearbeiten.',\n 'builder.reuse.nameLabel': 'Name',\n 'builder.reuse.namePlaceholder': 'Reservierungs-CTA',\n 'builder.reuse.saveDraft': 'Entwurf speichern',\n 'builder.reuse.publish': 'Veröffentlichen',\n 'builder.inspector.emptySelection':\n 'Wählen Sie ein Element in der Struktur oder auf der Arbeitsfläche, um seine Eigenschaften zu bearbeiten.',\n 'builder.inspector.title': 'Inspektor',\n 'builder.inspector.unknownComponent': 'unbekannte Komponente',\n 'builder.inspector.noManifest':\n 'Für diese Komponente ist kein Manifest registriert, ihre Eigenschaften können nicht bearbeitet werden.',\n 'builder.inspector.props': 'Eigenschaften',\n 'builder.inspector.noEditableProps': 'Keine bearbeitbaren Eigenschaften.',\n 'builder.inspector.slots': 'Slots',\n 'builder.inspector.slotsHint': 'Slot-Elemente in der Seitenstruktur hinzufügen oder umsortieren.',\n 'builder.inspector.propertiesPane': 'Eigenschaften',\n 'builder.inspector.invalidJson': 'Ungültiges JSON',\n 'builder.layout.title': 'Layout',\n 'builder.layout.direction': 'Richtung',\n 'builder.layout.vertical': 'Vertikal',\n 'builder.layout.horizontal': 'Horizontal',\n 'builder.layout.columns': 'Spalten',\n 'builder.layout.columnCount.one': '{count} Spalte',\n 'builder.layout.columnCount.other': '{count} Spalten',\n 'builder.layout.gap': 'Abstand',\n 'builder.layout.alignment': 'Ausrichtung',\n 'builder.layout.onPhones': 'Auf Smartphones',\n 'builder.layout.stack': 'Stapeln',\n 'builder.layout.keepColumns': 'Spalten beibehalten',\n 'builder.layout.gapStep.hairline': 'Haarlinie',\n 'builder.layout.gapStep.extraSmall': 'Sehr klein',\n 'builder.layout.gapStep.small': 'Klein',\n 'builder.layout.gapStep.medium': 'Mittel',\n 'builder.layout.gapStep.large': 'Groß',\n 'builder.layout.gapStep.extraLarge': 'Sehr groß',\n 'builder.layout.gapStep.huge': 'Riesig',\n 'builder.layout.align.start': 'Anfang',\n 'builder.layout.align.center': 'Zentriert',\n 'builder.layout.align.end': 'Ende',\n 'builder.layout.align.stretch': 'Strecken',\n 'builder.canvas.pagePreview': 'Seitenvorschau',\n 'builder.canvas.reusableUnpublishedTitle': 'Dieses wiederverwendbare Element ist noch nicht veröffentlicht',\n 'builder.canvas.reusableMissingTitle': 'Dieses wiederverwendbare Element fehlt',\n 'builder.canvas.reusableUnpublishedHint':\n 'Veröffentlichen Sie es, um es hier und auf Live-Seiten anzuzeigen — oder öffnen Sie es im Eigenschaften-Panel, um weiter zu bearbeiten.',\n 'builder.canvas.reusableMissingHint':\n 'Öffnen Sie das „Element“ der Einbettung im Eigenschaften-Panel, um die Referenz zu korrigieren.',\n 'builder.canvas.listingInvalidTitle': 'Diese Liste kann nicht ausgeführt werden:',\n 'builder.canvas.viewportPreviewAria': '{label} Vorschau',\n 'builder.canvas.viewportWidthTitle': '{label} Breite',\n 'builder.canvas.breakpointsIssueLabel': 'Breakpoints',\n 'builder.canvas.undo': 'Rückgängig',\n 'builder.canvas.redo': 'Wiederholen',\n 'builder.canvas.insert': 'Einfügen',\n // In-canvas \"+\" insertion affordances at block boundaries (EC-405).\n 'builder.canvas.insertBefore': 'Block davor einfügen',\n 'builder.canvas.insertAfter': 'Block danach einfügen',\n 'builder.canvas.insertInto': 'Block darin einfügen',\n 'builder.canvasTheme.legacyNotice':\n 'Die canvas.css dieses Projekts bündelt noch das Studio-Designsystem mit dem Site-Theme (die alte zusammengeführte Form). Richten Sie canvas.css stattdessen auf den eigenen Full-Tailwind-Theme-Einstieg der Site — siehe Theming-Leitfaden (docs/theming.md). Bis dahin funktioniert alles weiter.',\n 'builder.canvasTheme.stylesheetErrorNotice':\n 'Das Canvas-Stylesheet konnte nicht geladen werden — Blöcke werden ungestylt dargestellt. Prüfen Sie den canvas.css-Build des Studios.',\n 'builder.canvasTheme.noThemeTokensNotice':\n 'Das Canvas-Stylesheet definiert keine Theme-Tokens. canvas.css sollte den Full-Tailwind-Theme-Einstieg der Site importieren (siehe docs/theming.md).',\n 'builder.canvasTheme.noStylesheetNotice':\n 'Es ist kein Canvas-Stylesheet konfiguriert — Blöcke werden ungestylt dargestellt. Die App muss eines über setCanvasStylesheetUrl bereitstellen (das create-elytra-Template verdrahtet das).',\n // EC-549 — ein Textabschnitt zwischen den Blöcken.\n 'builder.run.title': 'Text',\n 'builder.run.items': '{count} Element(e)',\n 'builder.run.hint':\n 'Geschriebener Text zwischen den Blöcken — hier bearbeiten; er behält seinen Platz zwischen den Blöcken und wird so veröffentlicht, wie er hier steht.',\n 'builder.run.delete': 'Text löschen',\n 'builder.spacing.gapAfterChild': 'Abstand nach Element {index}',\n 'builder.richText.toolbarLabel': 'Textformatierung',\n 'builder.richText.linkPlaceholder': 'https://… (leer entfernt)',\n 'builder.richText.linkUrl': 'Link-URL',\n 'builder.richText.set': 'Setzen',\n 'builder.richText.applyLink': 'Link anwenden',\n 'builder.richText.bold': 'Fett',\n 'builder.richText.italic': 'Kursiv',\n 'builder.richText.link': 'Link',\n 'builder.richText.removeLink': 'Link entfernen',\n 'builder.richText.unlink': 'Verknüpfung lösen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS rich-text editor (EC-314) — the TipTap field editor\n // ─────────────────────────────────────────────────────────────────────────\n 'richText.placeholder': 'Schreiben Sie etwas…',\n // Shown in the lazy boundary while the TipTap editor chunk loads (EC-322).\n 'richText.loading': 'Editor wird geladen…',\n 'richText.bold': 'Fett',\n 'richText.italic': 'Kursiv',\n 'richText.underline': 'Unterstrichen',\n 'richText.strike': 'Durchgestrichen',\n 'richText.code': 'Code im Text',\n 'richText.paragraph': 'Absatz',\n 'richText.heading': 'Überschrift {level}',\n 'richText.bulletList': 'Aufzählung',\n 'richText.orderedList': 'Nummerierte Liste',\n 'richText.blockquote': 'Zitat',\n 'richText.codeBlock': 'Codeblock',\n 'richText.horizontalRule': 'Trennlinie',\n 'richText.fontSize.label': 'Schriftgröße',\n 'richText.fontSize.small': 'Klein',\n 'richText.fontSize.normal': 'Normal',\n 'richText.fontSize.large': 'Groß',\n 'richText.fontSize.xlarge': 'Sehr groß',\n 'richText.undo': 'Rückgängig',\n 'richText.redo': 'Wiederholen',\n 'richText.link.add': 'Link',\n 'richText.link.remove': 'Link entfernen',\n 'richText.link.external': 'Externe URL',\n 'richText.link.externalPlaceholder': 'https://…',\n 'richText.link.document': 'Dokument verknüpfen',\n 'richText.link.documentSearch': 'Dokumente suchen…',\n 'richText.link.documentEmpty': 'Keine passenden Dokumente.',\n 'richText.link.apply': 'Anwenden',\n 'richText.image.add': 'Bild',\n 'richText.embed.add': 'Komponente einbetten',\n 'richText.embed.badge': 'Einbettung',\n 'richText.embed.unknown': 'Unbekannte Komponente',\n 'richText.embed.empty': 'Keine Komponenten zum Einbetten verfügbar.',\n 'richText.embed.editProps': 'Einstellungen bearbeiten',\n 'richText.embed.editTitle': '{name} bearbeiten',\n 'richText.embed.noProps': 'Diese Komponente hat keine bearbeitbaren Einstellungen.',\n 'richText.embed.blocksNote': 'Verschachtelte Inhaltsbereiche werden auf der Arbeitsfläche bearbeitet, nicht hier.',\n 'richText.carrier.unknown': 'Unbekannter Inhaltsblock:',\n 'richText.slash.text': 'Text',\n 'richText.slash.empty': 'Keine passenden Blöcke',\n 'richText.slash.componentsGroup': 'Komponenten',\n // EC-388/EC-431 — expand the editing surface (the centered stage for long prose).\n 'richText.expand.expand': 'Editor vergrößern',\n 'richText.expand.collapse': 'Editor verkleinern',\n 'richText.expand.title': 'Rich Text',\n // EC-436 — Titel der vergrößerten Ansicht mit Feldbezeichnung ({field}).\n 'richText.expand.titleWithField': '{field} — Rich Text',\n 'richText.expand.editingInSheet': 'Bearbeitung in der vergrößerten Ansicht — klicken Sie, um zurückzukehren',\n\n // ─────────────────────────────────────────────────────────────────────────\n // EC-199 — AI assistant chat panel + creation flow\n // ─────────────────────────────────────────────────────────────────────────\n 'ai.panel.title': 'Assistent',\n 'ai.panel.toggle': 'KI-Assistenten ein- oder ausblenden',\n 'ai.panel.close': 'Assistenten schließen',\n 'ai.panel.loading': 'Assistent wird geladen…',\n 'ai.panel.working': 'Wird bearbeitet…',\n 'ai.panel.placeholder': 'Bitten Sie den Assistenten, Inhalte zu erstellen…',\n 'ai.panel.send': 'Senden',\n 'ai.panel.emptyTitle': 'Inhalte mit KI erstellen',\n 'ai.panel.emptyHint':\n 'Beschreiben Sie, was Sie erstellen möchten — zum Beispiel: „Schreibe einen Beitrag über unsere neuen Öffnungszeiten.“ Der Assistent erstellt einen Entwurf zur Prüfung.',\n 'ai.panel.unavailable': 'Der Assistent ist in diesem Projekt nicht verfügbar.',\n // EC-334/EC-380 — new-conversation affordance\n 'ai.panel.newConversation': 'Neue Unterhaltung',\n 'ai.step.search': '{collection} durchsucht — {count} gefunden',\n 'ai.step.searchRunning': '{collection} wird durchsucht…',\n 'ai.step.listAssets': 'Medien durchsucht — {count} gefunden',\n 'ai.step.listAssetsRunning': 'Medien werden durchsucht…',\n 'ai.step.getDocument': 'Dokument gelesen',\n 'ai.step.getDocumentRunning': 'Dokument wird gelesen…',\n 'ai.step.drafting': 'Entwurf für {collection} wird erstellt…',\n 'ai.step.translating': '{completed} von {total} werden übersetzt…',\n 'ai.step.translatingDoc': 'Dokument wird übersetzt…',\n 'ai.step.translateNothing': 'Nichts zu übersetzen — alle Sprachen sind bereits ausgefüllt.',\n // EC-378 — the updateFields edit flow\n 'ai.step.updatingDoc': 'Änderungen am Dokument werden vorgeschlagen…',\n 'ai.step.updateNoChange': 'Keine Änderungen nötig — die Werte stimmen bereits überein.',\n 'ai.proposal.title': 'Vorschlag für {collection}',\n 'ai.proposal.reviewHint': 'Prüfen Sie den Entwurf und übernehmen oder verwerfen Sie ihn anschließend.',\n 'ai.proposal.apply': 'Als Entwurf übernehmen',\n 'ai.proposal.discard': 'Verwerfen',\n 'ai.proposal.applied': 'Als Entwurf übernommen',\n 'ai.proposal.discarded': 'Verworfen',\n 'ai.proposal.discardedNote': 'Dieser Vorschlag wurde verworfen.',\n 'ai.proposal.open': 'Dokument öffnen',\n 'ai.proposal.unavailable': 'Dieser Vorschlag kann nicht mehr angezeigt werden.',\n 'ai.proposal.diffBefore': 'Leer',\n 'ai.proposal.diffAfter': 'Vorschlag',\n 'ai.proposal.diffUnified': 'Vorgeschlagener Inhalt',\n // EC-382 — the expandable review surface (a roomy full-height sheet).\n 'ai.proposal.expandReview': 'Prüfansicht erweitern',\n 'ai.proposal.collapseReview': 'Prüfansicht schließen',\n 'ai.error.route': 'Der Assistent ist derzeit nicht verfügbar. Bitte versuchen Sie es erneut.',\n 'ai.error.routeNotMounted':\n 'Unter {endpoint} ist keine Assistenten-Route eingebunden – die Anfrage wurde von der Seite statt von der KI-Route beantwortet. Prüfen Sie die Routen-Einbindung des Hosts; auf einem Dev-Server fehlt möglicherweise die Build-Ausgabe des Studios.',\n 'ai.error.generic': 'Etwas ist schiefgelaufen. Bitte versuchen Sie es erneut.',\n 'ai.error.applyFailed': 'Der Entwurf konnte nicht übernommen werden.',\n 'ai.error.applyInvalid': 'Der Vorschlag passt nicht mehr zum aktuellen Dokument: {issues}',\n 'ai.error.stepCap':\n 'Der Assistent hat nach {max} Werkzeugschritten angehalten. Senden Sie eine weitere Nachricht, um fortzufahren.',\n // EC-332 — full-document translation (header action + chat tool)\n 'ai.translate.action': 'Dokument übersetzen',\n 'ai.translate.tooltip': 'Leere Übersetzungen mit KI ausfüllen',\n 'ai.translate.dialogTitle': 'Dokument übersetzen',\n 'ai.translate.dialogDescription':\n 'Leere Sprachwerte aus {base} mit KI ausfüllen. Vorhandene Übersetzungen werden nie überschrieben.',\n 'ai.translate.targetsLabel': 'Zielsprachen',\n 'ai.translate.scopeLabel': 'Zu übersetzender Umfang',\n 'ai.translate.fillMissing': 'Nur fehlende Übersetzungen ausfüllen',\n 'ai.translate.retranslateAll': 'Alles neu übersetzen',\n 'ai.translate.retranslateSoon': 'Demnächst',\n 'ai.translate.confirm': 'Übersetzen',\n 'ai.translate.preparing': 'Übersetzung wird vorbereitet…',\n 'ai.translate.progress': '{completed} von {total} werden übersetzt…',\n 'ai.translate.applying': 'Übersetzungen werden gespeichert…',\n 'ai.translate.nothing': 'Alles ist bereits übersetzt — es gibt nichts auszufüllen.',\n 'ai.translate.applied': '{count} Übersetzungen in {locales} Sprachen wurden ausgefüllt.',\n 'ai.translate.cancelled': 'Übersetzung abgebrochen — Teilergebnisse bleiben im Entwurf erhalten.',\n 'ai.translate.failed': 'Übersetzung fehlgeschlagen. Bitte versuchen Sie es erneut.',\n 'ai.translate.close': 'Schließen',\n 'ai.translate.proposalTitle': 'Übersetzung von {collection}',\n 'ai.translate.diffBefore': 'Aktuell',\n 'ai.translate.diffAfter': 'Übersetzt',\n // EC-593 — was ein Übersetzungslauf nicht übersetzen konnte, wird gemeldet, nie stillschweigend übersprungen.\n 'ai.translate.skippedTitle': 'Nicht übersetzt ({count})',\n 'ai.translate.skipped.unreadable': 'der gespeicherte Wert konnte nicht gelesen werden',\n 'ai.translate.skipped.notReturned': 'der Assistent hat dafür keinen Text geliefert',\n 'ai.translate.skipped.structureChanged':\n 'die Übersetzung hat Formatierungen, Links oder eingebettete Elemente verloren — das Original wurde beibehalten',\n // EC-378 — the update (edit-existing) proposal\n 'ai.update.proposalTitle': 'Änderungen an {collection}',\n 'ai.update.diffBefore': 'Aktuell',\n 'ai.update.diffAfter': 'Vorgeschlagen',\n // EC-591 — Hinweise auf der Arbeitsfläche für Rollen, die keine Komponente der Liste füllt.\n 'builder.roles.noStack':\n 'Diese Arbeitsfläche braucht eine Komponente mit der Rolle \"layout.stack\" — die Blöcke des Feldes werden darin angeordnet —, und die Komponenten dieses Projekts haben keine. Tragen Sie eine in die Komponentenliste Ihrer Konfiguration ein (zum Beispiel Stack aus @elytracms/components).',\n 'builder.roles.noGrid':\n 'Keine Komponente füllt die Rolle \"layout.grid\" — Blöcke nebeneinander ablegen (Spalten) ist deshalb aus.',\n 'builder.roles.noText':\n 'Keine Komponente füllt die Rolle \"text\" — die vorbefüllten Layout-Vorlagen (Stack, Grid) sind deshalb aus.',\n 'builder.inspector.unset': 'Nicht gesetzt',\n 'builder.inspector.unsetWithHint': 'Nicht gesetzt (Standard: {hint})',\n // EC-586 / EC-581 (wave-0092, zone A) — canonical values and the per-FieldType definition\n 'cms.issueMessage.nonCanonicalValue': 'Das Feld „{field}“ ist in einer nicht kanonischen Form für ein Feld vom Typ „{type}“ gespeichert — es wurde am Schreibweg vorbei geschrieben, der je Feldtyp genau eine Form speichert. Es wird weiterhin korrekt gelesen; erneutes Speichern des Dokuments legt die kanonische Form ab.',\n 'cms.issueMessage.assetHoldsUrl': 'Das Asset-Feld „{field}“ enthält eine URL — ein Asset-Wert ist ein Asset aus der Mediathek, nie eine URL. Laden Sie das Bild in die Mediathek hoch und wählen Sie es aus, oder geben Sie einer Komponente für ein externes Bild eine feste src.',\n // EC-584 — die AllowList-Prüfung (Konfiguration / Registrierung).\n 'cms.issueMessage.emptyAllow': 'Das Feld „{field}“ deklariert ein leeres „allow“ — eine Liste erlaubt genau die genannten IDs, eine leere also nichts. Lassen Sie „allow“ weg für die Standard-Auswahl des Feldtyps, oder nennen Sie die Komponenten-IDs.',\n 'cms.issueMessage.unknownAllowComponent': 'Das Feld „{field}“ erlaubt „{component}“, das keine Komponente dieses Projekts ist — prüfen Sie die ID oder entfernen Sie sie aus „allow“.',\n 'cms.issueMessage.blocksNotTopLevel': 'Das Feld „{field}“ ist ein „blocks“-Feld innerhalb eines Objekts — ein blocks-Feld steht nur auf oberster Ebene (eine Arbeitsfläche in einer Wiederholung bricht das Formular, die Validierungspfade und den Auslieferungstyp). Legen Sie ein weiteres blocks-Feld auf oberster Ebene an oder geben Sie einer Komponente eine blocks-Eigenschaft (einen Slot).',\n 'cms.issueMessage.placementKeyReserved': 'Das Asset-Feld „{asset}“ deklariert das platzierungsbezogene Unterfeld „{field}“, einen Namen, der dem Asset selbst gehört — es käme nie bei einer Komponente an (das „{field}“ des Assets gewinnt). Benennen Sie es um; Alternativtext, Bildnachweis oder KI-Kennzeichnung eines Bildes gehören in die Asset-Sammlung.',\n 'cms.issueMessage.placementNotScalar': 'Das Asset-Feld „{asset}“ deklariert das platzierungsbezogene Unterfeld „{field}“ vom Typ „{type}“ — eine Platzierung enthält Angaben zu dieser Verwendung des Bildes (eine Bildunterschrift, ein Layout), niemals eine Referenz oder Rich Text.',\n 'cms.issueMessage.sourceNotOnAssetCollection': 'Das Feld „{field}“ deklariert die Quelle „{source}“ — eine Quelle für eingebettete Metadaten füllt nur ein Feld der obersten Ebene der Asset-Sammlung.',\n 'cms.issueMessage.sourceTypeMismatch': 'Das Feld „{field}“ deklariert die Quelle „{source}“, die kein Feld vom Typ „{type}“ füllen kann (jede Quelle füllt Text; iptc:digitalSourceType auch einen Wahrheitswert).',\n 'cms.issueMessage.uniqueNotTopLevel': 'Das Unterfeld „{field}“ deklariert „unique“ — Eindeutigkeit wird über die Dokumente einer Sammlung hinweg beurteilt und gilt daher nur für Felder auf oberster Ebene.',\n 'cms.issueMessage.localizedOnProp': 'Die Komponenten-Eigenschaft „{field}“ deklariert „localized“ — ein sprachabhängiger Wert wird je Sprache im Dokument gespeichert, daher kann nur ein Dokumentfeld auf oberster Ebene sprachabhängig sein (machen Sie das Feld sprachabhängig, das die Komposition enthält).',\n 'cms.issueMessage.localizedOnSubField': 'Das Unterfeld „{field}“ deklariert „localized“ — ein sprachabhängiger Wert wird je Sprache im Dokument gespeichert, daher kann nur ein Feld auf oberster Ebene sprachabhängig sein (machen Sie das Feld sprachabhängig, das es enthält).',\n 'cms.issueMessage.ruleNotApplicable': 'Das Feld „{field}“ deklariert „{rule}“, was ein Feld vom Typ „{type}“ nicht einhalten kann.',\n 'cms.issueMessage.ruleNotApplicableUnlessMultiple': 'Das Feld „{field}“ deklariert „{rule}“, was ein einzelnes Feld vom Typ „{type}“ nicht einhalten kann — bei einem „multiple“-Feld zählt es Einträge.',\n 'cms.issueMessage.boundNotAnInstant': 'Das Feld „{field}“ deklariert {rule} {declared} für ein Datumsfeld, was kein Datum ist — verwenden Sie einen ISO-8601-String wie „1900-01-01“.',\n 'cms.issueMessage.boundNotANumber': 'Das Feld „{field}“ deklariert {rule} {declared} als String — die Grenzen eines Felds vom Typ „{type}“ sind Zahlen (nur ein Datumsfeld nimmt ein ISO-Datum als Grenze).',\n 'cms.issueMessage.invalidPattern': 'Das Feld „{field}“ deklariert das Muster „{pattern}“, das kein gültiger regulärer Ausdruck ist.',\n 'cms.issueMessage.defaultNotOfType': 'Das Feld „{field}“ deklariert den Standardwert {value}, der kein Wert vom Typ „{type}“ ist.',\n 'cms.issueDetail.fewerPlainTextCharacters': 'hat weniger als {min} Zeichen Klartext',\n 'cms.issueDetail.morePlainTextCharacters': 'hat mehr als {max} Zeichen Klartext',\n 'content.queryError.operatorNotForType': 'Der Operator „{operator}“ gilt nicht für „{field}“, ein Feld vom Typ „{type}“.',\n 'content.queryError.operandType': 'Der Operator „{operator}“ auf „{field}“ erhielt {value}, was kein {operand}-Wert ist — „{field}“ ist ein Feld vom Typ „{type}“.',\n}\n"]}
|
|
1
|
+
{"version":3,"file":"messages.de.js","sourceRoot":"","sources":["../../../src/lib/i18n/messages.de.ts"],"names":[],"mappings":"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","sourcesContent":["import type { TranslationCatalog } from './messages.en'\n\n/**\n * The engine-shipped **German** studio-chrome catalog (EC-398), importable as\n * `@elytracms/studio/locales/de` and passed by reference into\n * `defineStudio({ i18n: { locales: { de: deMessages } } })` — translations stay\n * code passed directly (EC-241's principle; no registry, no runtime fetch). A\n * consumer overrides individual strings by spreading:\n * `{ ...deMessages, 'some.key': 'eigene Formulierung' }`.\n *\n * Seeded 2026-07-15 as the best-of merge of the two hand-maintained consumer\n * catalogs (Naturkinder wins conflicts) + fresh translations for the keys both\n * lacked (incl. EC-397's sign-in/boot copy). Typed against\n * {@link TranslationCatalog} so an unknown/stale key fails typecheck;\n * `messages.de.test.ts` pins EXACT key parity with the EN source (no missing,\n * no stale, matching `{var}` placeholders) — a new engine string fails the\n * engine build until it is translated here.\n *\n * Sections mirror `messages.en.ts` so the files diff side-by-side.\n *\n * Glossar: Sammlung · Dokument · Feld · Medien · Komponente · Weiterleitung ·\n * Verweis · Version · Entwurf · veröffentlichen · Benutzer · Rolle ·\n * Einstellungen · Bereitstellung.\n */\nexport const deMessages: TranslationCatalog = {\n // ─────────────────────────────────────────────────────────────────────────\n // Common — generic, reused across surfaces\n // ─────────────────────────────────────────────────────────────────────────\n 'common.save': 'Speichern',\n 'common.saving': 'Wird gespeichert…',\n 'common.saveChanges': 'Änderungen speichern',\n 'common.cancel': 'Abbrechen',\n 'common.delete': 'Löschen',\n 'common.remove': 'Entfernen',\n 'common.add': 'Hinzufügen',\n 'common.edit': 'Bearbeiten',\n 'common.close': 'Schließen',\n 'common.copy': 'Kopieren',\n 'common.duplicate': 'Duplizieren',\n 'common.select': 'Auswählen',\n 'common.clear': 'Zurücksetzen',\n 'common.apply': 'Anwenden',\n 'common.upload': 'Hochladen',\n 'common.retry': 'Erneut versuchen',\n 'common.discard': 'Verwerfen',\n 'common.dismiss': 'Schließen',\n 'common.loading': 'Wird geladen…',\n 'common.searchPlaceholder': 'Suchen…',\n 'common.none': 'Keine',\n 'common.required': 'erforderlich',\n 'common.optional': 'optional',\n 'common.yes': 'Ja',\n 'common.no': 'Nein',\n 'common.true': 'wahr',\n 'common.false': 'falsch',\n 'common.backendUnreachable': 'Das Speicher-Backend ist nicht erreichbar.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Built-in navigation views (the section rail)\n // ─────────────────────────────────────────────────────────────────────────\n 'nav.cms.label': 'Inhalt',\n 'nav.cms.description': 'Sammlungen, Felder und Dokumente modellieren.',\n 'nav.components.label': 'Komponenten',\n 'nav.components.description': 'Registry der Primitive und Projektkomponenten durchsuchen.',\n 'nav.redirects.label': 'Weiterleitungen',\n 'nav.redirects.description': 'URL-Weiterleitungen (301/302) für diese Website erstellen und verwalten.',\n 'nav.assets.label': 'Medien',\n 'nav.assets.description': 'Hochgeladene Medien und Metadaten verwalten.',\n 'nav.users.label': 'Benutzer',\n 'nav.users.description': 'Verwalten, wer Zugriff auf diese Bereitstellung hat, und deren Rolle.',\n 'nav.settings.label': 'Einstellungen',\n 'nav.settings.description': 'Projektmetadaten und Sprachen konfigurieren.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Current-user menu (shell header)\n // ─────────────────────────────────────────────────────────────────────────\n 'userMenu.accountMenu': 'Kontomenü',\n 'userMenu.lightMode': 'Heller Modus',\n 'userMenu.darkMode': 'Dunkler Modus',\n 'userMenu.accountSettings': 'Kontoeinstellungen',\n 'userMenu.soon': 'Bald',\n 'userMenu.signOut': 'Abmelden',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Shell — top bar, section rail, boot/error frames, project chrome\n // ─────────────────────────────────────────────────────────────────────────\n 'shell.allProjects': 'Alle Projekte',\n 'shell.breadcrumb.label': 'Brotkrümelnavigation',\n 'shell.nav.label': 'Bereiche',\n 'shell.sidebar.expand': 'Seitenleiste ausklappen',\n 'shell.sidebar.collapse': 'Seitenleiste einklappen',\n 'shell.sidebar.collapseLabel': 'Einklappen',\n 'shell.nav.planned': 'Geplant',\n 'shell.nav.collapseView': '{name} einklappen',\n 'shell.nav.expandView': '{name} ausklappen',\n 'shell.nav.issuesCount': '{count} Sidebar-Probleme',\n // EC-606 — gespeicherte Dokumente einer Sammlung, die das Projekt nicht (mehr) deklariert.\n 'shell.nav.orphanedCollections':\n 'Gespeicherte Dokumente aus Sammlungen, die dieses Projekt nicht deklariert, sind im Studio ausgeblendet: {collections}. Um sie zurückzuholen, deklarieren Sie die Sammlung in „{file}“ erneut (oder stellen Sie ihre alte id wieder her).',\n 'shell.nav.orphanedCollections.item': '„{collection}“ ({count} gespeichert)',\n 'shell.nav.orphanedCollections.itemPublished':\n '„{collection}“ ({count} gespeichert, davon {published} veröffentlicht)',\n 'shell.sectionState.empty.title': 'Noch nichts vorhanden',\n 'shell.sectionState.empty.description': 'Dieser Bereich hat keine Inhalte für das aktive Projekt.',\n 'shell.sectionState.loading.description': 'Der aktuelle Stand dieses Bereichs wird geladen.',\n 'shell.sectionState.error.title': 'Etwas ist schiefgelaufen',\n 'shell.sectionState.error.description':\n 'Dieser Bereich konnte nicht geladen werden. Bitte versuchen Sie es gleich erneut.',\n 'shell.sectionState.unavailable.title': 'Nicht verfügbar',\n 'shell.sectionState.unavailable.description': 'Dieser Bereich ist für das aktive Projekt nicht verfügbar.',\n 'shell.sectionState.planned.title': 'Geplant',\n 'shell.sectionState.planned.description': 'Diese Oberfläche ist geplant und für dieses Projekt noch nicht aktiviert.',\n 'shell.sectionState.badge.empty': 'leer',\n 'shell.sectionState.badge.loading': 'lädt',\n 'shell.sectionState.badge.error': 'Fehler',\n 'shell.sectionState.badge.unavailable': 'nicht verfügbar',\n 'shell.sectionState.badge.planned': 'geplant',\n 'shell.projectNotFound.title': 'Projekt nicht gefunden',\n 'shell.projectNotFound.body':\n 'Dieses Projekt existiert nicht oder wurde gelöscht. Möglicherweise bestand es nur in dieser Sitzung.',\n 'shell.backToProjects': 'Zurück zu den Projekten',\n 'shell.routeNotFound.title': 'Seite nicht gefunden',\n 'shell.routeNotFound.body': 'Diese Studio-URL verweist auf keinen Bereich.',\n 'shell.projectSwitcher.recent': 'Zuletzt verwendet',\n 'shell.projects': 'Projekte',\n 'shell.projectSwitcher.browseAll': 'Alle Projekte durchsuchen',\n 'shell.project.notProvisioned': 'nicht bereitgestellt',\n 'shell.projectList.recent': 'Zuletzt verwendet',\n 'shell.projectList.empty.title': 'Keine Projekte',\n 'shell.projectCard.open': 'Projekt öffnen',\n 'shell.session.loading': 'Projekt wird geladen…',\n 'shell.session.error.title': 'Der gespeicherte Stand dieses Projekts konnte nicht geladen werden',\n 'shell.session.error.body':\n 'Das Studio greift gegenüber einem aktiven Backend niemals auf Beispielinhalte zurück – Ihre Daten sind sicher. Versuchen Sie es erneut, sobald das Backend erreichbar ist.',\n 'shell.workspaceGate.issuesLabel': 'Probleme der Workspace-Konfiguration',\n 'shell.backend.connecting': 'Verbindung zum Backend wird hergestellt…',\n 'shell.backend.notConfigured.title': 'Backend nicht konfiguriert',\n 'shell.backend.unavailable.title': 'Backend nicht verfügbar',\n 'shell.backend.unavailable.body':\n 'Das konfigurierte Convex-Deployment hat nicht geantwortet. Ihre Daten sind im Backend sicher – das Studio wechselt nicht zur lokalen Speicherung.',\n 'shell.backend.retryConnection': 'Verbindung erneut versuchen',\n // EC-258 — the unified deployment-setup boot gate.\n 'shell.deploymentSetup.title': 'Bereitstellung einrichten',\n 'shell.deploymentSetup.checking': 'Bereitstellung wird geprüft…',\n 'shell.deploymentSetup.description':\n 'Das Studio kann erst starten, wenn diese Punkte behoben sind. Korrigieren Sie alle Einträge und laden Sie anschließend neu.',\n 'shell.deploymentSetup.issuesLabel': 'Prüfungen der Bereitstellung',\n 'shell.deploymentSetup.fixLabel': 'Beheben',\n 'shell.deploymentSetup.retry': 'Erneut prüfen',\n // EC-399 — expected deployment env vars (presence only) on the setup screen.\n 'shell.deploymentSetup.envSection': 'Umgebungsvariablen der Bereitstellung',\n 'shell.deploymentSetup.envSectionHint':\n 'Umgebungsvariablen, die diese Bereitstellung erwartet — nur Vorhandensein, Werte werden nie angezeigt. `elytra doctor` prüft sie verlässlich.',\n 'shell.unsavedChanges.title': 'Nicht gespeicherte Änderungen',\n 'shell.unsavedChanges.body':\n 'Sie haben nicht gespeicherte Änderungen. Speichern Sie sie, bevor Sie die Seite verlassen, oder verwerfen Sie sie.',\n 'shell.unsavedChanges.saving': 'Wird gespeichert…',\n 'shell.devLogin.badge': 'Dev-Login',\n 'shell.devLogin.hint':\n 'Automatische Dev-Anmeldung: Das Studio wurde über VITE_ELYTRA_DEV_LOGIN automatisch angemeldet (nur in Entwicklungs-Builds). Entfernen Sie die Variable, um die echte Anmeldung zu testen.',\n 'shell.playground.badge': 'Playground',\n 'shell.playground.hint':\n 'Playground-Modus: Daten liegen im Arbeitsspeicher dieses Geräts und werden beim Neuladen zurückgesetzt. Es wird nichts in einem Backend gespeichert.',\n 'shell.deliveryHealth.dismiss': 'Schließen',\n 'shell.rolePolicyDrift.title':\n 'Diese Deployment-Umgebung setzt eine andere Rollenrichtlinie durch, als das Projekt deklariert – Berechtigungen sind möglicherweise nicht wie erwartet.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Customization issues — the section-rail foot (`NavIssues`)\n // ─────────────────────────────────────────────────────────────────────────\n // EC-478. Jede `{var}` ist ein BEZEICHNER (Eintrags-id, Erweiterungspunkt,\n // Komponenten-/Sammlungs-id) und bleibt bewusst unübersetzt. Fachbegriffe, die\n // im Code stehen (`reuse.component`, `reuse.relationProp`, `studio.config`,\n // Prop, Slot, Block), bleiben ebenfalls unübersetzt — der Entwickler muss sie\n // in seiner Konfiguration wiederfinden.\n // EC-479 — das Projekt deklariert nichts, womit das Studio arbeiten könnte.\n 'customization.issue.noCollections':\n 'Dieses Projekt deklariert keine Inhaltssammlungen. Fügen Sie sie in „{file}“ hinzu — das Studio zeigt Ihr Schema oder keines, niemals Beispielinhalte.',\n 'customization.issue.duplicateOverrideId':\n 'Doppelte Überschreibungs-id „{id}“ für „{point}“ — die spätere wird ignoriert.',\n 'customization.issue.unknownOverrideTarget':\n 'Die Überschreibung „{id}“ für „{point}“ passt zu keinem eingebauten Baustein, den sie ersetzen könnte.',\n 'customization.issue.invalidOverride': 'Die Überschreibung „{id}“ für „{point}“ ist ungültig: {reason}',\n 'customization.issue.reason.rendererNotAComponent': 'der Renderer ist keine Komponente',\n 'customization.issue.reason.viewNoRender': 'die Ansicht hat keine render-Funktion',\n 'customization.issue.reason.viewNoLabel': 'die Ansicht hat keine Beschriftung',\n 'customization.issue.derivedIdBuiltinCollision':\n 'Die Ansicht „{label}“ für „{point}“ leitet die id „{id}“ aus ihrer Beschriftung ab, was der eingebauten Ansicht „{id}“ entspricht — die eingebaute Ansicht bleibt erhalten und diese wird ignoriert. Geben Sie eine explizite id an, um eine eingebaute Ansicht absichtlich zu ersetzen.',\n 'customization.issue.derivedIdCollectionCollision':\n 'Die Ansichts-id „{id}“ für „{point}“ ist mehrdeutig: Sie verbindet die Sammlungen {collections} mit „-“, und eine Sammlung heißt buchstäblich „{joined}“ — deren eigene Ansicht leitet dieselbe id ab. Geben Sie dieser Gruppe eine explizite id.',\n // EC-467 — die Deklaration wiederverwendbarer Elemente (`defineStudio({ reuse })`).\n 'builder.reuse.config.unknownComponent':\n 'Wiederverwendbare Elemente: Die Studio-Konfiguration deklariert reuse.component „{component}“, was keine registrierte Komponente ist. Korrigieren Sie die id oder entfernen Sie den reuse-Block, damit das Studio die Einbettung selbst ermittelt.',\n 'builder.reuse.config.noRelationProp':\n 'Wiederverwendbare Elemente: Die deklarierte Einbettung „{component}“ hat kein Relations-Prop für ein einzelnes Dokument und kann daher auf kein wiederverwendbares Dokument zeigen. Eine Einbettung benötigt genau ein Relations-Prop mit Kardinalität eins.',\n 'builder.reuse.config.unknownRelationProp':\n 'Wiederverwendbare Elemente: Die deklarierte Einbettung „{component}“ hat kein Relations-Prop für ein einzelnes Dokument mit dem Namen „{relationProp}“. Ihre Relations-Props sind: {props}.',\n 'builder.reuse.config.ambiguousRelationProp':\n 'Wiederverwendbare Elemente: Die deklarierte Einbettung „{component}“ hat {count} Relations-Props für ein einzelnes Dokument ({props}) — ergänzen Sie reuse.relationProp, um anzugeben, welches auf das wiederverwendbare Dokument zeigt.',\n 'builder.reuse.config.unknownCollection':\n 'Wiederverwendbare Elemente: „{component}.{relationProp}“ verweist auf die Sammlung „{collection}“, die dieses Projekt nicht definiert.',\n 'builder.reuse.config.noBlocksField':\n 'Wiederverwendbare Elemente: Die Sammlung „{collection}“ hinter „{component}.{relationProp}“ hat kein Block-Feld (Komposition), sodass die Einbettung nichts einbinden kann.',\n 'builder.reuse.config.ambiguousInference':\n 'Wiederverwendbare Elemente: {count} Komponenten haben die Form einer wiederverwendbaren Einbettung ({components}). Ein Projekt hat genau eine wiederverwendbare Einbettung, deshalb rät das Studio nicht — deklarieren Sie sie in studio.config als reuse: { component: \\'<id>\\' }. Bis dahin sind die Wiederverwendungs-Gesten deaktiviert.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Auth / errors\n // ─────────────────────────────────────────────────────────────────────────\n 'auth.signIn': 'Anmelden',\n // EC-397 — the engine sign-in screen (`SignInView`/`SignInScreen`).\n 'auth.signIn.heading': 'Bei {productName} anmelden',\n 'auth.signIn.headingCreate': 'Konto erstellen',\n 'auth.signIn.subtext.continue': 'Weiter zu {project}.',\n 'auth.signIn.subtext.register': 'Registrieren für {project}.',\n 'auth.signIn.subtext.generic': 'Melden Sie sich mit Ihrem Studio-Konto an.',\n 'auth.signIn.emailLabel': 'E-Mail',\n 'auth.signIn.emailPlaceholder': 'name@beispiel.de',\n 'auth.signIn.passwordLabel': 'Passwort',\n 'auth.signIn.submit': 'Anmelden',\n 'auth.signIn.submitCreate': 'Konto erstellen',\n 'auth.signIn.submitting': 'Anmeldung läuft…',\n 'auth.signIn.submittingCreate': 'Konto wird erstellt…',\n 'auth.signIn.toggle.firstTime': 'Zum ersten Mal bei dieser Bereitstellung?',\n 'auth.signIn.toggle.alreadyHave': 'Sie haben bereits ein Konto für diese Bereitstellung?',\n 'auth.signIn.toggle.signIn': 'Anmelden',\n 'auth.signIn.toggle.createAccount': 'Konto erstellen',\n 'auth.signIn.devAccounts.title': 'Playground-Modus — vorbereitete Entwicklungskonten',\n // EC-397 — engine-classified sign-in failures (the EC-362/EC-363 reason\n // codes). Each message MUST stay byte-identical to the auth-adapter copy it\n // localizes: `signInErrorMessageKey` (lib/auth-errors.ts) recognizes a\n // failure by exact EN-message match, so a reworded adapter message simply\n // falls back to the raw English until re-synced here —\n // `lib/auth-errors.test.ts` pins the sync against the real classifier.\n 'auth.signIn.error.invalidCredentials': 'E-Mail-Adresse oder Passwort ist falsch.',\n 'auth.signIn.error.invalidCredentialsSignUp':\n 'Diese E-Mail-Adresse oder dieses Passwort kann nicht verwendet werden (Passwort zu kurz?).',\n 'auth.signIn.error.accountExists': 'Für diese E-Mail-Adresse gibt es bereits ein Konto. Bitte melden Sie sich an.',\n 'auth.signIn.error.deploymentMisconfigured':\n 'Diese Bereitstellung kann Sie nicht anmelden: Der Auth-Signaturschlüssel ist nicht gesetzt. Führen Sie `npx @convex-dev/auth` für diese Bereitstellung aus und versuchen Sie es erneut. (Die Bereitstellungsprüfung meldet dasselbe.)',\n 'auth.signIn.error.notInvited':\n 'Diese Bereitstellung ist nur auf Einladung zugänglich. Bitten Sie eine Administratorin oder einen Administrator, Ihre E-Mail-Adresse einzuladen, und erstellen Sie dann Ihr Konto.',\n 'auth.signIn.error.tooManyAttempts':\n 'Zu viele fehlgeschlagene Anmeldeversuche — warten Sie einen Moment und versuchen Sie es dann erneut.',\n 'auth.signIn.error.serverError':\n 'Anmeldung fehlgeschlagen (unerwarteter Serverfehler) — prüfen Sie die Logs der Bereitstellung.',\n 'auth.signIn.error.serverErrorSignUp':\n 'Registrierung fehlgeschlagen (unerwarteter Serverfehler) — prüfen Sie die Logs der Bereitstellung.',\n 'auth.signIn.error.unavailable': 'Die Anmeldung ist derzeit nicht verfügbar.',\n 'auth.signIn.error.playgroundSignUp':\n 'Die Registrierung ist im Playground-Modus nicht verfügbar — verwenden Sie die unten aufgeführten Entwicklungskonten.',\n // EC-397 — root-route boot states (`createStudioRootRoute`).\n 'auth.boot.checkingSession': 'Sitzung wird geprüft…',\n 'error.dismiss': 'Fehler schließen',\n // EC-403 — the blocking session-expired re-auth overlay\n // (`session-expired-overlay.tsx`), raised app-wide when any operation fails\n // the session-expired predicate; re-auth happens in place, no navigation.\n 'error.sessionExpiredTitle': 'Sie wurden abgemeldet',\n 'error.sessionExpired':\n 'Sie wurden abgemeldet, daher werden Ihre letzten Änderungen nicht gespeichert. Melden Sie sich erneut an, um weiterzuarbeiten — Ihre ungespeicherten Änderungen bleiben genau hier erhalten.',\n\n // EC-494 — Betriebs-Fehler, die die Operations-Grenze überqueren. Bezeichner\n // (Operationsnamen, Entitätsarten, Dokumentschlüssel, Feldnamen) bleiben unübersetzt.\n // EC-494 — die Titel der Fehler-Badges im Banner.\n 'operations.errorLabel.validation': 'Konnte nicht gespeichert werden',\n 'operations.errorLabel.not-found': 'Nicht gefunden',\n 'operations.errorLabel.conflict': 'Konflikt',\n 'operations.errorLabel.backend-unavailable': 'Verbindungsproblem',\n 'operations.errorLabel.unauthorized': 'Nicht erlaubt',\n 'operations.errorLabel.unknown': 'Etwas ist schiefgelaufen',\n 'operations.error.invalidInput': 'Die Eingabe für „{operation}“ ist ungültig.',\n 'operations.error.notFound': 'Kein {entity} für „{target}“ gefunden.',\n 'operations.error.conflict': '„{target}“ steht im Konflikt mit einem vorhandenen Datensatz.',\n 'operations.error.revisionConflict':\n '„{target}“ wurde geändert, seit Sie es geladen haben (jetzt Revision {revision}) — laden Sie es neu und übernehmen Sie Ihre Änderung erneut.',\n 'operations.error.revisionConflictGone': '„{target}“ existiert nicht mehr — es wurde gelöscht, seit Sie es geladen haben.',\n 'operations.error.documentExists': '„{target}“ existiert bereits — beim Anlegen wird nie ein Dokument überschrieben.',\n 'operations.error.singletonExists':\n '„{collection}“ hat bereits sein Dokument „{target}“ — öffnen Sie es, statt ein weiteres anzulegen.',\n 'operations.error.patchConflictOne':\n '{count} Änderung an „{target}“ wurde abgelehnt: dasselbe Feld wurde geändert, seit Sie das Dokument geladen haben.',\n 'operations.error.patchConflict':\n '{count} Änderungen an „{target}“ wurden abgelehnt: dieselben Felder wurden geändert, seit Sie das Dokument geladen haben.',\n 'operations.error.backendUnavailable': 'Das Persistenz-Backend ist nicht erreichbar.',\n 'operations.error.unauthorized': 'Die Operation „{operation}“ wurde vom Autorisierungs-Hook abgelehnt.',\n 'operations.error.unknown': 'Es ist ein unbekannter Fehler bei der Operation aufgetreten.',\n 'operations.error.documentSchemaViolation': 'Das Dokument „{collection}:{id}“ verletzt das Schema seiner Sammlung.',\n 'operations.error.strictReferencesBlockDelete':\n '„{target}“ kann nicht gelöscht werden: {count} Dokumente verweisen über strikte Beziehungsfelder darauf — {named}{more}. Entfernen Sie zuerst diese Verweise.',\n 'operations.error.strictReferencesBlockDeleteOne':\n '„{target}“ kann nicht gelöscht werden: {count} Dokument verweist über strikte Beziehungsfelder darauf — {named}. Entfernen Sie zuerst diese Verweise.',\n 'operations.error.strictReferencesBlockUnpublish':\n 'Die Veröffentlichung von „{target}“ kann nicht zurückgenommen werden: {count} Dokumente verweisen über strikte Beziehungsfelder darauf — {named}{more}. Entfernen Sie zuerst diese Verweise.',\n 'operations.error.strictReferencesBlockUnpublishOne':\n 'Die Veröffentlichung von „{target}“ kann nicht zurückgenommen werden: {count} Dokument verweist über strikte Beziehungsfelder darauf — {named}. Entfernen Sie zuerst diese Verweise.',\n // EC-589 — die Gegenrichtung von `strict: true`: Veröffentlichen verweigert, solange ein striktes Ziel fehlt oder unveröffentlicht ist.\n 'operations.error.strictTargetsUnpublishedOne':\n 'Das Dokument „{target}“ kann nicht veröffentlicht werden: Ein Ziel einer strikten Beziehung fehlt oder ist unveröffentlicht — veröffentlichen Sie es zuerst.',\n 'operations.error.strictTargetsUnpublished':\n 'Das Dokument „{target}“ kann nicht veröffentlicht werden: Ziele strikter Beziehungen fehlen oder sind unveröffentlicht — veröffentlichen Sie sie zuerst.',\n 'operations.error.publishNeedsLocales':\n '„{target}“ kann nicht veröffentlicht werden: Seine Sammlung deklariert lokalisierte Felder ({fields}), und es wurde keine Sprachkonfiguration übergeben, um deren ausgeblendete Werte zu beurteilen.',\n 'operations.error.versionNotPinnable':\n 'Version {version} von „{target}“ wurde nicht durch eine Veröffentlichung erfasst und kann daher nicht live geschaltet werden — stellen Sie sie im Entwurf wieder her und veröffentlichen Sie diesen.',\n 'operations.errorDetail.andMore': ' und {count} weitere',\n\n // EC-494 — Fehler von Inhaltsabfragen (Filterleiste + Listing-Hinweis im Canvas).\n // „filterable“, „asc“, „desc“, „in“, „empty“ sind Schlüsselwörter aus der Konfiguration\n // und bleiben wörtlich stehen.\n 'content.queryError.nonFilterableField':\n 'Das Feld \"{field}\" in \"{collection}\" ist nicht als filterable deklariert.',\n 'content.queryError.unknownField': 'Das Feld \"{field}\" existiert in \"{collection}\" nicht.',\n 'content.queryError.unknownCollection': 'Die Sammlung \"{collection}\" ist nicht definiert.',\n 'content.queryError.filterShape':\n 'Der Filter für \"{field}\" muss ein Skalar oder ein Operator-Objekt sein.',\n 'content.queryError.filterNoOperators': 'Der Filter für \"{field}\" enthält keine Operatoren.',\n 'content.queryError.unknownOperator':\n 'Unbekannter Filteroperator \"{operator}\" auf \"{field}\" — das Vokabular ist genau {vocabulary}.',\n 'content.queryError.operatorInRequiresArray':\n 'Der Operator \"in\" auf \"{field}\" erwartet ein Array aus Skalaren.',\n 'content.queryError.operatorRequiresString':\n 'Der Operator \"{operator}\" auf \"{field}\" erwartet einen Zeichenkettenwert.',\n 'content.queryError.operatorEmptyRequiresBoolean':\n 'Der Operator \"empty\" auf \"{field}\" erwartet einen Wahrheitswert (true = ist leer).',\n 'content.queryError.operatorRequiresScalar':\n 'Der Operator \"{operator}\" auf \"{field}\" erwartet einen skalaren Wert.',\n 'content.queryError.sortNotFilterable':\n 'Das Sortierfeld \"{field}\" in \"{collection}\" ist nicht als filterable deklariert.',\n 'content.queryError.sortUnknownField':\n 'Das Sortierfeld \"{field}\" existiert in \"{collection}\" nicht.',\n 'content.queryError.sortDirection': 'Die Sortierrichtung muss \"asc\" oder \"desc\" sein.',\n 'content.queryError.limitPositiveInteger': 'Das Limit muss eine positive ganze Zahl sein.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — collection list / view bar / filters / cells\n // ─────────────────────────────────────────────────────────────────────────\n // EC-412 — the CMS section landing (`cms-index.tsx`): the collection grid.\n 'cms.index.heading': 'Inhalt',\n 'cms.index.description':\n 'Schemabasierte Sammlungen. Öffnen Sie eine Sammlung, um ihre Dokumente als Tabelle zu durchsuchen und im Detail-Editor zu bearbeiten.',\n 'cms.index.fieldCount.one': '{count} Feld',\n 'cms.index.fieldCount.other': '{count} Felder',\n 'cms.index.singleDocument': 'Einzeldokument',\n 'cms.list.new': 'Neu',\n 'cms.list.newPage': 'Neue Seite',\n 'cms.list.newNamed': 'Neu: {noun}',\n 'cms.list.moreActions': 'Weitere Aktionen',\n 'cms.list.rowActionsColumnLabel': 'Zeilenaktionen',\n 'cms.list.rowActionsLabel': 'Aktionen für {id}',\n 'cms.list.rowAction.open': 'Öffnen',\n 'cms.list.import': 'Importieren…',\n 'cms.list.export': 'Exportieren',\n 'cms.list.forReview': 'Zur Überprüfung',\n 'cms.list.count': '{count} {noun}',\n 'cms.list.countFiltered': '{visible} von {total} {noun}',\n 'cms.list.emptyNone': 'Noch keine {noun}.',\n 'cms.list.emptyFiltered': 'Keine Dokumente entsprechen den Filtern der aktuellen Ansicht.',\n 'cms.list.selectAll': 'Alle Dokumente in der Ansicht auswählen',\n 'cms.list.selectRow': '{title} auswählen',\n 'cms.list.column.title': 'Titel',\n 'cms.list.column.state': 'Status',\n // EC-448 — Icon-Header der fixierten Status-Punkt-Spalte (nur `aria-label`/`title`).\n 'cms.list.column.statusHeader': 'Status',\n 'cms.list.column.url': 'URL',\n // EC-445 — reserved date pseudo-columns (participate in the columns model).\n 'cms.list.column.updatedAt': 'Aktualisiert',\n 'cms.list.column.publishedAt': 'Veröffentlicht',\n // EC-346 — the State column's per-row badge (`DocStateBadge`); was hardcoded\n // English. Distinct keys from `cms.editor.draftState`/`publishedState` (title\n // case, editor header) and `cms.filter.state.*`/`cms.reference.*Badge` (filter\n // builder / reference dialog) — same words, different UI contexts (EC-241).\n 'cms.docState.published': 'veröffentlicht',\n // EC-448 — dritter Dok-Status (veröffentlicht mit unveröffentlichten Änderungen).\n 'cms.docState.changed': 'geändert',\n 'cms.docState.draft': 'Entwurf',\n // EC-479 — ohne Projektsprachen kann keine CMS-Sitzung geöffnet werden.\n 'cms.session.noLocales.title': 'Dieses Projekt deklariert keine Sprachen',\n 'cms.session.noLocales.body':\n 'Fügen Sie Ihrer Projektkonfiguration eine locales-Liste hinzu. Die Standardsprache ist der Schlüssel, unter dem Ihre Inhalte gespeichert werden — das Studio wählt sie deshalb nicht für Sie aus.',\n 'cms.list.view.all': 'Alle Einträge',\n 'cms.list.unknownCollection': 'Unbekannte Sammlung {id}.',\n 'cms.list.import.noId': '(keine ID)',\n 'cms.list.display.ariaLabel': 'Anzeigeoptionen',\n 'cms.list.display.title': 'Anzeige: Layout und Spalten',\n 'cms.list.display.layout': 'Layout',\n 'cms.list.display.flatList': 'Flache Liste',\n 'cms.list.display.pageHierarchy': 'Seitenhierarchie',\n 'cms.list.display.columns': 'Spalten · die erste sichtbare ist der Titel',\n 'cms.list.display.toggleColumn': 'Spalte {field} umschalten',\n 'cms.list.display.titleTag': '(Titel)',\n 'cms.list.display.moveColumnUp': 'Spalte {field} nach oben verschieben',\n 'cms.list.display.moveColumnDown': 'Spalte {field} nach unten verschieben',\n 'cms.list.bulk.count': '{count} ausgewählt',\n 'cms.list.bulk.publish': 'Veröffentlichen',\n 'cms.list.bulk.unpublish': 'Zurückziehen',\n 'cms.list.bulk.noSettableFields': 'Keine filterbaren Skalarfelder zum Setzen.',\n 'cms.list.bulk.setField': 'Feld setzen',\n 'cms.list.bulk.clearSelection': 'Auswahl aufheben',\n // EC-494 — die beiden studio-seitigen Fehlergründe je Eintrag.\n 'cms.list.bulk.error.notInSession': 'Das Dokument ist nicht mehr in der Sitzung.',\n 'cms.list.bulk.error.notValidToPublish':\n 'Das Dokument ist nicht gültig zum Veröffentlichen.',\n 'cms.list.bulk.set.set': 'Setze',\n 'cms.list.bulk.set.to': 'auf',\n 'cms.list.bulk.set.valueAria': 'Wert setzen',\n 'cms.list.bulk.set.apply': 'Auf Auswahl anwenden',\n 'cms.list.bulk.report.verb.setField': '{field} setzen',\n 'cms.list.bulk.report.verb.publish': 'veröffentlichen',\n 'cms.list.bulk.report.verb.unpublish': 'zurückziehen',\n 'cms.list.bulk.report.verb.delete': 'löschen',\n 'cms.list.bulk.report.summary': 'Sammelaktion {action}: {succeeded} erfolgreich',\n 'cms.list.bulk.report.failedSuffix': ', {count} fehlgeschlagen',\n 'cms.list.bulk.report.failedBadge': '{count} fehlgeschlagen',\n 'cms.list.bulk.report.done': 'fertig',\n 'cms.list.bulk.error.invalidSetField': 'Feld-Setzen fehlt Feld/Wert oder das Sammlungsschema.',\n 'cms.filter.button': 'Filter',\n 'cms.filter.summaryMultiple': '{count} Filter',\n 'cms.filter.clearAria': 'Filter löschen',\n 'cms.filter.refineSession': 'Verfeinern · diese Sitzung',\n 'cms.filter.clearAll': 'Alle löschen',\n 'cms.filter.add': 'Filter hinzufügen',\n 'cms.filter.andHint': 'Alle Bedingungen müssen zutreffen (UND)',\n 'cms.filter.fieldAria': 'Filterfeld',\n 'cms.filter.operatorAria': 'Filteroperator',\n 'cms.filter.remove': 'Filter entfernen',\n // EC-494 — die beiden studio-seitigen Klausel-Probleme.\n 'cms.filter.issue.stateOperator': 'Status-Filter unterstützen nur \"eq\" und \"in\".',\n 'cms.filter.issue.stateValue': 'Der Status muss \"draft\" oder \"published\" sein.',\n 'cms.filter.valueAria': 'Filterwert',\n 'cms.filter.valueListPlaceholder': 'Wert, Wert, …',\n 'cms.filter.pickRelation': 'Auswählen…',\n 'cms.filter.state.published': 'veröffentlicht',\n 'cms.filter.state.draft': 'Entwurf',\n // Operator labels (EC-345) — keyed by operator AND field type in `operatorLabelKey`.\n 'cms.filter.op.contains': 'enthält',\n 'cms.filter.op.equals': 'ist gleich',\n 'cms.filter.op.is': 'ist',\n 'cms.filter.op.startsWith': 'beginnt mit',\n 'cms.filter.op.endsWith': 'endet mit',\n 'cms.filter.op.isAnyOf': 'ist einer von',\n 'cms.filter.op.lessThan': 'kleiner als',\n 'cms.filter.op.atMost': 'höchstens',\n 'cms.filter.op.greaterThan': 'größer als',\n 'cms.filter.op.atLeast': 'mindestens',\n 'cms.filter.op.on': 'am',\n 'cms.filter.op.before': 'vor',\n 'cms.filter.op.onOrBefore': 'am oder vor',\n 'cms.filter.op.after': 'nach',\n 'cms.filter.op.onOrAfter': 'am oder nach',\n 'cms.filter.op.isEmpty': 'ist leer',\n 'cms.filter.op.isNotEmpty': 'ist nicht leer',\n 'cms.cell.fallbackTitle': 'Zeigt {source} (Ersatz) — noch keine {requested}-Übersetzung. Zum Übersetzen bearbeiten.',\n 'cms.cell.richText': 'Rich Text',\n 'cms.cell.itemCount.one': '{count} Element',\n 'cms.cell.itemCount.other': '{count} Elemente',\n 'cms.cell.object': 'Objekt',\n 'cms.cell.blockCount.one': '{count} Block',\n 'cms.cell.blockCount.other': '{count} Blöcke',\n 'cms.cell.createsVariantTitle': 'Beim Speichern wird die {locale}-Übersetzung dieses Feldes erstellt.',\n 'cms.cell.newVariant': 'neu',\n 'cms.cell.editAria': '{field} von {title} bearbeiten',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — document detail editor\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.editor.notFoundTitle': 'Nicht gefunden',\n 'cms.editor.backToList': 'Zurück zu {label}',\n 'cms.editor.publishFailed': 'Veröffentlichung fehlgeschlagen.',\n 'cms.editor.publishFailedReason': 'Veröffentlichung fehlgeschlagen: {error}',\n 'cms.editor.saveFailed': 'Speichern fehlgeschlagen',\n 'cms.editor.unsavedChanges': 'Nicht gespeicherte Änderungen',\n 'cms.editor.saved': 'Gespeichert',\n // 0.0.42 (round 3): the standalone \"View live\" button is retired — opening the live\n // page now hangs off the header URL row's leaf segment. These strings still drive the\n // leaf's tooltip (open-live target + the published-gating reasons).\n 'cms.editor.openLiveUrl': '{path} öffnen',\n 'cms.editor.loadingLiveUrl': 'Live-URL wird geladen…',\n 'cms.editor.publishToViewLive': 'Veröffentlichen, um die Live-Seite zu sehen',\n 'cms.editor.setFrontendUrlHint': 'frontendUrl in elytra.config.ts setzen, um zu aktivieren',\n 'cms.editor.publishedReadFailed': 'Veröffentlichte Inhalte konnten nicht geladen werden, Live-URLs sind daher unbekannt: {reason}',\n 'cms.editor.switchToDraftToPublish': 'Zum Entwurf wechseln, um zu veröffentlichen',\n 'cms.editor.fixIssuesToPublish.one': '{count} Problem beheben, um zu veröffentlichen',\n 'cms.editor.fixIssuesToPublish.other': '{count} Probleme beheben, um zu veröffentlichen',\n 'cms.editor.publishing': 'Wird veröffentlicht…',\n 'cms.editor.publishedState': 'Veröffentlicht',\n 'cms.editor.publish': 'Veröffentlichen',\n 'cms.editor.moreActions': 'Weitere Aktionen',\n 'cms.editor.unpublish': 'Veröffentlichung zurückziehen',\n // 0.0.39 — the Publish button is a split button: primary Publish (stay) + a\n // \"Publish & close\" dropdown item (publish, then return to the list). Replaces the\n // retired EC-316 \"Save & close\" (autosave made a bare \"Save\" meaningless).\n 'cms.editor.publishActions': 'Veröffentlichungsoptionen',\n 'cms.editor.publishAndClose': 'Veröffentlichen & schließen',\n 'cms.editor.saveAndClose': 'Speichern & schließen',\n 'cms.editor.duplicateCreated': 'Duplikat als neuer Entwurf erstellt',\n 'cms.editor.discardDraft': 'Änderungen verwerfen',\n 'cms.editor.discardDraftUpToDateHint':\n 'Der Entwurf entspricht der veröffentlichten Version — es gibt nichts zu verwerfen.',\n 'cms.editor.switchToDraftToDiscard': 'Zum Entwurf wechseln, um Änderungen zu verwerfen',\n 'cms.editor.discardDraftTitle': 'Entwurfsänderungen verwerfen?',\n 'cms.editor.discardDraftDescription':\n 'Dadurch wird der Entwurf auf den aktuell veröffentlichten Inhalt zurückgesetzt. Ihre unveröffentlichten Änderungen werden ersetzt — ein Schnappschuss bleibt im Versionsverlauf erhalten.',\n 'cms.editor.discardDraftConfirm': 'Änderungen verwerfen',\n 'cms.editor.discardingDraft': 'Änderungen werden verworfen…',\n 'cms.editor.draftState': 'Entwurf',\n 'cms.editor.publishToViewPublished': 'Dieses Dokument veröffentlichen, um die veröffentlichte Version zu sehen',\n 'cms.editor.publishedReadOnlyBanner': 'Sie sehen die veröffentlichte Version – schreibgeschützt.',\n 'cms.editor.switchToDraft': 'Zum Entwurf wechseln',\n 'cms.editor.loadingPublishedVersion': 'Veröffentlichte Version wird geladen…',\n 'cms.editor.noPublishedVersion': 'Keine veröffentlichte Version für dieses Dokument gefunden.',\n 'cms.editor.unsavedChangesGuard':\n 'Sie haben nicht gespeicherte Änderungen an diesem Datensatz. Speichern Sie sie vor dem Verlassen oder verwerfen Sie sie.',\n 'cms.editor.readOnlyBadge': 'schreibgeschützt',\n // EC-318 — connected fields: the per-field localization connection affordance that\n // replaces EC-176's passive \"showing EN\" text. Shown only on a localized field in a\n // non-base locale (never on the base locale, non-localized fields, or read-only).\n 'cms.editor.localeFollowsBase': 'Folgt {base}',\n 'cms.editor.localeFollowsHint':\n 'Dieses Feld folgt dem Wert für {base}. Geben Sie eine Übersetzung ein oder übernehmen Sie zunächst eine Kopie aus {base}.',\n 'cms.editor.localeFillFromBase': 'Aus {base} übernehmen',\n 'cms.editor.localeTranslated': 'Übersetzt',\n 'cms.editor.localeTranslatedHint':\n 'Für {locale} übersetzt. Wenn Sie den Text leeren, folgt er wieder dem Wert für {base} — eine absichtlich leere Übersetzung wird nicht unterstützt.',\n 'cms.editor.localeResetToBase': 'Auf {base} zurücksetzen',\n 'cms.editor.localeResetTitle': 'Auf den Wert für {base} zurücksetzen?',\n 'cms.editor.localeResetDescription':\n 'Dadurch wird die Übersetzung dieses Felds für {locale} entfernt. Bis zu einer neuen Übersetzung folgt es wieder dem Wert für {base}.',\n 'cms.editor.localeResetConfirm': 'Auf {base} zurücksetzen',\n 'cms.editor.issuesPane': 'Probleme',\n 'cms.editor.detailsPane': 'Details',\n 'cms.editor.servedAt': 'Ausgeliefert unter {path}',\n 'cms.editor.slugUrlHint':\n 'Die URL wird aus dem Slug (und dem übergeordneten Element) abgeleitet – Slug festlegen, um sie zu definieren.',\n 'cms.editor.defaultGroup': 'Felder',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — issues pane (validation)\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.issues.none': 'Keine Probleme',\n 'cms.issues.satisfied': 'Dieses Dokument entspricht dem Sammlungsschema.',\n // EC-443: value fix — the calque „Zu label“ read as broken German.\n 'cms.issues.goToField': 'Zum Feld „{field}“',\n // EC-443 — issue-card titles (one per CmsIssueCode, see messages.en.ts).\n 'cms.issue.duplicate-collection': 'Doppelte Sammlung',\n 'cms.issue.duplicate-field': 'Doppeltes Feld',\n 'cms.issue.unknown-collection': 'Unbekannte Sammlung',\n 'cms.issue.invalid-collection-config': 'Ungültige Sammlungskonfiguration',\n 'cms.issue.invalid-field-config': 'Ungültige Feldkonfiguration',\n 'cms.issue.reserved-field-name': 'Reservierter Feldname',\n 'cms.issue.missing-required-field': 'Pflichtfeld fehlt',\n 'cms.issue.invalid-field-value': 'Ungültiger Wert',\n 'cms.issue.invalid-field-value.warning': 'Wert prüfen',\n 'cms.issue.unknown-relation-target': 'Fehlende Referenz',\n 'cms.issue.unpublished-relation-target': 'Unveröffentlichte Referenz',\n 'cms.issue.cardinality-violation': 'Falsche Anzahl von Werten',\n 'cms.issue.unknown-asset': 'Fehlende Mediendatei',\n 'cms.issue.asset-without-url': 'Mediendatei ohne Datei',\n 'cms.issue.duplicate-document': 'Doppelter Eintrag',\n 'cms.issue.unknown-locale': 'Unbekannte Sprache',\n 'cms.issue.missing-localized-value': 'Fehlende Übersetzung',\n 'cms.issue.route-conflict': 'URL-Konflikt',\n 'cms.issue.redirect-loop': 'Weiterleitungsschleife',\n 'cms.issue.invalid-redirect': 'Ungültige Weiterleitung',\n 'cms.issue.unknown-route-target': 'Fehlende Seite',\n 'cms.issue.hierarchy-cycle': 'Schleife in der Seitenhierarchie',\n 'cms.issue.document-nesting-depth': 'Inhalt zu tief verschachtelt',\n 'cms.issue.singleton-document-drift': 'Mehr als ein Dokument',\n 'cms.issue.duplicate-alias': 'Slot doppelt belegt',\n 'cms.issue.unknown-alias': 'Unbekannter Slot',\n 'cms.issue.unfilled-slot': 'Leerer Slot',\n 'cms.issue.custom-validation': 'Validierungsregel',\n 'cms.issue.hidden-predicate-error': 'Fehlerhafte Sichtbarkeitsregel',\n 'cms.issue.unaddressable-url': 'Nicht erreichbare URL',\n 'cms.issue.unknown-version': 'Unbekannte Version',\n 'cms.issue.invalid-stored-document': 'Unlesbares gespeichertes Dokument',\n // EC-443 — issue-card body templates (see messages.en.ts for the fallback contract).\n 'cms.issueBody.missing-required-field': 'Das Pflichtfeld „{field}“ ist nicht ausgefüllt.',\n 'cms.issueBody.missing-localized-value.default':\n 'Das Pflichtfeld „{field}“ hat keinen Wert für die Standardsprache „{locale}“.',\n 'cms.issueBody.missing-localized-value.fallback':\n 'Das Feld „{field}“ hat keinen Wert für „{locale}“ und keinen Fallback.',\n 'cms.issueBody.unknown-asset':\n 'Das Feld „{field}“ verweist auf die unbekannte Mediendatei „{asset}“.',\n 'cms.issueBody.document-nesting-depth.error':\n 'Dieser Inhalt ist {depth} Ebenen tief verschachtelt und überschreitet damit das Speicherlimit von {limit} Ebenen – teilen Sie ihn in kleinere verknüpfte Einträge auf.',\n 'cms.issueBody.document-nesting-depth.warning':\n 'Dieser Inhalt ist {depth} Ebenen tief verschachtelt und nähert sich dem Speicherlimit von {limit} Ebenen.',\n 'cms.issueBody.hierarchy-cycle':\n 'Dieser Eintrag ist sein eigener Vorfahr – die Kette der übergeordneten Einträge bildet eine Schleife.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS validation issue BODIES (EC-487)\n //\n // EC-443 localized the issue TITLES (`cms.issue.<code>` above); the bodies were\n // still built as English template literals inside `packages/core`, which cannot\n // import this catalog. EC-478 solved that shape for `CustomizationIssue` by having\n // the producer carry a message KEY; these are the same carriage for\n // `CmsValidationIssue`, so the rail foot, the Issues pane and the for-review lane\n // never mix a German title with an English body.\n //\n // The English source is a SECOND copy of what the producer builds — the tie between\n // them is `lib/persona/cms-issue-i18n.test.ts`, which renders every real producer's\n // issue through this catalog and asserts byte-identity. Interpolated values are\n // IDENTIFIERS (field/collection/route/locale ids, patterns, counts) and stay\n // unlocalized in every language.\n //\n // `cms.issueDetail.*` are FRAGMENTS spliced into the sentences above.\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.issueMessage.duplicateDocument': 'Doppeltes Dokument „{id}“ in der Sammlung „{collection}“.',\n 'cms.issueMessage.fieldDetail': 'Das Feld „{field}“ {detail}.',\n 'cms.issueMessage.fieldReason': 'Feld „{field}“: {reason}',\n 'cms.issueMessage.fieldHiddenPredicateThrew': 'Die Sichtbarkeitsregel des Feldes „{field}“ hat einen Fehler ausgelöst („{reason}“), daher wird das Feld angezeigt und geprüft. Korrigieren Sie die Regel in der Projektkonfiguration.',\n 'cms.issueMessage.groupHiddenPredicateThrew': 'Die Sichtbarkeitsregel der Gruppe „{group}“ hat einen Fehler ausgelöst („{reason}“), daher werden ihre Felder angezeigt und geprüft. Korrigieren Sie die Regel in der Projektkonfiguration.',\n 'cms.issueMessage.relationUnknownTargetCollection': 'Das Beziehungsfeld „{field}“ zielt auf die unbekannte Sammlung „{target}“.',\n 'cms.issueMessage.relationSingleValued': 'Das Beziehungsfeld „{field}“ ist einwertig, hat aber {count} Ziele.',\n 'cms.issueMessage.relationNotAReference': 'Das Beziehungsfeld „{field}“ enthält einen Wert, der keine Dokumentreferenz ist.',\n 'cms.issueMessage.relationWrongCollection': 'Das Beziehungsfeld „{field}“ zeigt auf die Sammlung „{got}“, zielt aber auf „{target}“.',\n 'cms.issueMessage.relationMissingDocument': 'Das Beziehungsfeld „{field}“ verweist auf das fehlende Dokument „{id}“ in „{target}“.',\n 'cms.issueMessage.relationUnpublishedDocument': 'Das Beziehungsfeld „{field}“ verweist auf das unveröffentlichte Dokument „{id}“ in „{target}“ — auf der veröffentlichten Website erscheint dort ein Platzhalter.',\n // EC-589 — eine strikte Beziehung (Feld, Unterfeld oder Prop) auf ein unveröffentlichtes Ziel blockiert das Veröffentlichen.\n 'cms.issueMessage.relationStrictUnpublished': 'Das Beziehungsfeld „{field}“ ist strikt: „{id}“ in „{target}“ ist nicht veröffentlicht — dieses Dokument kann erst veröffentlicht werden, wenn es veröffentlicht ist.',\n 'cms.issueMessage.assetNoAssetCollection': 'Das Medienfeld „{field}“ benötigt eine Mediensammlung, es ist aber keine registriert.',\n 'cms.issueMessage.assetSingleValued': 'Das Medienfeld „{field}“ ist einwertig, hat aber {count} Ziele.',\n 'cms.issueMessage.assetExpectsId': 'Das Medienfeld „{field}“ erwartet eine Medien-id.',\n 'cms.issueMessage.assetUnknown': 'Das Medienfeld „{field}“ verweist auf das unbekannte Medium „{asset}“.',\n 'cms.issueMessage.assetNotAccepted': 'Das Medienfeld „{field}“ akzeptiert nur {accept}, das Medium „{asset}“ ist aber {type}.',\n 'cms.issueMessage.requiredFieldMissing': 'Das Pflichtfeld „{field}“ fehlt.',\n 'cms.issueMessage.perLocaleMapValue': 'Das Feld „{field}“ erwartet einen Wert vom Typ „{type}“, enthält aber eine Sprach-Zuordnung (Schlüssel: {keys}) — sprachabhängige Werte liegen im „localized“-Bereich des Dokuments, niemals im Feldwert selbst.',\n 'cms.issueMessage.preConvergenceV1': 'Das Feld „{field}“ enthält eine Inhaltsform von vor der Konvergenz (die v1-Hülle „{ version, doc }“) — die Engine liest nur noch die konvergierte Sequenz „{ version: 2, content }“. Dieser Inhalt muss neu eingespielt werden (Re-Seed).',\n 'cms.issueMessage.preConvergenceBareBlocks': 'Das Feld „{field}“ enthält eine Inhaltsform von vor der Konvergenz (eine blanke Komponentenliste) — die Engine liest nur noch die konvergierte Sequenz „{ version: 2, content }“. Dieser Inhalt muss neu eingespielt werden (Re-Seed).',\n 'cms.issueMessage.preConvergencePlaintext': 'Das Feld „{field}“ enthält eine Inhaltsform von vor der Konvergenz (unstrukturierter Alttext) — die Engine liest nur noch die konvergierte Sequenz „{ version: 2, content }“. Dieser Inhalt muss neu eingespielt werden (Re-Seed).',\n 'cms.issueMessage.gateUnknownCollection': 'Das Projekt deklariert keine Collection „{collection}“ — es gibt keine Regeln, nach denen sie veröffentlicht werden könnte.',\n 'cms.issueMessage.gateAssetLibraryUnready': 'Die Medienbibliothek konnte nicht gelesen werden — die Veröffentlichung ungeprüfter Medienverweise wird verweigert. Bitte erneut versuchen.',\n 'cms.issueMessage.gateNoLocales': 'Das Projekt deklariert keine Sprachen — die Veröffentlichung ohne sie wird verweigert.',\n // EC-595 A2 — der Feldkonflikt und die schlanke Feld-Präsenz.\n 'cms.conflict.changedBy': 'Seit Beginn Ihrer Bearbeitung von {name} geändert — Ihr Text bleibt hier, bis Sie entscheiden.',\n 'cms.conflict.removedBy': 'Seit Beginn Ihrer Bearbeitung von {name} entfernt — Ihre Änderung hat nichts mehr, worauf sie sich bezieht.',\n 'cms.conflict.theirs': 'Deren Wert: {value}',\n 'cms.conflict.takeTheirs': 'Deren übernehmen',\n 'cms.conflict.keepMine': 'Meinen behalten',\n 'cms.conflict.someoneElse': 'jemand anderem',\n 'cms.conflict.youInAnotherTab': 'Ihnen (in einem anderen Tab)',\n 'cms.conflict.empty': '(leer)',\n 'cms.conflict.structured': 'ein strukturierter Wert',\n 'cms.conflict.cellRefused': 'Dieses Feld wurde seit dem Laden von jemand anderem geändert — dessen Wert wird angezeigt.',\n 'cms.presence.inField': '{name} ist in diesem Feld',\n 'cms.presence.inFieldMany': '{names} sind in diesem Feld',\n 'cms.presence.someone': 'Jemand',\n 'cms.issueMessage.richTextHoldsArray': 'Das Rich-Text-Feld „{field}“ erwartet einen Rich-Text-Wert („{ version: 2, content }“), enthält aber ein Array.',\n 'cms.issueMessage.richTextHoldsBareDoc': 'Das Rich-Text-Feld „{field}“ erwartet einen Rich-Text-Wert („{ version: 2, content }“), enthält aber ein blankes Rich-Text-Dokument ohne die Hülle „{ version: 2, content }“.',\n 'cms.issueMessage.richTextHoldsObject': 'Das Rich-Text-Feld „{field}“ erwartet einen Rich-Text-Wert („{ version: 2, content }“), enthält aber ein Objekt mit den Schlüsseln „{keys}“.',\n 'cms.issueMessage.unknownCollectionForDocument': 'Das Dokument „{id}“ verweist auf die unbekannte Sammlung „{collection}“.',\n 'cms.issueMessage.localizedPlainValue': 'Das sprachabhängige Feld „{field}“ enthält einen einfachen Wert im gemeinsamen „values“-Bereich — erwartet werden sprachabhängige Werte unter „localized.<locale>.{field}“. Der einfache Wert dient nur noch als letzte Rückfallebene.',\n 'cms.issueMessage.requiredLocalizedMissingDefault': 'Das sprachabhängige Pflichtfeld „{field}“ fehlt für die Standardsprache „{locale}“.',\n 'cms.issueMessage.localizedNoValueNoFallback': 'Das sprachabhängige Feld „{field}“ hat keinen Wert für die Sprache „{locale}“ und keine Rückfallebene.',\n 'cms.issueMessage.hierarchyCycle': 'Das Dokument „{id}“ ist sein eigener Vorfahre — die Elternkette bildet einen Zyklus.',\n 'cms.issueMessage.nestingDepthError': 'Das Dokument „{id}“ ist {depth} Ebenen tief verschachtelt und überschreitet damit das Schreib-Limit des Backends von {limit} Ebenen — selbst das Falten der Tiefe beim Speichern rettet ein so tiefes Dokument nicht, der Schreibvorgang kann nicht ausgeführt werden. Teilen Sie es in kleinere verknüpfte Dokumente auf.',\n 'cms.issueMessage.nestingDepthWarning': 'Das Dokument „{id}“ ist {depth} Ebenen tief verschachtelt und nähert sich damit dem Limit des Backends von {limit} Ebenen. Flachen Sie den tiefsten Pfad ab, bevor er weiter wächst.',\n 'cms.issueMessage.propFilterable': 'Die Komponenten-Eigenschaft „{field}“ deklariert „filterable“, was nur für Dokumentfelder gilt.',\n 'cms.issueMessage.propUnique': 'Die Komponenten-Eigenschaft „{field}“ deklariert „unique“, was nur über die Dokumente einer Sammlung hinweg gilt.',\n 'cms.issueMessage.singletonDrift': 'Das Einzelstück „{collection}“ hat {count} Dokumente — es sollte genau eines haben. Behalten Sie das richtige Dokument und entfernen Sie die übrigen, damit es sich direkt öffnen lässt.',\n 'cms.issueMessage.unknownAlias.one': 'Ein Dokument ist dem Alias „{alias}“ zugewiesen, der kein deklarierter Slot von „{collection}“ ist ({declared}). Weisen Sie einen gültigen Slot zu.',\n 'cms.issueMessage.unknownAlias.other': '{count} Dokumente sind dem Alias „{alias}“ zugewiesen, der kein deklarierter Slot von „{collection}“ ist ({declared}). Weisen Sie einen gültigen Slot zu.',\n 'cms.issueMessage.duplicateAlias': '{count} Dokumente teilen sich den Alias „{alias}“ in „{collection}“. Jeder Slot darf nur einem Dokument zugewiesen sein — weisen Sie neu zu oder entfernen Sie die Duplikate.',\n 'cms.issueMessage.unfilledSlot': 'Der Slot „{slot}“ von „{collection}“ hat noch kein Dokument. Weisen Sie eines zu, damit Code, der „{slot}“ auflöst, es findet.',\n 'cms.issueMessage.reservedFieldName': 'Der Feldname „{field}“ ist reserviert (der Diskriminator selbstbeschreibender Knoten).',\n 'cms.issueMessage.duplicateSelectOption': 'Doppelte Auswahloption „{option}“ im Feld „{field}“.',\n 'cms.issueMessage.duplicateObjectField': 'Doppeltes Feld „{field}“ im Objektfeld „{parent}“.',\n 'cms.issueMessage.assetCollectionSingleton': 'Die Mediensammlung „{collection}“ kann kein Einzelstück sein.',\n 'cms.issueMessage.unknownPresentationBodyField': 'Die Sammlung „{collection}“ deklariert „{field}“ als Inhaltsfeld der Darstellung, definiert dieses Feld aber nicht.',\n 'cms.issueMessage.duplicateCollectionField': 'Doppeltes Feld „{field}“ in der Sammlung „{collection}“.',\n 'cms.issueMessage.duplicateCollectionId': 'Doppelte Sammlungs-id „{collection}“.',\n 'cms.issueMessage.unknownLocale': 'Die Sprache „{locale}“ gehört nicht zum konfigurierten Sprachsatz.',\n 'cms.issueMessage.unknownVersion': 'Für das Dokument „{id}“ ist keine Version {version} aufgezeichnet.',\n 'cms.issueMessage.routeConflict': 'Die Routen „{first}“ und „{second}“ treffen auf dieselben URLs zu (Muster „{pattern}“).',\n 'cms.issueMessage.redirectLoop': 'Die Weiterleitungskette ab „{from}“ bildet eine Schleife (…{chain}).',\n 'cms.issueMessage.duplicateRedirect': 'Die Weiterleitung „{redirect}“ (von „{redirectFrom}“) doppelt die Weiterleitung „{kept}“ (von „{keptFrom}“) — ohne abschließende Schrägstriche sind beide „{from}“. „{kept}“ gilt; lösche oder ändere die andere.',\n 'cms.issueMessage.redirectUnreadable': 'Die gespeicherte Weiterleitung {redirect} konnte nicht gelesen werden und wird nicht ausgeliefert ({reason}).',\n 'cms.issueMessage.redirectReportUnreadable': 'Das Deployment meldete das Weiterleitungsproblem #{index}, das diese Website nicht lesen kann — eine Weiterleitung wird nicht ausgeliefert; betreibe die Website mit der Engine-Version des Deployments.',\n 'cms.issueMessage.allDynamicShadowsMount': 'Die Route „{route}“ („{pattern}“) besteht nur aus dynamischen Segmenten und trifft damit auf JEDE URL mit {depth} Segmenten zu — die Hierarchie-Einhängung „{mountRoute}“ („{mountPattern}“) wird auf dieser Ebene nur dort herangezogen, wo die Route kein Dokument auflöst. Nichts ist dadurch grundsätzlich unerreichbar, aber der Vorrang entscheidet sich dort am INHALT statt an den Routen: {shadowed} werden stillschweigend verdeckt, sobald ein zusammengesetzter Pfad mit {claimed} kollidiert — und keine Seite erfährt davon. Geben Sie der Route ein statisches Präfix („/blog/:slug“), damit sie einen Namensraum beansprucht statt einer ganzen Ebene.',\n 'cms.issueMessage.mountCannotServe': 'Die Hierarchie-Einhängung „{route}“ („{pattern}“) kann niemals ein Dokument ausliefern: {why}. Der Resolver überspringt eine solche Einhängung stillschweigend, deshalb liefert jede URL unter „{space}“ einen 404, ohne dass ein Hinweis erscheint.',\n 'cms.issueMessage.deadCatchAll': 'Die Route „{route}“ („{pattern}“) liefert in beide Richtungen nichts: Sie endet in einem Catch-all, deshalb verwirft sie jeder Router — ihr Präfix enthält aber ein dynamisches Segment ({dynamic}), deshalb wird auch keine Hierarchie-Einhängung daraus gebaut. Das Präfix einer Einhängung muss statisch sein — deklarieren Sie eine Einhängung pro Sprache (`{ pattern: \\'/de/:path*\\', locale: \\'de\\' }`) oder entfernen Sie die Route.',\n 'cms.issueMessage.mountConflict': '{opening} — ein exakter Gleichstand, nur durch die Deklarationsreihenfolge getrennt; deshalb beansprucht „{earlier}“ (Sammlung „{earlierCollection}“) dort jede URL, die der eigene Baum auflöst, und Dokumente aus „{laterCollection}“ sind an diesen URLs unerreichbar.',\n 'cms.issueMessage.routeBoundDocumentNotFound': 'Das an die Route gebundene Dokument „{collection}:{id}“ wurde nicht gefunden.',\n 'cms.issueMessage.routeParamNotCaptured': 'Die Route „{route}“ bindet ihr Dokument an den URL-Parameter „:{param}“, den das Muster „{pattern}“ nicht erfasst.',\n 'cms.issueMessage.collectionNotDefined': 'Die Sammlung „{collection}“ ist nicht definiert.',\n 'cms.issueMessage.storedDocumentUnreadable':\n 'Das gespeicherte Dokument {document} konnte nicht gelesen werden und wird nicht ausgeliefert ({reason}).',\n 'cms.issueMessage.unaddressableLocaleCollision': 'Keine URL erreicht „{id}“ in der Sprache „{locale}“: die Adresse wäre „{url}“, aber das erste Segment „{segment}“ ist ein deklarierter Sprachcode — die Website liest diese URL daher als Sprache „{segment}“, Pfad „{readPath}“. Benennen Sie dieses Segment um — an diesem Dokument oder an der übergeordneten Seite, zu der es gehört — damit es nicht mit einem Sprachcode kollidiert.',\n 'cms.issueDetail.expectsString': 'erwartet eine Zeichenkette',\n 'cms.issueDetail.expectsRichText': 'erwartet Rich-Text-Inhalt (eine Zeichenkette oder einen Rich-Text-Wert)',\n 'cms.issueDetail.expectsNumber': 'erwartet eine Zahl',\n 'cms.issueDetail.expectsBoolean': 'erwartet einen Wahrheitswert',\n 'cms.issueDetail.expectsIsoDate': 'erwartet ein ISO-8601-Datum (z. B. „2026-09-18“)',\n 'cms.issueDetail.expectsDate': 'erwartet ein Datum (ISO-8601-Zeichenkette oder Epochenzahl)',\n 'cms.issueDetail.valueNotAmongOptions': 'hat den Wert „{value}“, der nicht zu seinen Optionen gehört',\n 'cms.issueDetail.expectsObjectList': 'erwartet eine Liste von Objekten',\n 'cms.issueDetail.expectsObject': 'erwartet ein Objekt',\n 'cms.issueDetail.implausibleYear': 'hat das Jahr {year}, was unbeabsichtigt wirkt (erwartet wird eine vierstellige Jahreszahl)',\n 'cms.issueDetail.dateBoundNotADate': 'deklariert {bound} `{declared}` auf einem Datumsfeld, was kein Datum ist — verwenden Sie eine ISO-8601-Zeichenkette wie „1900-01-01“',\n 'cms.issueDetail.earlierThanMin': 'liegt vor {min}',\n 'cms.issueDetail.laterThanMax': 'liegt nach {max}',\n 'cms.issueDetail.stringBoundOffDate': 'deklariert {bound} „{declared}“ als Zeichenkette, was nur auf einem Datumsfeld sinnvoll ist — verwenden Sie eine Zahl',\n 'cms.issueDetail.shorterThanMinLength': 'ist kürzer als die Mindestlänge {min}',\n 'cms.issueDetail.longerThanMaxLength': 'ist länger als die Höchstlänge {max}',\n 'cms.issueDetail.doesNotMatchPattern': 'entspricht nicht dem Muster {pattern}',\n 'cms.issueDetail.lessThanMin': 'ist kleiner als das Minimum {min}',\n 'cms.issueDetail.greaterThanMax': 'ist größer als das Maximum {max}',\n 'cms.issueDetail.fewerThanMinItems': 'hat weniger als {min} Einträge',\n 'cms.issueDetail.moreThanMaxItems': 'hat mehr als {max} Einträge',\n 'cms.issueDetail.duplicateValue': 'muss innerhalb der Sammlung eindeutig sein, aber das Dokument „{other}“ hat diesen Wert bereits',\n 'cms.issueDetail.duplicateValueForLocale': 'muss innerhalb der Sammlung eindeutig sein, aber das Dokument „{other}“ hat diesen Wert bereits für die Sprache „{locale}“',\n 'cms.issueDetail.shadowedRootDocuments': 'die WURZEL-Dokumente von „{collection}“ unter „{space}“',\n 'cms.issueDetail.shadowedNestedDocuments': '„{collection}“-Dokumente, die {levels} Ebenen unter „{space}“ verschachtelt sind',\n 'cms.issueDetail.claimedBySlug': 'einem Slug aus „{collection}“',\n 'cms.issueDetail.claimedByOwnDocument': 'dem eigenen Dokument der Route',\n 'cms.issueDetail.mountCollectionNotDeclared': 'die Sammlung „{collection}“ ist nicht deklariert',\n 'cms.issueDetail.mountCollectionNotHierarchical': 'die Sammlung „{collection}“ hat keine `parent`-Selbstbeziehung und damit keine verschachtelten Pfade zum Zusammensetzen',\n 'cms.issueDetail.mountsSamePath': 'Die Hierarchie-Einhängungen „{earlier}“ („{earlierPattern}“) und „{later}“ („{laterPattern}“) sind beide unter „{space}“ eingehängt',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — details pane (slot + sidebar fields)\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.details.slot': 'Slot',\n 'cms.details.noSlot': '— Kein Slot —',\n 'cms.details.slotInUse': ' — belegt',\n 'cms.details.slotHint':\n 'Ein stabiler Name, mit dem die Website dieses Dokument findet (z. B. das Hauptmenü), unabhängig davon, welcher genaue Eintrag es ist. Ein Dokument pro Slot.',\n 'cms.details.empty': 'Keine Dokumenteigenschaften festzulegen.',\n // The composed-URL affordance (EC-315 \"hybrid split\") — moved to the detail-editor\n // HEADER under the title in 0.0.42 (round 3); ancestor-document segments link to\n // their editors, static route segments are plain, and the leaf carries the live link.\n 'cms.details.urlCurrent': 'diese Seite',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — import dialog\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.import.title': 'Dokumente importieren',\n 'cms.import.invalidJson': 'Eingabe ist kein gültiges JSON.',\n 'cms.import.imported': '{count} importiert',\n 'cms.import.rejected': '{count} abgelehnt:',\n 'cms.import.confirm': 'Importieren',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — versions (compare + pane)\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.version.paneLabel': 'Versionen',\n 'cms.version.compare': 'Vergleichen',\n 'cms.version.closeCompare': 'Vergleich schließen',\n 'cms.version.loadingHistory': 'Versionsverlauf wird geladen…',\n // Shown in the lazy boundary while the version-compare chunk loads (EC-322).\n 'cms.version.loadingCompare': 'Vergleich wird geladen…',\n 'cms.version.versionUnavailable': 'Diese Version ist nicht mehr verfügbar. Wählen Sie eine andere zum Vergleichen.',\n 'cms.version.currentDraft': 'Aktueller Entwurf',\n 'cms.version.unsavedEdits': 'nicht gespeicherte Änderungen',\n 'cms.version.baseCaption': 'Basis',\n 'cms.version.compareWithCaption': 'Vergleichen mit',\n 'cms.version.compareNewer': 'Neuere Version vergleichen',\n 'cms.version.compareOlder': 'Ältere Version vergleichen',\n 'cms.version.restoreWholeTitle': 'Gesamtes Dokument auf v{version} wiederherstellen',\n 'cms.version.restoreVersion': 'Version wiederherstellen',\n 'cms.version.noDifferences': 'Keine Unterschiede',\n 'cms.version.changeSummary.one': '{count} Änderung · {unchanged} unverändert',\n 'cms.version.changeSummary.other': '{count} Änderungen · {unchanged} unverändert',\n 'cms.version.comparingPastVersionsHint':\n ' · zwei frühere Versionen werden verglichen – „Vergleichen mit“ auf „Aktueller Entwurf“ setzen, um wiederherzustellen',\n 'cms.version.versionsIdentical': 'Diese beiden Versionen sind identisch.',\n 'cms.version.beforeVersion': 'Vorher · v{version}',\n 'cms.version.afterTarget': 'Nachher · {target}',\n 'cms.version.restoreField': '{field} aus v{version} wiederherstellen',\n 'cms.version.restoreFieldLocale': '{field} ({locale}) aus v{version} wiederherstellen',\n 'cms.version.textUnchanged': 'Text unverändert – Formatierung oder Leerzeichen unterscheiden sich.',\n 'cms.version.restoreBlock': 'Diesen Block aus v{version} wiederherstellen',\n 'cms.version.nestedContentChanged': 'Verschachtelter Inhalt geändert.',\n // EC-593 — wo die Diff-Zeile einer verschachtelten Komponente sitzt.\n 'cms.version.nestedInProse': 'im Text',\n 'cms.version.nestedIn': 'in {path}',\n 'cms.version.blockAdded': 'Block hinzugefügt.',\n 'cms.version.blockRemoved': 'Block entfernt.',\n 'cms.version.emptyValue': 'leer',\n 'cms.version.richText': 'Rich Text',\n 'cms.version.itemCount.one': '{count} Element',\n 'cms.version.itemCount.other': '{count} Elemente',\n 'cms.version.objectValue': 'Objekt',\n 'cms.version.kindNew': 'neu',\n 'cms.version.kindRemoved': 'entfernt',\n 'cms.version.unpublishedChanges': 'Nicht veröffentlichte Änderungen',\n 'cms.version.notPublishedYet': 'Noch nicht veröffentlicht',\n 'cms.version.fixValidationToPublish': 'Validierungsprobleme des Dokuments beheben, um zu veröffentlichen',\n 'cms.version.liveUpToDate': 'Die Live-Version ist aktuell – nichts zu veröffentlichen.',\n 'cms.version.comparingHint':\n 'Vergleich von v{base} → {target}. Klicken Sie auf eine Version, um sie als Basis festzulegen.',\n 'cms.version.noVersionsYet': 'Noch keine veröffentlichten Versionen.',\n 'cms.version.baseBadge': 'Basis',\n 'cms.version.comparedBadge': 'Verglichen',\n 'cms.version.compareWithDraft': 'Diese Version mit dem aktuellen Entwurf vergleichen',\n 'cms.version.compareVersionLabel': 'v{version} vergleichen',\n 'cms.version.rowActionsLabel': 'Aktionen für v{version}',\n 'cms.version.switchToDraftToRestore': 'Zum Entwurf wechseln, um wiederherzustellen',\n 'cms.version.restore': 'Wiederherstellen',\n // EC-199 provenance — a subtle marker on versions recorded from AI-authored content.\n 'cms.version.aiAuthored': 'KI',\n 'cms.version.aiAuthoredTitle': 'Mit dem KI-Assistenten erstellt',\n\n // EC-317 — descriptor lane, unified/side-by-side toggle, truncation, zebra.\n 'cms.version.fieldColumnHeader': 'Feld',\n 'cms.version.viewSideBySide': 'Nebeneinander',\n 'cms.version.viewUnified': 'Zusammengeführt',\n 'cms.version.viewModeAriaLabel': 'Darstellung des Vergleichs',\n 'cms.version.unifiedCaption': 'v{base} → {target}',\n 'cms.version.showMore': 'Mehr anzeigen',\n 'cms.version.showLess': 'Weniger anzeigen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — delete/unpublish reference-confirm dialog\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.reference.documentCount': '{count} Dokumente',\n 'cms.reference.confirmTitle': '{action}: {subject}?',\n 'cms.reference.checking': 'Eingehende Verweise werden geprüft…',\n 'cms.reference.checkUnavailable':\n 'Eingehende Verweise konnten nicht geprüft werden – der Verweisindex ist nicht erreichbar.',\n 'cms.reference.blocked.one':\n 'Blockiert: {count} strikter Verweis verhindert dies. Entfernen Sie zuerst die unten aufgeführten Verweise.',\n 'cms.reference.blocked.other':\n 'Blockiert: {count} strikte Verweise verhindern dies. Entfernen Sie zuerst die unten aufgeführten Verweise.',\n 'cms.reference.notReferenced': 'Nirgendwo referenziert.',\n 'cms.reference.permanentDelete.one': 'Dadurch wird das Dokument dauerhaft gelöscht.',\n 'cms.reference.permanentDelete.other': 'Dadurch werden die {count} ausgewählten Dokumente dauerhaft gelöscht.',\n 'cms.reference.canProceed':\n 'Sie können {action} – {summary} zeigen dann einen Fallback, bis das behoben ist. Jede davon wird zu einem sichtbaren Validierungsproblem.',\n 'cms.reference.proceedUnavailable':\n 'Fortfahren ist möglich, aber die betroffenen Stellen können derzeit nicht aufgelistet werden.',\n 'cms.reference.proceedAnyway': 'Trotzdem {action}',\n 'cms.reference.verb.unpublish': 'zurückziehen',\n 'cms.reference.verb.delete': 'löschen',\n 'cms.reference.placeCount.one': '{count} Stelle',\n 'cms.reference.placeCount.other': '{count} Stellen',\n 'cms.reference.bulkSummary': '{count} Dokumente sind betroffen; {places}',\n 'cms.reference.atLocation': 'bei',\n 'cms.reference.strictBadge': 'strikt',\n 'cms.reference.draftBadge': 'Entwurf',\n 'cms.reference.publishedBadge': 'veröffentlicht',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — field controls / scalar editor\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.field.rendererCrashed': 'Benutzerdefinierter Renderer abgestürzt — Standardsteuerung wird angezeigt.',\n 'cms.field.noRenderer': 'Kein Feld-Renderer für Steuerung „{control}“ registriert.',\n 'cms.field.itemActions': 'Elementaktionen',\n 'cms.field.moveUp': 'Nach oben',\n 'cms.field.moveDown': 'Nach unten',\n 'cms.field.collapseAll': 'Alle einklappen',\n 'cms.field.expandAll': 'Alle ausklappen',\n 'cms.field.noItems': 'Keine Elemente',\n 'cms.field.dragToReorder': 'Zum Umsortieren ziehen',\n 'cms.field.addItem': 'Element hinzufügen',\n 'cms.field.value': 'Wert',\n 'cms.field.valuePlaceholder': 'Wert',\n 'cms.field.colour': 'Farbe',\n // EC-315 — the smart slug / URL-segment control.\n 'cms.field.slug.regenerate': 'Slug neu erzeugen',\n 'cms.field.slug.taken': 'Wird bereits von „{title}“ verwendet',\n 'cms.field.slug.takenGeneric': 'Dieser Slug wird bereits verwendet.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — relation picker\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.relation.change': 'Ändern',\n 'cms.relation.openTitle': '{title} öffnen',\n 'cms.relation.pick': 'Auswählen',\n 'cms.relation.pickTitle.one': 'Verknüpftes Dokument auswählen',\n 'cms.relation.pickTitle.many': 'Verknüpfte Dokumente auswählen',\n 'cms.relation.fromCollection': 'Aus {collection}',\n 'cms.relation.selectMultipleHint': 'Mehrfachauswahl',\n 'cms.relation.noDocuments': 'Keine Dokumente in {collection}.',\n 'cms.relation.selectedCount': '{count} ausgewählt',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS — asset field + asset picker\n // ─────────────────────────────────────────────────────────────────────────\n 'cms.asset.rejected.one': '„{name}“ übersprungen — nur {types} hier erlaubt.',\n 'cms.asset.rejected.other': '{count} Dateien übersprungen — nur {types} hier erlaubt.',\n 'cms.asset.dropToUpload': 'Zum Hochladen ablegen',\n 'cms.asset.selectOrDrop': 'Bild auswählen oder ablegen',\n 'cms.asset.selectAsset': 'Medien auswählen',\n 'cms.asset.altLabel': 'Alt:',\n 'cms.asset.notSet': 'nicht gesetzt',\n 'cms.asset.imageOptions.title': 'Bildoptionen',\n 'cms.asset.imageOptions.description': 'Was zu dieser Verwendung des Bildes gehört, getrennt von dem, was überall für das Bild gilt.',\n 'cms.asset.imageOptions.placementTitle': 'An dieser Stelle',\n 'cms.asset.imageOptions.placementHint': 'Nur diese Verwendung des Bildes — eine andere Seite kann es anders zeigen.',\n 'cms.asset.imageOptions.assetTitle': 'Über dieses Bild',\n 'cms.asset.imageOptions.assetHint': 'Gilt überall, wo dieses Bild verwendet wird — eine Änderung hier ändert jede Verwendung.',\n 'cms.asset.imageOptions.whereUsed': 'Wo es verwendet wird',\n 'cms.asset.replaceFile': 'Datei ersetzen',\n 'cms.asset.replacing': 'Wird ersetzt …',\n 'cms.asset.replaceWrongKind': '„{name}“ nicht verwendet — der Ersatz muss {types} sein, wie die aktuelle Datei.',\n 'cms.asset.replaceSaveFirst': 'Speichern oder verwerfen Sie zuerst die Änderungen an den Metadaten.',\n 'cms.asset.replacedCheckFocal': 'Die Datei wurde ersetzt — prüfen Sie, ob der Fokuspunkt das Motiv noch erfasst.',\n 'cms.asset.focalPoint': 'Fokuspunkt',\n 'cms.asset.resetToCentre': 'Auf Mitte zurücksetzen',\n 'cms.asset.focalPointHint': 'Klicken oder ziehen Sie auf das Bild, um den Fokuspunkt für den Zuschnitt festzulegen.',\n 'cms.asset.noMetaFields':\n 'Für die Medien-Sammlung sind keine bearbeitbaren Metadatenfelder deklariert. Fügen Sie Felder (z. B. {code1}, {code2}) im Code hinzu.',\n 'cms.asset.pickTitle': 'Medien auswählen',\n 'cms.asset.pickDescription': 'Aus der Medienbibliothek des Projekts auswählen.',\n 'cms.asset.noProject': 'Die Medienbibliothek benötigt ein Projekt — diese CMS-Sitzung hat keins.',\n 'cms.asset.restoreDialogSize': 'Dialoggröße wiederherstellen',\n 'cms.asset.maximizeDialog': 'Dialog maximieren',\n 'cms.asset.searchPlaceholder': 'Medien suchen…',\n 'cms.asset.loading': 'Medien werden geladen…',\n 'cms.asset.loadError': 'Medien konnten nicht geladen werden.',\n 'cms.asset.noMatches': 'Keine Medien entsprechen Ihrer Suche.',\n 'cms.asset.empty': 'Noch keine Medien — Dateien hier ablegen oder hochladen.',\n 'cms.asset.noAltText': 'Kein Alt-Text',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Assets rail (EC-319: the universal list + grid/list toggle + detail surface)\n // ─────────────────────────────────────────────────────────────────────────\n 'assets.error.loadFailed': 'Medien konnten nicht geladen werden',\n 'assets.loading': 'Medien werden geladen…',\n 'assets.uploads.heading': 'Uploads',\n 'assets.upload.phase.queued': 'in Warteschlange',\n 'assets.upload.phase.preparing': 'wird vorbereitet',\n 'assets.upload.phase.uploading': 'wird hochgeladen',\n 'assets.upload.phase.confirming': 'Metadaten werden gespeichert',\n 'assets.upload.phase.done': 'fertig',\n 'assets.upload.phase.failed': 'fehlgeschlagen',\n 'assets.upload.attempt': 'Versuch {count}',\n 'assets.upload.dismissLabel': 'Upload verwerfen',\n 'assets.viewToggle.groupLabel': 'Listen- oder Rasteransicht',\n 'assets.viewToggle.list': 'Listenansicht',\n 'assets.viewToggle.grid': 'Rasteransicht',\n 'assets.detail.metadataHeading': 'Metadaten',\n 'assets.detail.noFileUrl':\n 'Zu dieser Mediendatei gibt es keine ausgelieferte Datei — überall, wo sie verwendet wird, erscheint ein leeres Bild. Ersetzen Sie die Datei.',\n 'assets.references.buttonLabel': 'Verweise',\n 'assets.references.title': 'Verwendet von — {name}',\n 'assets.references.description':\n 'Alles, was dieses Medienelement referenziert, mit Direktlinks zum genauen Feld oder Knoten.',\n 'assets.delete.raceError.one':\n 'Das Medienelement wird jetzt an {count} Stelle referenziert — zum Prüfen erneut öffnen.',\n 'assets.delete.raceError.other':\n 'Das Medienelement wird jetzt an {count} Stellen referenziert — zum Prüfen erneut öffnen.',\n 'assets.delete.title': '{filename} löschen?',\n 'assets.delete.description':\n 'Entfernt die gespeicherten Daten und den Metadatensatz. Dies kann nicht rückgängig gemacht werden.',\n 'assets.delete.checking': 'Verweise werden geprüft…',\n 'assets.delete.inUse.one': 'An {count} Stelle verwendet',\n 'assets.delete.inUse.other': 'An {count} Stellen verwendet',\n 'assets.delete.brokenWarning':\n 'Beim Löschen bleiben diese Verweise defekt — sie erscheinen als Validierungsprobleme.',\n 'assets.delete.noReferences': 'Keine Verweise gefunden. Kann gefahrlos gelöscht werden.',\n 'assets.delete.confirmAnyway': 'Trotzdem löschen',\n 'assets.focalPoint.noPreview':\n 'Keine Bildvorschau — laden Sie ein Bildmedium hoch oder wählen Sie eines aus, um einen Fokuspunkt festzulegen.',\n 'assets.focalPoint.setLabel': 'Fokuspunkt festlegen',\n // Vorschauen erzeugen — EC-400 Thumbnail-Nachrüstung.\n 'assets.generatePreviews.button': 'Vorschauen erzeugen',\n 'assets.generatePreviews.hint':\n 'Vorhandene Bilder auf leichtere Vorschau-Thumbnails herunterskalieren und so Egress sparen. Bereits vorhandene werden übersprungen.',\n 'assets.generatePreviews.running': 'Vorschauen werden erzeugt… {done}/{total}',\n 'assets.generatePreviews.done': '{count} Vorschauen erzeugt',\n 'assets.generatePreviews.none': 'Vorschauen bereits aktuell',\n 'assets.generatePreviews.cancelled': 'Abgebrochen — {count} erzeugt',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Users (section)\n // ─────────────────────────────────────────────────────────────────────────\n 'users.checkingAccess': 'Zugriff wird geprüft…',\n 'users.restrictedTitle': 'Nur für Administratoren',\n 'users.restrictedBody':\n 'Zum Verwalten von Benutzern und Rollen ist die Administratorrolle für diese Bereitstellung erforderlich. Bitten Sie einen Administrator, Ihnen Zugriff zu gewähren.',\n 'users.loadFailed': 'Benutzer konnten nicht geladen werden',\n 'users.loading': 'Benutzer werden geladen…',\n // Built-in users rail — its schema labels resolve through the catalog (msgLabel),\n // so a consumer's translation catalog localizes the rail with no per-rail override.\n 'users.rail.label': 'Benutzer',\n 'users.rail.labelSingular': 'Benutzer',\n 'users.field.name.label': 'Name',\n 'users.field.email.label': 'E-Mail',\n 'users.field.role.label': 'Rolle',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Invites (EC-324) — invite-based onboarding, admin action in the users rail\n // ─────────────────────────────────────────────────────────────────────────\n 'invites.invite': 'Benutzer einladen',\n 'invites.pending': 'Ausstehend:',\n 'invites.dialogTitle': 'Benutzer einladen',\n 'invites.dialogBody':\n 'Die Person tritt bei, indem sie mit dieser E-Mail-Adresse ein Konto erstellt. Die offene Registrierung ist geschlossen — nur eingeladene Adressen können sich registrieren.',\n 'invites.emailLabel': 'E-Mail',\n 'invites.roleLabel': 'Rolle',\n 'invites.send': 'Einladung senden',\n 'invites.sending': 'Einladung wird gesendet…',\n 'invites.sent': '{email} wurde eingeladen.',\n 'invites.revoked': 'Die Einladung für {email} wurde widerrufen.',\n 'invites.revokeAria': 'Einladung für {email} widerrufen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Account settings (EC-240 H-tail) — the member's OWN record + credentials\n // ─────────────────────────────────────────────────────────────────────────\n 'account.loading': 'Konto wird geladen…',\n 'account.loadFailed': 'Ihr Konto konnte nicht geladen werden',\n 'account.notMemberTitle': 'Noch kein Zugriff',\n 'account.notMemberBody':\n 'Sie sind angemeldet, gehören dieser Bereitstellung aber noch nicht an. Bitten Sie einen Administrator, Ihnen eine Rolle zuzuweisen.',\n // Account rail schema labels resolve through the catalog (msgLabel), like the users rail.\n 'account.rail.label': 'Konto',\n 'account.rail.labelSingular': 'Konto',\n 'account.field.name.label': 'Name',\n 'account.field.avatar.label': 'Avatar-URL',\n 'account.field.avatar.hint': 'Ein Link zu Ihrem Profilbild.',\n 'account.field.email.label': 'E-Mail',\n 'account.field.role.label': 'Rolle',\n 'account.security.title': 'Anmeldung & Sicherheit',\n 'account.security.method': 'Sie melden sich mit Ihrer E-Mail-Adresse und Ihrem Passwort an.',\n 'account.password.current': 'Aktuelles Passwort',\n 'account.password.new': 'Neues Passwort',\n 'account.password.confirm': 'Neues Passwort bestätigen',\n 'account.password.change': 'Passwort ändern',\n 'account.password.changing': 'Passwort wird geändert…',\n 'account.password.changed': 'Ihr Passwort wurde geändert.',\n 'account.password.mismatch': 'Die neuen Passwörter stimmen nicht überein.',\n // EC-412 — engine-classified change-password failures (mirrors the EC-397\n // sign-in pattern; the EN copy is pinned to the auth-adapter constants).\n 'account.password.error.notSignedIn': 'Sie sind nicht angemeldet.',\n 'account.password.error.currentIncorrect': 'Ihr aktuelles Passwort ist falsch.',\n 'account.password.error.weakPassword': 'Wählen Sie ein stärkeres Passwort (mindestens 8 Zeichen).',\n 'account.password.error.tooManyAttempts':\n 'Zu viele fehlgeschlagene Versuche — warten Sie einen Moment und versuchen Sie es dann erneut.',\n 'account.password.error.deploymentMisconfigured':\n 'Diese Bereitstellung kann Ihr Passwort nicht ändern: Der Auth-Signaturschlüssel ist nicht gesetzt. Führen Sie `npx @convex-dev/auth` aus.',\n 'account.password.error.serverError':\n 'Passwortänderung fehlgeschlagen (unerwarteter Serverfehler) — prüfen Sie die Logs der Bereitstellung.',\n 'account.password.error.playgroundUnsupported':\n 'Die Passwortänderung ist im Playground-Modus nicht verfügbar.',\n // EC-416 — update-profile failures (not-authenticated reuses notSignedIn above).\n 'account.profile.error.unavailable': 'Die Profilaktualisierung ist derzeit nicht verfügbar.',\n 'account.profile.error.playgroundUnsupported':\n 'Die Profilbearbeitung ist im Playground-Modus nicht verfügbar.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Redirects (section)\n // ─────────────────────────────────────────────────────────────────────────\n 'records.loadFailed': '{label} konnten nicht geladen werden',\n 'records.loading': '{label} werden geladen…',\n 'records.untitled': '(neu: {label})',\n 'redirects.loadFailed': 'Weiterleitungen konnten nicht geladen werden',\n 'redirects.loading': 'Weiterleitungen werden geladen…',\n // Built-in redirects rail — schema labels via the catalog (msgLabel), see above.\n 'redirects.rail.label': 'Weiterleitungen',\n 'redirects.rail.labelSingular': 'Weiterleitung',\n 'redirects.field.from.label': 'Quelle',\n 'redirects.field.to.label': 'Ziel',\n 'redirects.field.permanent.label': 'Dauerhaft (301)',\n 'redirects.field.enabled.label': 'Aktiv',\n\n // ─────────────────────────────────────────────────────────────────────────\n // References panel\n // ─────────────────────────────────────────────────────────────────────────\n 'references.title': 'Verweise',\n 'references.hintOutbound': 'Worauf dieser Eintrag verweist – klicken, um zum Ziel oder zum genauen Feld zu springen.',\n 'references.emptyOutbound': 'Keine ausgehenden Verweise.',\n 'references.usedBy': 'Verwendet von',\n 'references.hintInbound':\n 'Alles, was auf diesen Eintrag verweist – klicken, um zum genauen Feld oder Knoten zu springen.',\n 'references.emptyInbound': 'Nirgendwo verwendet.',\n 'references.loading': 'Verweise werden geladen…',\n 'references.loadFailed': 'Verweise konnten nicht geladen werden',\n 'references.indexUnreachable': 'Der Verweisindex ist nicht erreichbar.',\n 'references.sectionLoadError': 'Dieser Abschnitt konnte nicht geladen werden: {error}',\n 'references.locationPrefix': 'in',\n 'references.badgeDraft': 'Entwurf',\n 'references.badgePublished': 'veröffentlicht',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Components registry browser\n // ─────────────────────────────────────────────────────────────────────────\n 'components.detail.notFound.title': 'Komponente nicht gefunden',\n 'components.detail.notFound.body': 'Keine Komponente mit der ID {id} registriert.',\n 'components.detail.notFound.back': 'Zurück zu Komponenten',\n 'components.detail.allComponents': 'Alle Komponenten',\n 'components.status.valid': 'gültig',\n 'components.status.incompatible': 'inkompatibel',\n 'components.status.invalid': 'ungültig',\n 'components.status.aria': 'Status: {status}',\n 'components.status.description.valid': 'Das Manifest ist registriert und eine Implementierung ist eingebunden.',\n 'components.status.description.incompatible':\n 'Das Manifest ist registriert, aber es ist keine Implementierung verfügbar — der Renderer zeigt einen Fallback.',\n 'components.status.description.invalid': 'Die Registry hat ein strukturiertes Problem für diese Komponente gemeldet.',\n 'components.index.title': 'Komponenten-Registry',\n 'components.index.subtitle':\n 'Durchsuchen Sie die Plattform-Primitive und die Komponenten dieses Projekts. Wählen Sie eine aus, um Manifest, Felder und Vorschau-Fixtures zu inspizieren.',\n 'components.index.stat.total': 'Komponenten',\n 'components.index.stat.totalHint': '{primitives} Primitive · {projects} Projekt',\n 'components.index.stat.valid': 'Gültig',\n 'components.index.stat.needAttention': 'Benötigt Aufmerksamkeit',\n 'components.index.stat.needAttentionHint': '{incompatible} inkompatibel · {invalid} ungültig',\n 'components.index.pickHint':\n 'Wählen Sie eine Komponente aus der Liste, um die Detailansicht zu öffnen — Manifest-Metadaten, den Prop- und Slot-Inspektor und den visuellen Fixture-Runner.',\n 'components.index.byCategory': 'Nach Kategorie',\n 'components.index.guide.title': 'Projektkomponenten registrieren',\n 'components.index.guide.badge': 'Anleitung',\n 'components.index.guide.intro':\n 'Komponenten sind Code und gehören Ihrem Repository. Registrieren Sie ein Manifest mit Eigenschaftsschemata, Standardwerten, Inspektor-Steuerelementen, Slots und Vorschauzuständen. Das Studio kann die Komponente anschließend durchsuchen, prüfen und anzeigen. Diese Anleitungen im Repository erklären die Einzelheiten:',\n 'components.index.guide.doc.authoring':\n 'So deklarieren und registrieren Sie eine Komponente, damit das Studio sie durchsuchen, prüfen und anzeigen kann.',\n 'components.index.guide.doc.fixtures':\n 'Deterministische Vorschauzustände erstellen — die Zustände, die in der Live-Vorschau dieser Ansicht erscheinen.',\n 'components.index.guide.doc.extensibility':\n 'Die Plattform erweitern: eigene Feldtypen, Datenquellen, Export-Ziele und Plugins.',\n 'components.index.guide.namespaceNote':\n 'Komponenten sind die Liste in Ihrer Konfiguration, mit IDs Ihrer Wahl (Heading, site.Hero). Elytras eigene Komponenten sind das optionale Paket @elytracms/components — alle, eine Auswahl oder keine.',\n 'components.taxonomy.uncategorized': 'Ohne Kategorie',\n 'components.detail.tab.preview': 'Vorschau',\n 'components.detail.tab.manifest': 'Manifest',\n 'components.preview.reset': 'Zustand zurücksetzen',\n 'components.preview.resetProps': 'Eigenschaften zurücksetzen',\n 'components.preview.edited': 'bearbeitet',\n 'components.preview.incompatibleNote':\n 'Es ist keine Implementierung verbunden — der Renderer zeigt seine Ersatzdarstellung.',\n 'components.preview.serverOnlyTitle': 'Nur serverseitige Komponente',\n 'components.preview.serverOnlyBody':\n 'Diese Komponente kann nicht im Client gerendert werden und daher nicht in der Live-Vorschau laufen. In Ihren Auslieferungs-Frames wird sie weiterhin gerendert.',\n 'components.preview.slotsNote':\n 'Der Slot-Inhalt der Vorschau folgt dem ausgewählten Zustand. Die vollständige Slot-Bearbeitung erfolgt auf der Arbeitsfläche eines Dokuments — übertragen Sie diese Kombination mit „In Dokument verwenden…“ in ein Dokument.',\n 'components.preview.unavailableTitle': 'Vorschau nicht verfügbar',\n 'components.preview.propNeedsDocument':\n 'In einem Dokument bearbeitbar — im Komponenten-Preview fehlt der Workspace-Kontext.',\n 'components.transfer.action': 'In Dokument verwenden…',\n 'components.transfer.title': '„{name}“ in einem Dokument verwenden',\n 'components.transfer.description':\n 'Erstellen Sie einen neuen Entwurf oder fügen Sie die Komponente dem Block-Feld eines vorhandenen Dokuments hinzu und öffnen Sie es anschließend.',\n 'components.transfer.intoField': 'in',\n 'components.transfer.newDocument': 'Neues Dokument in {collection}',\n 'components.transfer.orExisting': 'oder einem vorhandenen Dokument hinzufügen',\n 'components.transfer.noTargets': 'Kein Dokumentfeld kann diese Komponente aufnehmen.',\n 'components.fieldInspector.props': 'Props',\n 'components.fieldInspector.noProps': 'Diese Komponente deklariert keine bearbeitbaren Props.',\n 'components.fieldInspector.slots': 'Slots',\n 'components.fieldInspector.noSlots': 'Diese Komponente hat keine Slots.',\n 'components.fieldInspector.inline': 'inline',\n 'components.fieldInspector.default': 'Standard',\n 'components.fieldInspector.allows': 'erlaubt',\n 'components.fixtureRunner.statesAria': 'Fixture-Zustände',\n 'components.preview.breakpointAria': 'Vorschaubreite',\n 'components.browser.searchPlaceholder': 'Komponenten suchen…',\n 'components.browser.searchAria': 'Komponenten suchen',\n 'components.browser.namespaceAria': 'Nach Namespace filtern',\n 'components.browser.all': 'Alle',\n 'components.browser.primitives': 'Primitive',\n 'components.browser.project': 'Projekt',\n 'components.browser.noMatchQuery': 'Keine Komponenten entsprechen „{query}“.',\n 'components.browser.noMatchFilters': 'Keine Komponenten entsprechen den ausgewählten Filtern.',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Settings\n // ─────────────────────────────────────────────────────────────────────────\n 'settings.identity.title': 'Identität',\n 'settings.identity.name': 'Name',\n 'settings.identity.urlKey': 'URL-Schlüssel',\n 'settings.locales.title': 'Sprachen',\n 'settings.locales.configuredCount': '{count} konfiguriert',\n 'settings.locales.configured': 'Konfigurierte Sprachen',\n 'settings.locales.defaultSuffix': ' · Standard',\n 'settings.environments.title': 'Umgebungen & Export',\n 'settings.environments.label': 'Umgebungen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // App-views shell\n // ─────────────────────────────────────────────────────────────────────────\n 'appViews.singleton.opening': '{label} wird geöffnet…',\n\n // ─────────────────────────────────────────────────────────────────────────\n // Builder / canvas\n // ─────────────────────────────────────────────────────────────────────────\n // Shown in the lazy boundary while the page-builder canvas chunk loads (EC-322).\n 'builder.canvas.loading': 'Page Builder wird geladen…',\n 'builder.blocksPanel.title': 'Block einfügen',\n 'builder.blocksPanel.addsInto': 'Fügt ein in {destination}.',\n 'builder.blocksPanel.searchPlaceholder': 'Blöcke suchen…',\n 'builder.blocksPanel.searchAria': 'Blöcke suchen',\n 'builder.blocksPanel.layoutHelpers': 'Layout-Helfer',\n 'builder.blocksPanel.noAllowed': 'Keine zulässigen Komponenten gefunden.',\n 'builder.blocksPanel.noMatch': 'Keine Komponenten passen zu „{query}“.',\n 'builder.blocksPanel.insertTileAria': '{title} — {variant} einfügen',\n 'builder.blocksPanel.copyExactAria': 'Exakte Konfiguration kopieren — {title} ({variant})',\n 'builder.blocksPanel.copyExactConfiguration': 'Exakte Konfiguration kopieren',\n 'builder.blocksPanel.previewFailed': 'Vorschau fehlgeschlagen: {error}',\n // EC-439: one tile per component; a 2+-fixture component gets a variants chip + flyout.\n 'builder.blocksPanel.insertComponentAria': '{title} einfügen',\n 'builder.blocksPanel.variantCount': '{count} Varianten',\n 'builder.blocksPanel.variantsAria': '{count} Varianten von {title} anzeigen',\n 'builder.blocksPanel.variantsHeading': 'Varianten',\n 'builder.blocksPanel.variantIssuesHint': 'Einige Varianten haben Validierungsprobleme.',\n 'builder.pageTree.title': 'Seitenstruktur',\n 'builder.pageTree.addChild': 'Unterelement hinzufügen',\n 'builder.pageTree.moreActions': 'Weitere Aktionen',\n 'builder.pageTree.moveUp': 'Nach oben',\n 'builder.pageTree.moveDown': 'Nach unten',\n 'builder.clipboard.paste': 'Einfügen',\n 'builder.clipboard.cut': 'Ausschneiden',\n 'builder.clipboard.writeError': 'Konnte nicht in die Zwischenablage schreiben: {detail}',\n 'builder.clipboard.rootCannotBeCut': 'Das Seiten-Wurzelelement kann nicht ausgeschnitten werden.',\n 'builder.clipboard.copied': '{label} kopiert',\n 'builder.clipboard.cutNotice': '{label} ausgeschnitten',\n 'builder.clipboard.pastedInto': '{summary} · in {destination}',\n 'builder.clipboard.notAllowed':\n '{component} kann nicht in {destination} eingefügt werden — der Slot lässt es nicht zu.',\n 'builder.clipboard.notAllowedByField':\n '{component} kann nicht auf oberster Ebene von „{field}“ eingefügt werden — das Feld lässt es nicht zu.',\n 'builder.clipboard.issueComponent': 'Komponente',\n // EC-584 — eine abgelehnte Platzierung (der eine Platzierungsrichter im Builder-Reducer).\n 'builder.placement.notAllowedByField':\n '{component} ist auf oberster Ebene von „{field}“ nicht erlaubt — das Feld lässt es nicht zu. Nichts wurde geändert.',\n 'builder.placement.notAllowedInSlot':\n '{component} ist in {destination} nicht erlaubt — der Slot lässt es nicht zu. Nichts wurde geändert.',\n 'builder.placement.serverOnly':\n '{component} wird nur auf dem Server gerendert und kann nicht auf die Arbeitsfläche gesetzt werden. Nichts wurde geändert.',\n 'builder.placement.dismiss': 'Hinweis schließen',\n // EC-494 — Zwischenablage-Fehler aus der Engine plus der studio-seitige Einfüge-Diff.\n 'builder.clipboard.error.corruptJson': 'Der Inhalt der Zwischenablage ist kein gültiges JSON: {detail}',\n 'builder.clipboard.error.notEnvelope':\n 'Der Inhalt der Zwischenablage ist kein Elytra-Fragment-Umschlag.',\n 'builder.clipboard.error.foreignFormat':\n 'Der Inhalt der Zwischenablage ist kein Elytra-Fragment (erwartetes Format \"{expected}\").',\n 'builder.clipboard.error.versionNewer':\n 'Die Fragmentversion {version} ist neuer als von diesem Studio unterstützt (Version {supported}).',\n 'builder.clipboard.error.versionUnsupported':\n 'Die Fragmentversion {version} wird nicht unterstützt (dieses Studio liest Version {supported}).',\n 'builder.clipboard.error.invalidPayload':\n 'Das Fragment der Zwischenablage verletzt das Fragment-Schema.',\n 'builder.clipboard.error.nodeNotFound': 'In der Komposition existiert kein Knoten \"{nodeId}\".',\n 'builder.clipboard.error.fixtureNotFound':\n 'Die Komponente \"{component}\" deklariert kein Fixture namens \"{fixture}\".',\n 'builder.clipboard.issue.missingComponent':\n 'Die Komponente \"{componentId}\" ist in diesem Projekt nicht registriert.',\n 'builder.clipboard.summary.pasted': 'Eingefügt',\n 'builder.clipboard.summary.pastedWith': 'Eingefügt — {parts}',\n 'builder.clipboard.summary.componentMissingOne': '{count} Komponente fehlt',\n 'builder.clipboard.summary.componentsMissing': '{count} Komponenten fehlen',\n 'builder.reuse.makeReusable': 'Wiederverwendbar machen',\n 'builder.reuse.detachToCopy': 'Als Kopie loslösen',\n 'builder.reuse.defaultElementName': 'Wiederverwendbares Element',\n 'builder.reuse.madeReusablePublished': '„{name}“ wiederverwendbar gemacht und veröffentlicht.',\n 'builder.reuse.madeReusablePublishFailed':\n '„{name}“ wiederverwendbar gemacht, aber die Veröffentlichung ist fehlgeschlagen — veröffentlichen Sie es aus seinem Dokument.',\n 'builder.reuse.madeReusableDraft':\n '„{name}“ wiederverwendbar gemacht (Entwurf) — veröffentlichen Sie es, um es auf Live-Seiten anzuzeigen.',\n 'builder.reuse.noTargetToDetach': 'Dieses Element hat kein Ziel zum Loslösen.',\n 'builder.reuse.noContentToDetach': 'Das referenzierte Element hat keinen Inhalt zum Loslösen.',\n 'builder.reuse.detachedToCopy': 'Als bearbeitbare Kopie losgelöst — die Live-Verknüpfung ist getrennt.',\n 'builder.reuse.makeReusableDescription':\n 'Verschiebt den ausgewählten Block in ein neues wiederverwendbares Element und bettet es hier ein. Dasselbe Element kann dann auf jeder Seite eingebettet werden. Veröffentlichen Sie es jetzt, um den Abschnitt überall sichtbar zu halten, oder speichern Sie es als Entwurf, um zuerst weiter zu bearbeiten.',\n 'builder.reuse.nameLabel': 'Name',\n 'builder.reuse.namePlaceholder': 'Reservierungs-CTA',\n 'builder.reuse.saveDraft': 'Entwurf speichern',\n 'builder.reuse.publish': 'Veröffentlichen',\n 'builder.inspector.emptySelection':\n 'Wählen Sie ein Element in der Struktur oder auf der Arbeitsfläche, um seine Eigenschaften zu bearbeiten.',\n 'builder.inspector.title': 'Inspektor',\n 'builder.inspector.unknownComponent': 'unbekannte Komponente',\n 'builder.inspector.noManifest':\n 'Für diese Komponente ist kein Manifest registriert, ihre Eigenschaften können nicht bearbeitet werden.',\n 'builder.inspector.props': 'Eigenschaften',\n 'builder.inspector.noEditableProps': 'Keine bearbeitbaren Eigenschaften.',\n 'builder.inspector.slots': 'Slots',\n 'builder.inspector.slotsHint': 'Slot-Elemente in der Seitenstruktur hinzufügen oder umsortieren.',\n 'builder.inspector.propertiesPane': 'Eigenschaften',\n 'builder.inspector.invalidJson': 'Ungültiges JSON',\n 'builder.layout.title': 'Layout',\n 'builder.layout.direction': 'Richtung',\n 'builder.layout.vertical': 'Vertikal',\n 'builder.layout.horizontal': 'Horizontal',\n 'builder.layout.columns': 'Spalten',\n 'builder.layout.columnCount.one': '{count} Spalte',\n 'builder.layout.columnCount.other': '{count} Spalten',\n 'builder.layout.gap': 'Abstand',\n 'builder.layout.alignment': 'Ausrichtung',\n 'builder.layout.onPhones': 'Auf Smartphones',\n 'builder.layout.stack': 'Stapeln',\n 'builder.layout.keepColumns': 'Spalten beibehalten',\n 'builder.layout.gapStep.hairline': 'Haarlinie',\n 'builder.layout.gapStep.extraSmall': 'Sehr klein',\n 'builder.layout.gapStep.small': 'Klein',\n 'builder.layout.gapStep.medium': 'Mittel',\n 'builder.layout.gapStep.large': 'Groß',\n 'builder.layout.gapStep.extraLarge': 'Sehr groß',\n 'builder.layout.gapStep.huge': 'Riesig',\n 'builder.layout.align.start': 'Anfang',\n 'builder.layout.align.center': 'Zentriert',\n 'builder.layout.align.end': 'Ende',\n 'builder.layout.align.stretch': 'Strecken',\n 'builder.canvas.pagePreview': 'Seitenvorschau',\n 'builder.canvas.reusableUnpublishedTitle': 'Dieses wiederverwendbare Element ist noch nicht veröffentlicht',\n 'builder.canvas.reusableMissingTitle': 'Dieses wiederverwendbare Element fehlt',\n 'builder.canvas.reusableUnpublishedHint':\n 'Veröffentlichen Sie es, um es hier und auf Live-Seiten anzuzeigen — oder öffnen Sie es im Eigenschaften-Panel, um weiter zu bearbeiten.',\n 'builder.canvas.reusableMissingHint':\n 'Öffnen Sie das „Element“ der Einbettung im Eigenschaften-Panel, um die Referenz zu korrigieren.',\n 'builder.canvas.listingInvalidTitle': 'Diese Liste kann nicht ausgeführt werden:',\n 'builder.canvas.viewportPreviewAria': '{label} Vorschau',\n 'builder.canvas.viewportWidthTitle': '{label} Breite',\n 'builder.canvas.breakpointsIssueLabel': 'Breakpoints',\n 'builder.canvas.undo': 'Rückgängig',\n 'builder.canvas.redo': 'Wiederholen',\n 'builder.canvas.insert': 'Einfügen',\n // In-canvas \"+\" insertion affordances at block boundaries (EC-405).\n 'builder.canvas.insertBefore': 'Block davor einfügen',\n 'builder.canvas.insertAfter': 'Block danach einfügen',\n 'builder.canvas.insertInto': 'Block darin einfügen',\n 'builder.canvasTheme.legacyNotice':\n 'Die canvas.css dieses Projekts bündelt noch das Studio-Designsystem mit dem Site-Theme (die alte zusammengeführte Form). Richten Sie canvas.css stattdessen auf den eigenen Full-Tailwind-Theme-Einstieg der Site — siehe Theming-Leitfaden (docs/theming.md). Bis dahin funktioniert alles weiter.',\n 'builder.canvasTheme.stylesheetErrorNotice':\n 'Das Canvas-Stylesheet konnte nicht geladen werden — Blöcke werden ungestylt dargestellt. Prüfen Sie den canvas.css-Build des Studios.',\n 'builder.canvasTheme.noThemeTokensNotice':\n 'Das Canvas-Stylesheet definiert keine Theme-Tokens. canvas.css sollte den Full-Tailwind-Theme-Einstieg der Site importieren (siehe docs/theming.md).',\n 'builder.canvasTheme.noStylesheetNotice':\n 'Es ist kein Canvas-Stylesheet konfiguriert — Blöcke werden ungestylt dargestellt. Die App muss eines über setCanvasStylesheetUrl bereitstellen (das create-elytra-Template verdrahtet das).',\n // EC-549 — ein Textabschnitt zwischen den Blöcken.\n 'builder.run.title': 'Text',\n 'builder.run.items': '{count} Element(e)',\n 'builder.run.hint':\n 'Geschriebener Text zwischen den Blöcken — hier bearbeiten; er behält seinen Platz zwischen den Blöcken und wird so veröffentlicht, wie er hier steht.',\n 'builder.run.delete': 'Text löschen',\n 'builder.spacing.gapAfterChild': 'Abstand nach Element {index}',\n 'builder.richText.toolbarLabel': 'Textformatierung',\n 'builder.richText.linkPlaceholder': 'https://… (leer entfernt)',\n 'builder.richText.linkUrl': 'Link-URL',\n 'builder.richText.set': 'Setzen',\n 'builder.richText.applyLink': 'Link anwenden',\n 'builder.richText.bold': 'Fett',\n 'builder.richText.italic': 'Kursiv',\n 'builder.richText.link': 'Link',\n 'builder.richText.removeLink': 'Link entfernen',\n 'builder.richText.unlink': 'Verknüpfung lösen',\n\n // ─────────────────────────────────────────────────────────────────────────\n // CMS rich-text editor (EC-314) — the TipTap field editor\n // ─────────────────────────────────────────────────────────────────────────\n 'richText.placeholder': 'Schreiben Sie etwas…',\n // Shown in the lazy boundary while the TipTap editor chunk loads (EC-322).\n 'richText.loading': 'Editor wird geladen…',\n 'richText.bold': 'Fett',\n 'richText.italic': 'Kursiv',\n 'richText.underline': 'Unterstrichen',\n 'richText.strike': 'Durchgestrichen',\n 'richText.code': 'Code im Text',\n 'richText.paragraph': 'Absatz',\n 'richText.heading': 'Überschrift {level}',\n 'richText.bulletList': 'Aufzählung',\n 'richText.orderedList': 'Nummerierte Liste',\n 'richText.blockquote': 'Zitat',\n 'richText.codeBlock': 'Codeblock',\n 'richText.horizontalRule': 'Trennlinie',\n 'richText.fontSize.label': 'Schriftgröße',\n 'richText.fontSize.small': 'Klein',\n 'richText.fontSize.normal': 'Normal',\n 'richText.fontSize.large': 'Groß',\n 'richText.fontSize.xlarge': 'Sehr groß',\n 'richText.undo': 'Rückgängig',\n 'richText.redo': 'Wiederholen',\n 'richText.link.add': 'Link',\n 'richText.link.remove': 'Link entfernen',\n 'richText.link.external': 'Externe URL',\n 'richText.link.externalPlaceholder': 'https://…',\n 'richText.link.document': 'Dokument verknüpfen',\n 'richText.link.documentSearch': 'Dokumente suchen…',\n 'richText.link.documentEmpty': 'Keine passenden Dokumente.',\n 'richText.link.apply': 'Anwenden',\n 'richText.image.add': 'Bild',\n 'richText.embed.add': 'Komponente einbetten',\n 'richText.embed.badge': 'Einbettung',\n 'richText.embed.unknown': 'Unbekannte Komponente',\n 'richText.embed.empty': 'Keine Komponenten zum Einbetten verfügbar.',\n 'richText.embed.editProps': 'Einstellungen bearbeiten',\n 'richText.embed.editTitle': '{name} bearbeiten',\n 'richText.embed.noProps': 'Diese Komponente hat keine bearbeitbaren Einstellungen.',\n 'richText.embed.blocksNote': 'Verschachtelte Inhaltsbereiche werden auf der Arbeitsfläche bearbeitet, nicht hier.',\n 'richText.carrier.unknown': 'Unbekannter Inhaltsblock:',\n 'richText.slash.text': 'Text',\n 'richText.slash.empty': 'Keine passenden Blöcke',\n 'richText.slash.componentsGroup': 'Komponenten',\n // EC-388/EC-431 — expand the editing surface (the centered stage for long prose).\n 'richText.expand.expand': 'Editor vergrößern',\n 'richText.expand.collapse': 'Editor verkleinern',\n 'richText.expand.title': 'Rich Text',\n // EC-436 — Titel der vergrößerten Ansicht mit Feldbezeichnung ({field}).\n 'richText.expand.titleWithField': '{field} — Rich Text',\n 'richText.expand.editingInSheet': 'Bearbeitung in der vergrößerten Ansicht — klicken Sie, um zurückzukehren',\n\n // ─────────────────────────────────────────────────────────────────────────\n // EC-199 — AI assistant chat panel + creation flow\n // ─────────────────────────────────────────────────────────────────────────\n 'ai.panel.title': 'Assistent',\n 'ai.panel.toggle': 'KI-Assistenten ein- oder ausblenden',\n 'ai.panel.close': 'Assistenten schließen',\n 'ai.panel.loading': 'Assistent wird geladen…',\n 'ai.panel.working': 'Wird bearbeitet…',\n 'ai.panel.placeholder': 'Bitten Sie den Assistenten, Inhalte zu erstellen…',\n 'ai.panel.send': 'Senden',\n 'ai.panel.emptyTitle': 'Inhalte mit KI erstellen',\n 'ai.panel.emptyHint':\n 'Beschreiben Sie, was Sie erstellen möchten — zum Beispiel: „Schreibe einen Beitrag über unsere neuen Öffnungszeiten.“ Der Assistent erstellt einen Entwurf zur Prüfung.',\n 'ai.panel.unavailable': 'Der Assistent ist in diesem Projekt nicht verfügbar.',\n // EC-334/EC-380 — new-conversation affordance\n 'ai.panel.newConversation': 'Neue Unterhaltung',\n 'ai.step.search': '{collection} durchsucht — {count} gefunden',\n 'ai.step.searchRunning': '{collection} wird durchsucht…',\n 'ai.step.listAssets': 'Medien durchsucht — {count} gefunden',\n 'ai.step.listAssetsRunning': 'Medien werden durchsucht…',\n 'ai.step.getDocument': 'Dokument gelesen',\n 'ai.step.getDocumentRunning': 'Dokument wird gelesen…',\n 'ai.step.drafting': 'Entwurf für {collection} wird erstellt…',\n 'ai.step.translating': '{completed} von {total} werden übersetzt…',\n 'ai.step.translatingDoc': 'Dokument wird übersetzt…',\n 'ai.step.translateNothing': 'Nichts zu übersetzen — alle Sprachen sind bereits ausgefüllt.',\n // EC-378 — the updateFields edit flow\n 'ai.step.updatingDoc': 'Änderungen am Dokument werden vorgeschlagen…',\n 'ai.step.updateNoChange': 'Keine Änderungen nötig — die Werte stimmen bereits überein.',\n 'ai.proposal.title': 'Vorschlag für {collection}',\n 'ai.proposal.reviewHint': 'Prüfen Sie den Entwurf und übernehmen oder verwerfen Sie ihn anschließend.',\n 'ai.proposal.apply': 'Als Entwurf übernehmen',\n 'ai.proposal.discard': 'Verwerfen',\n 'ai.proposal.applied': 'Als Entwurf übernommen',\n 'ai.proposal.discarded': 'Verworfen',\n 'ai.proposal.discardedNote': 'Dieser Vorschlag wurde verworfen.',\n 'ai.proposal.open': 'Dokument öffnen',\n 'ai.proposal.unavailable': 'Dieser Vorschlag kann nicht mehr angezeigt werden.',\n 'ai.proposal.diffBefore': 'Leer',\n 'ai.proposal.diffAfter': 'Vorschlag',\n 'ai.proposal.diffUnified': 'Vorgeschlagener Inhalt',\n // EC-382 — the expandable review surface (a roomy full-height sheet).\n 'ai.proposal.expandReview': 'Prüfansicht erweitern',\n 'ai.proposal.collapseReview': 'Prüfansicht schließen',\n 'ai.error.route': 'Der Assistent ist derzeit nicht verfügbar. Bitte versuchen Sie es erneut.',\n 'ai.error.routeNotMounted':\n 'Unter {endpoint} ist keine Assistenten-Route eingebunden – die Anfrage wurde von der Seite statt von der KI-Route beantwortet. Prüfen Sie die Routen-Einbindung des Hosts; auf einem Dev-Server fehlt möglicherweise die Build-Ausgabe des Studios.',\n 'ai.error.generic': 'Etwas ist schiefgelaufen. Bitte versuchen Sie es erneut.',\n 'ai.error.applyFailed': 'Der Entwurf konnte nicht übernommen werden.',\n 'ai.error.applyInvalid': 'Der Vorschlag passt nicht mehr zum aktuellen Dokument: {issues}',\n 'ai.error.stepCap':\n 'Der Assistent hat nach {max} Werkzeugschritten angehalten. Senden Sie eine weitere Nachricht, um fortzufahren.',\n // EC-332 — full-document translation (header action + chat tool)\n 'ai.translate.action': 'Dokument übersetzen',\n 'ai.translate.tooltip': 'Leere Übersetzungen mit KI ausfüllen',\n 'ai.translate.dialogTitle': 'Dokument übersetzen',\n 'ai.translate.dialogDescription':\n 'Leere Sprachwerte aus {base} mit KI ausfüllen. Vorhandene Übersetzungen werden nie überschrieben.',\n 'ai.translate.targetsLabel': 'Zielsprachen',\n 'ai.translate.scopeLabel': 'Zu übersetzender Umfang',\n 'ai.translate.fillMissing': 'Nur fehlende Übersetzungen ausfüllen',\n 'ai.translate.retranslateAll': 'Alles neu übersetzen',\n 'ai.translate.retranslateSoon': 'Demnächst',\n 'ai.translate.confirm': 'Übersetzen',\n 'ai.translate.preparing': 'Übersetzung wird vorbereitet…',\n 'ai.translate.progress': '{completed} von {total} werden übersetzt…',\n 'ai.translate.applying': 'Übersetzungen werden gespeichert…',\n 'ai.translate.nothing': 'Alles ist bereits übersetzt — es gibt nichts auszufüllen.',\n 'ai.translate.applied': '{count} Übersetzungen in {locales} Sprachen wurden ausgefüllt.',\n 'ai.translate.cancelled': 'Übersetzung abgebrochen — Teilergebnisse bleiben im Entwurf erhalten.',\n 'ai.translate.failed': 'Übersetzung fehlgeschlagen. Bitte versuchen Sie es erneut.',\n 'ai.translate.close': 'Schließen',\n 'ai.translate.proposalTitle': 'Übersetzung von {collection}',\n 'ai.translate.diffBefore': 'Aktuell',\n 'ai.translate.diffAfter': 'Übersetzt',\n // EC-593 — was ein Übersetzungslauf nicht übersetzen konnte, wird gemeldet, nie stillschweigend übersprungen.\n 'ai.translate.skippedTitle': 'Nicht übersetzt ({count})',\n 'ai.translate.skipped.unreadable': 'der gespeicherte Wert konnte nicht gelesen werden',\n 'ai.translate.skipped.notReturned': 'der Assistent hat dafür keinen Text geliefert',\n 'ai.translate.skipped.structureChanged':\n 'die Übersetzung hat Formatierungen, Links oder eingebettete Elemente verloren — das Original wurde beibehalten',\n // EC-378 — the update (edit-existing) proposal\n 'ai.update.proposalTitle': 'Änderungen an {collection}',\n 'ai.update.diffBefore': 'Aktuell',\n 'ai.update.diffAfter': 'Vorgeschlagen',\n // EC-591 — Hinweise auf der Arbeitsfläche für Rollen, die keine Komponente der Liste füllt.\n 'builder.roles.noStack':\n 'Diese Arbeitsfläche braucht eine Komponente mit der Rolle \"layout.stack\" — die Blöcke des Feldes werden darin angeordnet —, und die Komponenten dieses Projekts haben keine. Tragen Sie eine in die Komponentenliste Ihrer Konfiguration ein (zum Beispiel Stack aus @elytracms/components).',\n 'builder.roles.noGrid':\n 'Keine Komponente füllt die Rolle \"layout.grid\" — Blöcke nebeneinander ablegen (Spalten) ist deshalb aus.',\n 'builder.roles.noText':\n 'Keine Komponente füllt die Rolle \"text\" — die vorbefüllten Layout-Vorlagen (Stack, Grid) sind deshalb aus.',\n 'builder.inspector.unset': 'Nicht gesetzt',\n 'builder.inspector.unsetWithHint': 'Nicht gesetzt (Standard: {hint})',\n // EC-586 / EC-581 (wave-0092, zone A) — canonical values and the per-FieldType definition\n 'cms.issueMessage.nonCanonicalValue': 'Das Feld „{field}“ ist in einer nicht kanonischen Form für ein Feld vom Typ „{type}“ gespeichert — es wurde am Schreibweg vorbei geschrieben, der je Feldtyp genau eine Form speichert. Es wird weiterhin korrekt gelesen; erneutes Speichern des Dokuments legt die kanonische Form ab.',\n 'cms.issueMessage.assetHoldsUrl': 'Das Asset-Feld „{field}“ enthält eine URL — ein Asset-Wert ist ein Asset aus der Mediathek, nie eine URL. Laden Sie das Bild in die Mediathek hoch und wählen Sie es aus, oder tragen Sie die Adresse eines externen Bildes in das URL-Feld der Komponente ein (beim Bild: „Image URL“).',\n // EC-584 — die AllowList-Prüfung (Konfiguration / Registrierung).\n 'cms.issueMessage.emptyAllow': 'Das Feld „{field}“ deklariert ein leeres „allow“ — eine Liste erlaubt genau die genannten IDs, eine leere also nichts. Lassen Sie „allow“ weg für die Standard-Auswahl des Feldtyps, oder nennen Sie die Komponenten-IDs.',\n 'cms.issueMessage.unknownAllowComponent': 'Das Feld „{field}“ erlaubt „{component}“, das keine Komponente dieses Projekts ist — prüfen Sie die ID oder entfernen Sie sie aus „allow“.',\n 'cms.issueMessage.blocksNotTopLevel': 'Das Feld „{field}“ ist ein „blocks“-Feld innerhalb eines Objekts — ein blocks-Feld steht nur auf oberster Ebene (eine Arbeitsfläche in einer Wiederholung bricht das Formular, die Validierungspfade und den Auslieferungstyp). Legen Sie ein weiteres blocks-Feld auf oberster Ebene an oder geben Sie einer Komponente eine blocks-Eigenschaft (einen Slot).',\n 'cms.issueMessage.placementKeyReserved': 'Das Asset-Feld „{asset}“ deklariert das platzierungsbezogene Unterfeld „{field}“, einen Namen, der dem Asset selbst gehört — es käme nie bei einer Komponente an (das „{field}“ des Assets gewinnt). Benennen Sie es um; Alternativtext, Bildnachweis oder KI-Kennzeichnung eines Bildes gehören in die Asset-Sammlung.',\n 'cms.issueMessage.placementNotScalar': 'Das Asset-Feld „{asset}“ deklariert das platzierungsbezogene Unterfeld „{field}“ vom Typ „{type}“ — eine Platzierung enthält Angaben zu dieser Verwendung des Bildes (eine Bildunterschrift, ein Layout), niemals eine Referenz oder Rich Text.',\n 'cms.issueMessage.sourceNotOnAssetCollection': 'Das Feld „{field}“ deklariert die Quelle „{source}“ — eine Quelle für eingebettete Metadaten füllt nur ein Feld der obersten Ebene der Asset-Sammlung.',\n 'cms.issueMessage.sourceTypeMismatch': 'Das Feld „{field}“ deklariert die Quelle „{source}“, die kein Feld vom Typ „{type}“ füllen kann (jede Quelle füllt Text; iptc:digitalSourceType auch einen Wahrheitswert).',\n 'cms.issueMessage.uniqueNotTopLevel': 'Das Unterfeld „{field}“ deklariert „unique“ — Eindeutigkeit wird über die Dokumente einer Sammlung hinweg beurteilt und gilt daher nur für Felder auf oberster Ebene.',\n 'cms.issueMessage.localizedOnProp': 'Die Komponenten-Eigenschaft „{field}“ deklariert „localized“ — ein sprachabhängiger Wert wird je Sprache im Dokument gespeichert, daher kann nur ein Dokumentfeld auf oberster Ebene sprachabhängig sein (machen Sie das Feld sprachabhängig, das die Komposition enthält).',\n 'cms.issueMessage.localizedOnSubField': 'Das Unterfeld „{field}“ deklariert „localized“ — ein sprachabhängiger Wert wird je Sprache im Dokument gespeichert, daher kann nur ein Feld auf oberster Ebene sprachabhängig sein (machen Sie das Feld sprachabhängig, das es enthält).',\n 'cms.issueMessage.ruleNotApplicable': 'Das Feld „{field}“ deklariert „{rule}“, was ein Feld vom Typ „{type}“ nicht einhalten kann.',\n 'cms.issueMessage.ruleNotApplicableUnlessMultiple': 'Das Feld „{field}“ deklariert „{rule}“, was ein einzelnes Feld vom Typ „{type}“ nicht einhalten kann — bei einem „multiple“-Feld zählt es Einträge.',\n 'cms.issueMessage.boundNotAnInstant': 'Das Feld „{field}“ deklariert {rule} {declared} für ein Datumsfeld, was kein Datum ist — verwenden Sie einen ISO-8601-String wie „1900-01-01“.',\n 'cms.issueMessage.boundNotANumber': 'Das Feld „{field}“ deklariert {rule} {declared} als String — die Grenzen eines Felds vom Typ „{type}“ sind Zahlen (nur ein Datumsfeld nimmt ein ISO-Datum als Grenze).',\n 'cms.issueMessage.invalidPattern': 'Das Feld „{field}“ deklariert das Muster „{pattern}“, das kein gültiger regulärer Ausdruck ist.',\n 'cms.issueMessage.defaultNotOfType': 'Das Feld „{field}“ deklariert den Standardwert {value}, der kein Wert vom Typ „{type}“ ist.',\n 'cms.issueDetail.fewerPlainTextCharacters': 'hat weniger als {min} Zeichen Klartext',\n 'cms.issueDetail.morePlainTextCharacters': 'hat mehr als {max} Zeichen Klartext',\n 'content.queryError.operatorNotForType': 'Der Operator „{operator}“ gilt nicht für „{field}“, ein Feld vom Typ „{type}“.',\n 'content.queryError.operandType': 'Der Operator „{operator}“ auf „{field}“ erhielt {value}, was kein {operand}-Wert ist — „{field}“ ist ein Feld vom Typ „{type}“.',\n}\n"]}
|