Publication IA: - 4 templates (magazine, brief, essay, simple) avec CSS riche - Rewrite IA (article/exercises/tutorial/reference/mixed) - Modération avec timeout 12s + fallback safe - Quotas publish_enhance par tier (basic=2, pro=15, business=100) - Détection contenu stale (hash) - Migration DB publishedContent/publishedTemplate/publishedSourceHash Fixes: - cheerio v1.2: Element -> AnyNode (domhandler), decodeEntities cast - _isShared ajouté au type Note (champ virtuel serveur) - callout colors PDF export: extraction fonction pure testable - admin/published: guard note.userId null - Cmd+S fonctionne en mode dialog (pas seulement fullPage) i18n: - 23 clés publish* traduites dans les 15 locales - Extension Web Clipper: 13 locales mise à jour Tests: - callout-colors.test.ts (6 tests) - note-visible-in-view.test.ts (5 tests) - entitlements.test.ts + byok-entitlements.test.ts: mock usageLog + unstubAllEnvs - 199/199 tests passent Tracker: user-stories.md sync avec sprint-status.yaml
183 lines
4.6 KiB
JSON
183 lines
4.6 KiB
JSON
{
|
||
"extName": {
|
||
"message": "Memento Web Clipper"
|
||
},
|
||
"extDescription": {
|
||
"message": "Erfassen Sie Webseiten und hervorgehobenen Text in Ihren Memento-Notizbüchern – stellt eine Verbindung zu Ihrem eigenen Memento-Server her."
|
||
},
|
||
"extActionTitle": {
|
||
"message": "Clip auf Memento"
|
||
},
|
||
"webClipper": {
|
||
"message": "Web Clipper"
|
||
},
|
||
"connected": {
|
||
"message": "Verbunden"
|
||
},
|
||
"disconnected": {
|
||
"message": "Nicht verbunden"
|
||
},
|
||
"instanceSettings": {
|
||
"message": "Memento-URL"
|
||
},
|
||
"instanceUrlLabel": {
|
||
"message": "Ihre Memento-Instanz-URL"
|
||
},
|
||
"presetProduction": {
|
||
"message": "Produktionsvoreinstellung · memento-note.com"
|
||
},
|
||
"applyReconnect": {
|
||
"message": "Anwenden und erneut verbinden"
|
||
},
|
||
"openMomento": {
|
||
"message": "Öffnen Sie Memento"
|
||
},
|
||
"settingsHint": {
|
||
"message": "Fügen Sie die HTTPS- (oder LAN-)URL Ihres Memento-Servers ein. Cookies in diesem Browser verarbeiten die Anmeldung."
|
||
},
|
||
"footerVersion": {
|
||
"message": "Memento Web Clipper 0.3.1"
|
||
},
|
||
"errPermissionDenied": {
|
||
"message": "Memento kann nicht auf diese Registerkarte zugreifen. Überprüfen Sie die Tastatur-/Site-Erweiterungsberechtigungen – oder öffnen Sie den Seitenbereich."
|
||
},
|
||
"notebookUnnamed": {
|
||
"message": "Notizbuch ohne Titel"
|
||
},
|
||
"noNotebooks": {
|
||
"message": "Noch keine Notizbücher"
|
||
},
|
||
"readingTimeOne": {
|
||
"message": "~1 Minute gelesen"
|
||
},
|
||
"readingTimeOther": {
|
||
"message": "Ca. $COUNT$ min. gelesen",
|
||
"placeholders": {
|
||
"COUNT": {
|
||
"content": "$1",
|
||
"example": "5"
|
||
}
|
||
}
|
||
},
|
||
"selectionDetected": {
|
||
"message": "Auswahl erkannt"
|
||
},
|
||
"ignore": {
|
||
"message": "ignorieren"
|
||
},
|
||
"selectionHint": {
|
||
"message": "Tipp: Markieren Sie Text auf der Seite, um eine präzise Auswahl als Notiz auszuschneiden."
|
||
},
|
||
"clipSelection": {
|
||
"message": "Clip-Auswahl"
|
||
},
|
||
"clipPage": {
|
||
"message": "Clip diese Seite aus"
|
||
},
|
||
"saveLinkOnly": {
|
||
"message": "Nur Link speichern"
|
||
},
|
||
"pageNotAccessible": {
|
||
"message": "Hier kann kein Clip erstellt werden – diese Seite blockiert den Zugriff auf die Erweiterung."
|
||
},
|
||
"errLoginRequired": {
|
||
"message": "Bitte melden Sie sich zunächst in diesem Browser bei Memento an."
|
||
},
|
||
"errLoadNotebooks": {
|
||
"message": "Notebooks konnten nicht geladen werden. Versuchen Sie, die Verbindung wiederherzustellen."
|
||
},
|
||
"notebooksLoaded": {
|
||
"message": "Notizbücher geladen"
|
||
},
|
||
"connecting": {
|
||
"message": "Verbinden…"
|
||
},
|
||
"connectedToUrl": {
|
||
"message": "Verbunden mit $URL$",
|
||
"placeholders": {
|
||
"URL": {
|
||
"content": "$1",
|
||
"example": "https://memento-note.com"
|
||
}
|
||
}
|
||
},
|
||
"restrictedPage": {
|
||
"message": "Eingeschränkte Seite – Ausschneiden über die Memento-Symbolleiste oder den Seitenbereich."
|
||
},
|
||
"destinationNotebook": {
|
||
"message": "Zielnotizbuch"
|
||
},
|
||
"activePage": {
|
||
"message": "Aktive Seite"
|
||
},
|
||
"previewBeforeSave": {
|
||
"message": "Vor dem Speichern überprüfen"
|
||
},
|
||
"noteTitleLabel": {
|
||
"message": "Titel"
|
||
},
|
||
"excerptLabel": {
|
||
"message": "Auszug"
|
||
},
|
||
"saveToMomento": {
|
||
"message": "In Memento speichern"
|
||
},
|
||
"back": {
|
||
"message": "Zurück"
|
||
},
|
||
"analyzingSource": {
|
||
"message": "Quelle analysieren"
|
||
},
|
||
"statusAnalyzing": {
|
||
"message": "Analysieren…"
|
||
},
|
||
"statusSaving": {
|
||
"message": "Sparen…"
|
||
},
|
||
"processingDetail": {
|
||
"message": "Generieren von Tags, einer semantischen Zusammenfassung und Einbettungen."
|
||
},
|
||
"noteSaved": {
|
||
"message": "Notiz gespeichert"
|
||
},
|
||
"sentToNotebook": {
|
||
"message": "Gespeichert unter $NOTEBOOK$",
|
||
"placeholders": {
|
||
"NOTEBOOK": {
|
||
"content": "$1",
|
||
"example": "Read later"
|
||
}
|
||
}
|
||
},
|
||
"viewInMomento": {
|
||
"message": "In Memento ansehen"
|
||
},
|
||
"clipAnother": {
|
||
"message": "Schneiden Sie eine weitere Seite aus"
|
||
},
|
||
"failure": {
|
||
"message": "Konnte nicht abgeschlossen werden"
|
||
},
|
||
"genericError": {
|
||
"message": "Beim Erreichen Ihrer Memento-Instanz ist ein Fehler aufgetreten."
|
||
},
|
||
"retry": {
|
||
"message": "Wiederholen"
|
||
},
|
||
"errNoSelection": {
|
||
"message": "Wählen Sie zuerst den Text aus oder schneiden Sie die gesamte Seite aus."
|
||
},
|
||
"errAnalyzeFailed": {
|
||
"message": "Diese Seite konnte nicht analysiert werden."
|
||
},
|
||
"errSaveFailed": {
|
||
"message": "Ihre Notiz konnte nicht gespeichert werden."
|
||
},
|
||
"errNetwork": {
|
||
"message": "Netzwerkproblem – überprüfen Sie Ihre Verbindung und Memento-URL."
|
||
},
|
||
"bannerPickText": {
|
||
"message": "Markieren Sie Text auf der Seite oder schneiden Sie die gesamte Seite aus."
|
||
}
|
||
}
|