feat(extension): rendu Markdown dans la prévisualisation + zone agrandie v0.4.3
Avant : renderConfirm() échappait le résumé et l'extrait avec escapeHtml(), donc les **gras**, *italique*, [liens](), listes, titres du Markdown produit par l'IA s'affichaient en texte brut (littéral « **gras** »). Maintenant : renderMarkdownSafe() parse le Markdown en HTML limité et sûr (escapeHtml d'abord, puis regex sur le texte échappé — pas de HTML brut autorisé). + Refonte du panneau de prévisualisation : - .preview-block avec header sticky (label Résumé / Extrait) - .excerpt-block : min-height 180px, max-height 360px, scroll si long - .summary-block : fond bleuté léger, bordure gauche sky - markdown-h3/h4/h5 stylés (serif pour titres), strong/em/code/ul/a - Polices 14px, line-height 1.7, word-break pour texte long + Nouvelle clé i18n summaryLabel dans les 15 locales. + Version 0.4.2 → 0.4.3.
This commit is contained in:
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "إغلاق"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "ملخص"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"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.4.2"
|
||||
"message": "Memento Web Clipper 0.4.3"
|
||||
},
|
||||
"errPermissionDenied": {
|
||||
"message": "Memento kann nicht auf diese Registerkarte zugreifen. Überprüfen Sie die Tastatur-/Site-Erweiterungsberechtigungen – oder öffnen Sie den Seitenbereich."
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Schließen"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Zusammenfassung"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"message": "Paste the HTTPS (or LAN) URL of your Memento server. Cookies in this browser handle sign-in."
|
||||
},
|
||||
"footerVersion": {
|
||||
"message": "Memento Web Clipper 0.4.2"
|
||||
"message": "Memento Web Clipper 0.4.3"
|
||||
},
|
||||
"errPermissionDenied": {
|
||||
"message": "Memento can't access this tab. Check keyboard/site extension permissions — or open the Side Panel."
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Dismiss"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Summary"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Cerrar"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Resumen"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"message": "URL HTTPS (یا LAN) سرور Memento خود را جایگذاری کنید. کوکیهای این مرورگر ورود به سیستم را کنترل میکنند."
|
||||
},
|
||||
"footerVersion": {
|
||||
"message": "Memento Web Clipper 0.4.2"
|
||||
"message": "Memento Web Clipper 0.4.3"
|
||||
},
|
||||
"errPermissionDenied": {
|
||||
"message": "Memento نمی تواند به این برگه دسترسی پیدا کند. مجوزهای افزونه صفحه کلید/سایت را بررسی کنید - یا پانل جانبی را باز کنید."
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "بستن"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "خلاصه"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"message": "Collez l'URL HTTPS (ou LAN) de votre serveur Memento. Les cookies de ce navigateur gèrent la connexion."
|
||||
},
|
||||
"footerVersion": {
|
||||
"message": "Memento Web Clipper 0.4.2"
|
||||
"message": "Memento Web Clipper 0.4.3"
|
||||
},
|
||||
"errPermissionDenied": {
|
||||
"message": "Memento ne peut pas accéder à cet onglet. Vérifiez les autorisations du clavier/extension de site – ou ouvrez le panneau latéral."
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Ignorer"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Résumé"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "बंद करें"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "सारांश"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Chiudi"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Riepilogo"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "閉じる"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "要約"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "닫기"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "요약"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Sluiten"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Samenvatting"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Zamknij"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Streszczenie"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Fechar"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Resumo"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Закрыть"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Сводка"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "关闭"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "摘要"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "إغلاق"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "ملخص"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"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.4.2"
|
||||
"message": "Memento Web Clipper 0.4.3"
|
||||
},
|
||||
"errPermissionDenied": {
|
||||
"message": "Memento kann nicht auf diese Registerkarte zugreifen. Überprüfen Sie die Tastatur-/Site-Erweiterungsberechtigungen – oder öffnen Sie den Seitenbereich."
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Schließen"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Zusammenfassung"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"message": "Paste the HTTPS (or LAN) URL of your Memento server. Cookies in this browser handle sign-in."
|
||||
},
|
||||
"footerVersion": {
|
||||
"message": "Memento Web Clipper 0.4.2"
|
||||
"message": "Memento Web Clipper 0.4.3"
|
||||
},
|
||||
"errPermissionDenied": {
|
||||
"message": "Memento can't access this tab. Check keyboard/site extension permissions — or open the Side Panel."
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Dismiss"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Summary"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Cerrar"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Resumen"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"message": "URL HTTPS (یا LAN) سرور Memento خود را جایگذاری کنید. کوکیهای این مرورگر ورود به سیستم را کنترل میکنند."
|
||||
},
|
||||
"footerVersion": {
|
||||
"message": "Memento Web Clipper 0.4.2"
|
||||
"message": "Memento Web Clipper 0.4.3"
|
||||
},
|
||||
"errPermissionDenied": {
|
||||
"message": "Memento نمی تواند به این برگه دسترسی پیدا کند. مجوزهای افزونه صفحه کلید/سایت را بررسی کنید - یا پانل جانبی را باز کنید."
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "بستن"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "خلاصه"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"message": "Collez l'URL HTTPS (ou LAN) de votre serveur Memento. Les cookies de ce navigateur gèrent la connexion."
|
||||
},
|
||||
"footerVersion": {
|
||||
"message": "Memento Web Clipper 0.4.2"
|
||||
"message": "Memento Web Clipper 0.4.3"
|
||||
},
|
||||
"errPermissionDenied": {
|
||||
"message": "Memento ne peut pas accéder à cet onglet. Vérifiez les autorisations du clavier/extension de site – ou ouvrez le panneau latéral."
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Ignorer"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Résumé"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "बंद करें"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "सारांश"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Chiudi"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Riepilogo"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "閉じる"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "要約"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "닫기"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "요약"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Sluiten"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Samenvatting"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Zamknij"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Streszczenie"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Fechar"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Resumo"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Закрыть"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Сводка"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "关闭"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "摘要"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"manifest_version": 3,
|
||||
"name": "__MSG_extName__",
|
||||
"version": "0.4.2",
|
||||
"version": "0.4.3",
|
||||
"description": "__MSG_extDescription__",
|
||||
"default_locale": "en",
|
||||
"permissions": [
|
||||
|
||||
@@ -483,8 +483,96 @@ input[type="text"]:focus,
|
||||
.confirm-panel {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 12px;
|
||||
gap: 14px;
|
||||
}
|
||||
.preview-block {
|
||||
border: 1px solid var(--border);
|
||||
border-radius: var(--radius);
|
||||
background: #fff;
|
||||
overflow: hidden;
|
||||
}
|
||||
.preview-block-head {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
padding: 10px 14px;
|
||||
background: linear-gradient(180deg, #fdfcfa 0%, #faf9f5 100%);
|
||||
border-bottom: 1px solid var(--border);
|
||||
font-size: 10px;
|
||||
font-weight: 800;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.1em;
|
||||
color: var(--muted);
|
||||
}
|
||||
.preview-block-head .dot {
|
||||
width: 7px; height: 7px; border-radius: 50%;
|
||||
background: var(--accent);
|
||||
}
|
||||
.preview-block-head .dot-summary { background: #0284c7; }
|
||||
.preview-block-head .dot-excerpt { background: #a47148; }
|
||||
.preview-block-body {
|
||||
padding: 14px 16px;
|
||||
font-size: 14px;
|
||||
line-height: 1.7;
|
||||
color: rgba(28, 28, 28, 0.92);
|
||||
word-break: break-word;
|
||||
overflow-wrap: anywhere;
|
||||
}
|
||||
.excerpt-block .preview-block-body {
|
||||
min-height: 180px;
|
||||
max-height: 360px;
|
||||
overflow-y: auto;
|
||||
background: #fcfbf9;
|
||||
}
|
||||
.summary-block .preview-block-body {
|
||||
font-style: normal;
|
||||
color: rgba(28, 28, 28, 0.78);
|
||||
background: rgba(2, 132, 199, 0.04);
|
||||
border-left: 3px solid #0ea5e9;
|
||||
padding-inline-start: 18px;
|
||||
}
|
||||
|
||||
/* Markdown rendu dans le side panel */
|
||||
.md { font-size: 14px; line-height: 1.7; }
|
||||
.md p { margin: 0 0 10px; }
|
||||
.md p:last-child { margin-bottom: 0; }
|
||||
.md-h3 {
|
||||
font-size: 16px; font-weight: 700;
|
||||
margin: 14px 0 8px; color: var(--ink);
|
||||
font-family: Georgia, 'Times New Roman', serif;
|
||||
}
|
||||
.md-h4 {
|
||||
font-size: 14px; font-weight: 700;
|
||||
margin: 12px 0 6px; color: var(--ink);
|
||||
font-family: Georgia, 'Times New Roman', serif;
|
||||
}
|
||||
.md-h5 {
|
||||
font-size: 13px; font-weight: 700;
|
||||
margin: 10px 0 4px; color: var(--muted);
|
||||
}
|
||||
.md strong { font-weight: 700; color: var(--ink); }
|
||||
.md em { font-style: italic; }
|
||||
.md a {
|
||||
color: #0284c7;
|
||||
text-decoration: underline;
|
||||
text-decoration-thickness: 1px;
|
||||
text-underline-offset: 2px;
|
||||
}
|
||||
.md a:hover { color: #0369a1; }
|
||||
.md-code {
|
||||
background: rgba(28, 28, 28, 0.06);
|
||||
padding: 1px 5px;
|
||||
border-radius: 4px;
|
||||
font-family: ui-monospace, 'SF Mono', Menlo, monospace;
|
||||
font-size: 12.5px;
|
||||
color: var(--ink);
|
||||
}
|
||||
.md-ul {
|
||||
margin: 8px 0;
|
||||
padding-inline-start: 20px;
|
||||
}
|
||||
.md-ul li { margin: 3px 0; }
|
||||
|
||||
.summary-preview {
|
||||
margin: 0;
|
||||
font-size: 12px;
|
||||
|
||||
@@ -71,6 +71,42 @@ function escapeHtml(s) {
|
||||
.replace(/"/g, '"')
|
||||
}
|
||||
|
||||
/**
|
||||
* Mini-renderer Markdown sûr pour le side panel.
|
||||
* - Échappe d'abord le texte (anti-XSS)
|
||||
* - Applique ensuite les transformations HTML par regex sur le texte échappé
|
||||
* - Supporte : titres, gras, italique, liens, code, listes à puces, sauts de ligne
|
||||
*
|
||||
* Volontairement limité — pas de tableaux imbriqués, pas de HTML brut.
|
||||
*/
|
||||
function renderMarkdownSafe(md) {
|
||||
if (!md) return ''
|
||||
let s = escapeHtml(md)
|
||||
// Liens : [texte](https://url) → <a>
|
||||
s = s.replace(/\[([^\]]+)\]\((https?:\/\/[^\s)]+)\)/g,
|
||||
'<a href="$2" target="_blank" rel="noopener noreferrer">$1</a>')
|
||||
// Titres : ### (avant ## avant #)
|
||||
s = s.replace(/^### (.+)$/gm, '<h5 class="md-h5">$1</h5>')
|
||||
s = s.replace(/^## (.+)$/gm, '<h4 class="md-h4">$1</h4>')
|
||||
s = s.replace(/^# (.+)$/gm, '<h3 class="md-h3">$1</h3>')
|
||||
// Gras (**texte**) puis italique (*texte* ou _texte_)
|
||||
s = s.replace(/\*\*([^*\n]+)\*\*/g, '<strong>$1</strong>')
|
||||
s = s.replace(/(^|[^*])\*([^*\n]+)\*/g, '$1<em>$2</em>')
|
||||
s = s.replace(/(^|\b)_([^_\n]+)_/g, '$1<em>$2</em>')
|
||||
// Code inline `code`
|
||||
s = s.replace(/`([^`\n]+)`/g, '<code class="md-code">$1</code>')
|
||||
// Listes à puces : lignes commençant par - ou *
|
||||
s = s.replace(/^(\s*)[-*]\s+(.+)$/gm, '$1<li>$2</li>')
|
||||
s = s.replace(/(<li>.*<\/li>\n?)+/g, (m) => `<ul class="md-ul">${m}</ul>`)
|
||||
// Sauts de ligne (double = paragraphe)
|
||||
s = s.replace(/\n{2,}/g, '</p><p>')
|
||||
s = s.replace(/\n/g, '<br/>')
|
||||
// Envelopper dans un paragraphe si pas déjà fait
|
||||
if (!s.startsWith('<')) s = `<p>${s}</p>`
|
||||
else if (!/^<(p|h[3-5]|ul|li)/.test(s)) s = `<p>${s}</p>`
|
||||
return s
|
||||
}
|
||||
|
||||
const RTL_CHAR = /[\u0590-\u05FF\u0600-\u06FF\u0700-\u074F\u0750-\u077F\u08A0-\u08FF\uFB50-\uFDFF\uFE70-\uFEFF]/
|
||||
const LTR_CHAR = /[A-Za-z0-9]/
|
||||
|
||||
@@ -491,10 +527,16 @@ function renderLoading(label) {
|
||||
|
||||
function renderConfirm() {
|
||||
const excerpt = analyzeResult?.excerpt || ''
|
||||
const summary = analyzeResult?.summary || ''
|
||||
const tags = analyzeResult?.tags || []
|
||||
const reading = formatReadingTime(analyzeResult?.readingTime)
|
||||
const tagsHtml = tags.map((t) => `<span class="tag-chip">${escapeHtml(t)}</span>`).join('')
|
||||
|
||||
// Le résumé et l'extrait peuvent contenir du Markdown produit par l'IA.
|
||||
// On rend le Markdown en HTML (limité et sûr) au lieu de l'afficher brut.
|
||||
const summaryHtml = summary ? renderMarkdownSafe(summary) : ''
|
||||
const excerptHtml = (excerpt && pendingClipType !== 'link') ? renderMarkdownSafe(excerpt) : ''
|
||||
|
||||
els.screen.innerHTML = `
|
||||
<div class="confirm-panel">
|
||||
<span class="label">${escapeHtml(t('previewBeforeSave'))}</span>
|
||||
@@ -502,25 +544,16 @@ function renderConfirm() {
|
||||
<span>${escapeHtml(t('noteTitleLabel'))}</span>
|
||||
<input id="titleInput" type="text" value="${escapeHtml(editableTitle)}" maxlength="300" />
|
||||
</label>
|
||||
${
|
||||
reading
|
||||
? `<div class="meta-row"><span class="reading-time">${escapeHtml(reading)}</span></div>`
|
||||
: ''
|
||||
}
|
||||
${
|
||||
analyzeResult?.summary
|
||||
? `<p class="summary-preview"${rtlAttrs(analyzeResult.summary)}>${escapeHtml(analyzeResult.summary)}</p>`
|
||||
: ''
|
||||
}
|
||||
${
|
||||
excerpt && pendingClipType !== 'link'
|
||||
? `<div class="excerpt-preview"${rtlAttrs(excerpt)}>
|
||||
<span class="excerpt-label">${escapeHtml(t('excerptLabel'))}</span>
|
||||
${escapeHtml(excerpt)}
|
||||
</div>`
|
||||
: ''
|
||||
}
|
||||
${reading ? `<div class="meta-row"><span class="reading-time">${escapeHtml(reading)}</span></div>` : ''}
|
||||
${tagsHtml ? `<div class="tags preview-tags">${tagsHtml}</div>` : ''}
|
||||
${summaryHtml ? `<section class="preview-block summary-block"${rtlAttrs(summary)}>
|
||||
<header class="preview-block-head"><span class="dot dot-summary"></span>${escapeHtml(t('summaryLabel') || 'Résumé')}</header>
|
||||
<div class="preview-block-body md">${summaryHtml}</div>
|
||||
</section>` : ''}
|
||||
${excerptHtml ? `<section class="preview-block excerpt-block"${rtlAttrs(excerpt)}>
|
||||
<header class="preview-block-head"><span class="dot dot-excerpt"></span>${escapeHtml(t('excerptLabel'))}</header>
|
||||
<div class="preview-block-body md md-excerpt">${excerptHtml}</div>
|
||||
</section>` : ''}
|
||||
</div>
|
||||
<div class="actions">
|
||||
<button type="button" class="btn btn-primary" id="saveBtn">${escapeHtml(t('saveToMomento'))}</button>
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "إغلاق"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "ملخص"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"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.4.2"
|
||||
"message": "Memento Web Clipper 0.4.3"
|
||||
},
|
||||
"errPermissionDenied": {
|
||||
"message": "Memento kann nicht auf diese Registerkarte zugreifen. Überprüfen Sie die Tastatur-/Site-Erweiterungsberechtigungen – oder öffnen Sie den Seitenbereich."
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Schließen"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Zusammenfassung"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"message": "Paste the HTTPS (or LAN) URL of your Memento server. Cookies in this browser handle sign-in."
|
||||
},
|
||||
"footerVersion": {
|
||||
"message": "Memento Web Clipper 0.4.2"
|
||||
"message": "Memento Web Clipper 0.4.3"
|
||||
},
|
||||
"errPermissionDenied": {
|
||||
"message": "Memento can't access this tab. Check keyboard/site extension permissions — or open the Side Panel."
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Dismiss"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Summary"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Cerrar"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Resumen"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"message": "URL HTTPS (یا LAN) سرور Memento خود را جایگذاری کنید. کوکیهای این مرورگر ورود به سیستم را کنترل میکنند."
|
||||
},
|
||||
"footerVersion": {
|
||||
"message": "Memento Web Clipper 0.4.2"
|
||||
"message": "Memento Web Clipper 0.4.3"
|
||||
},
|
||||
"errPermissionDenied": {
|
||||
"message": "Memento نمی تواند به این برگه دسترسی پیدا کند. مجوزهای افزونه صفحه کلید/سایت را بررسی کنید - یا پانل جانبی را باز کنید."
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "بستن"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "خلاصه"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
"message": "Collez l'URL HTTPS (ou LAN) de votre serveur Memento. Les cookies de ce navigateur gèrent la connexion."
|
||||
},
|
||||
"footerVersion": {
|
||||
"message": "Memento Web Clipper 0.4.2"
|
||||
"message": "Memento Web Clipper 0.4.3"
|
||||
},
|
||||
"errPermissionDenied": {
|
||||
"message": "Memento ne peut pas accéder à cet onglet. Vérifiez les autorisations du clavier/extension de site – ou ouvrez le panneau latéral."
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Ignorer"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Résumé"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "बंद करें"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "सारांश"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Chiudi"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Riepilogo"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "閉じる"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "要約"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "닫기"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "요약"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Sluiten"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Samenvatting"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Zamknij"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Streszczenie"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Fechar"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Resumo"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Закрыть"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Сводка"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -189,5 +189,8 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "关闭"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "摘要"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"manifest_version": 3,
|
||||
"name": "__MSG_extName__",
|
||||
"version": "0.4.2",
|
||||
"version": "0.4.3",
|
||||
"description": "__MSG_extDescription__",
|
||||
"default_locale": "en",
|
||||
"permissions": [
|
||||
|
||||
@@ -483,8 +483,96 @@ input[type="text"]:focus,
|
||||
.confirm-panel {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 12px;
|
||||
gap: 14px;
|
||||
}
|
||||
.preview-block {
|
||||
border: 1px solid var(--border);
|
||||
border-radius: var(--radius);
|
||||
background: #fff;
|
||||
overflow: hidden;
|
||||
}
|
||||
.preview-block-head {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
padding: 10px 14px;
|
||||
background: linear-gradient(180deg, #fdfcfa 0%, #faf9f5 100%);
|
||||
border-bottom: 1px solid var(--border);
|
||||
font-size: 10px;
|
||||
font-weight: 800;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.1em;
|
||||
color: var(--muted);
|
||||
}
|
||||
.preview-block-head .dot {
|
||||
width: 7px; height: 7px; border-radius: 50%;
|
||||
background: var(--accent);
|
||||
}
|
||||
.preview-block-head .dot-summary { background: #0284c7; }
|
||||
.preview-block-head .dot-excerpt { background: #a47148; }
|
||||
.preview-block-body {
|
||||
padding: 14px 16px;
|
||||
font-size: 14px;
|
||||
line-height: 1.7;
|
||||
color: rgba(28, 28, 28, 0.92);
|
||||
word-break: break-word;
|
||||
overflow-wrap: anywhere;
|
||||
}
|
||||
.excerpt-block .preview-block-body {
|
||||
min-height: 180px;
|
||||
max-height: 360px;
|
||||
overflow-y: auto;
|
||||
background: #fcfbf9;
|
||||
}
|
||||
.summary-block .preview-block-body {
|
||||
font-style: normal;
|
||||
color: rgba(28, 28, 28, 0.78);
|
||||
background: rgba(2, 132, 199, 0.04);
|
||||
border-left: 3px solid #0ea5e9;
|
||||
padding-inline-start: 18px;
|
||||
}
|
||||
|
||||
/* Markdown rendu dans le side panel */
|
||||
.md { font-size: 14px; line-height: 1.7; }
|
||||
.md p { margin: 0 0 10px; }
|
||||
.md p:last-child { margin-bottom: 0; }
|
||||
.md-h3 {
|
||||
font-size: 16px; font-weight: 700;
|
||||
margin: 14px 0 8px; color: var(--ink);
|
||||
font-family: Georgia, 'Times New Roman', serif;
|
||||
}
|
||||
.md-h4 {
|
||||
font-size: 14px; font-weight: 700;
|
||||
margin: 12px 0 6px; color: var(--ink);
|
||||
font-family: Georgia, 'Times New Roman', serif;
|
||||
}
|
||||
.md-h5 {
|
||||
font-size: 13px; font-weight: 700;
|
||||
margin: 10px 0 4px; color: var(--muted);
|
||||
}
|
||||
.md strong { font-weight: 700; color: var(--ink); }
|
||||
.md em { font-style: italic; }
|
||||
.md a {
|
||||
color: #0284c7;
|
||||
text-decoration: underline;
|
||||
text-decoration-thickness: 1px;
|
||||
text-underline-offset: 2px;
|
||||
}
|
||||
.md a:hover { color: #0369a1; }
|
||||
.md-code {
|
||||
background: rgba(28, 28, 28, 0.06);
|
||||
padding: 1px 5px;
|
||||
border-radius: 4px;
|
||||
font-family: ui-monospace, 'SF Mono', Menlo, monospace;
|
||||
font-size: 12.5px;
|
||||
color: var(--ink);
|
||||
}
|
||||
.md-ul {
|
||||
margin: 8px 0;
|
||||
padding-inline-start: 20px;
|
||||
}
|
||||
.md-ul li { margin: 3px 0; }
|
||||
|
||||
.summary-preview {
|
||||
margin: 0;
|
||||
font-size: 12px;
|
||||
|
||||
@@ -71,6 +71,42 @@ function escapeHtml(s) {
|
||||
.replace(/"/g, '"')
|
||||
}
|
||||
|
||||
/**
|
||||
* Mini-renderer Markdown sûr pour le side panel.
|
||||
* - Échappe d'abord le texte (anti-XSS)
|
||||
* - Applique ensuite les transformations HTML par regex sur le texte échappé
|
||||
* - Supporte : titres, gras, italique, liens, code, listes à puces, sauts de ligne
|
||||
*
|
||||
* Volontairement limité — pas de tableaux imbriqués, pas de HTML brut.
|
||||
*/
|
||||
function renderMarkdownSafe(md) {
|
||||
if (!md) return ''
|
||||
let s = escapeHtml(md)
|
||||
// Liens : [texte](https://url) → <a>
|
||||
s = s.replace(/\[([^\]]+)\]\((https?:\/\/[^\s)]+)\)/g,
|
||||
'<a href="$2" target="_blank" rel="noopener noreferrer">$1</a>')
|
||||
// Titres : ### (avant ## avant #)
|
||||
s = s.replace(/^### (.+)$/gm, '<h5 class="md-h5">$1</h5>')
|
||||
s = s.replace(/^## (.+)$/gm, '<h4 class="md-h4">$1</h4>')
|
||||
s = s.replace(/^# (.+)$/gm, '<h3 class="md-h3">$1</h3>')
|
||||
// Gras (**texte**) puis italique (*texte* ou _texte_)
|
||||
s = s.replace(/\*\*([^*\n]+)\*\*/g, '<strong>$1</strong>')
|
||||
s = s.replace(/(^|[^*])\*([^*\n]+)\*/g, '$1<em>$2</em>')
|
||||
s = s.replace(/(^|\b)_([^_\n]+)_/g, '$1<em>$2</em>')
|
||||
// Code inline `code`
|
||||
s = s.replace(/`([^`\n]+)`/g, '<code class="md-code">$1</code>')
|
||||
// Listes à puces : lignes commençant par - ou *
|
||||
s = s.replace(/^(\s*)[-*]\s+(.+)$/gm, '$1<li>$2</li>')
|
||||
s = s.replace(/(<li>.*<\/li>\n?)+/g, (m) => `<ul class="md-ul">${m}</ul>`)
|
||||
// Sauts de ligne (double = paragraphe)
|
||||
s = s.replace(/\n{2,}/g, '</p><p>')
|
||||
s = s.replace(/\n/g, '<br/>')
|
||||
// Envelopper dans un paragraphe si pas déjà fait
|
||||
if (!s.startsWith('<')) s = `<p>${s}</p>`
|
||||
else if (!/^<(p|h[3-5]|ul|li)/.test(s)) s = `<p>${s}</p>`
|
||||
return s
|
||||
}
|
||||
|
||||
const RTL_CHAR = /[\u0590-\u05FF\u0600-\u06FF\u0700-\u074F\u0750-\u077F\u08A0-\u08FF\uFB50-\uFDFF\uFE70-\uFEFF]/
|
||||
const LTR_CHAR = /[A-Za-z0-9]/
|
||||
|
||||
@@ -491,10 +527,16 @@ function renderLoading(label) {
|
||||
|
||||
function renderConfirm() {
|
||||
const excerpt = analyzeResult?.excerpt || ''
|
||||
const summary = analyzeResult?.summary || ''
|
||||
const tags = analyzeResult?.tags || []
|
||||
const reading = formatReadingTime(analyzeResult?.readingTime)
|
||||
const tagsHtml = tags.map((t) => `<span class="tag-chip">${escapeHtml(t)}</span>`).join('')
|
||||
|
||||
// Le résumé et l'extrait peuvent contenir du Markdown produit par l'IA.
|
||||
// On rend le Markdown en HTML (limité et sûr) au lieu de l'afficher brut.
|
||||
const summaryHtml = summary ? renderMarkdownSafe(summary) : ''
|
||||
const excerptHtml = (excerpt && pendingClipType !== 'link') ? renderMarkdownSafe(excerpt) : ''
|
||||
|
||||
els.screen.innerHTML = `
|
||||
<div class="confirm-panel">
|
||||
<span class="label">${escapeHtml(t('previewBeforeSave'))}</span>
|
||||
@@ -502,25 +544,16 @@ function renderConfirm() {
|
||||
<span>${escapeHtml(t('noteTitleLabel'))}</span>
|
||||
<input id="titleInput" type="text" value="${escapeHtml(editableTitle)}" maxlength="300" />
|
||||
</label>
|
||||
${
|
||||
reading
|
||||
? `<div class="meta-row"><span class="reading-time">${escapeHtml(reading)}</span></div>`
|
||||
: ''
|
||||
}
|
||||
${
|
||||
analyzeResult?.summary
|
||||
? `<p class="summary-preview"${rtlAttrs(analyzeResult.summary)}>${escapeHtml(analyzeResult.summary)}</p>`
|
||||
: ''
|
||||
}
|
||||
${
|
||||
excerpt && pendingClipType !== 'link'
|
||||
? `<div class="excerpt-preview"${rtlAttrs(excerpt)}>
|
||||
<span class="excerpt-label">${escapeHtml(t('excerptLabel'))}</span>
|
||||
${escapeHtml(excerpt)}
|
||||
</div>`
|
||||
: ''
|
||||
}
|
||||
${reading ? `<div class="meta-row"><span class="reading-time">${escapeHtml(reading)}</span></div>` : ''}
|
||||
${tagsHtml ? `<div class="tags preview-tags">${tagsHtml}</div>` : ''}
|
||||
${summaryHtml ? `<section class="preview-block summary-block"${rtlAttrs(summary)}>
|
||||
<header class="preview-block-head"><span class="dot dot-summary"></span>${escapeHtml(t('summaryLabel') || 'Résumé')}</header>
|
||||
<div class="preview-block-body md">${summaryHtml}</div>
|
||||
</section>` : ''}
|
||||
${excerptHtml ? `<section class="preview-block excerpt-block"${rtlAttrs(excerpt)}>
|
||||
<header class="preview-block-head"><span class="dot dot-excerpt"></span>${escapeHtml(t('excerptLabel'))}</header>
|
||||
<div class="preview-block-body md md-excerpt">${excerptHtml}</div>
|
||||
</section>` : ''}
|
||||
</div>
|
||||
<div class="actions">
|
||||
<button type="button" class="btn btn-primary" id="saveBtn">${escapeHtml(t('saveToMomento'))}</button>
|
||||
|
||||
@@ -13,275 +13,277 @@ const VERSION = "0.4.0"
|
||||
// post-edited with placeholder hardening.
|
||||
|
||||
const PACK_B64 = `
|
||||
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
|
||||
`
|
||||
|
||||
function loadStrings () {
|
||||
|
||||
@@ -192,6 +192,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Dismiss"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Summary"
|
||||
}
|
||||
},
|
||||
"fr": {
|
||||
@@ -385,6 +388,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Ignorer"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Résumé"
|
||||
}
|
||||
},
|
||||
"de": {
|
||||
@@ -578,6 +584,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Schließen"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Zusammenfassung"
|
||||
}
|
||||
},
|
||||
"es": {
|
||||
@@ -771,6 +780,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Cerrar"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Resumen"
|
||||
}
|
||||
},
|
||||
"it": {
|
||||
@@ -964,6 +976,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Chiudi"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Riepilogo"
|
||||
}
|
||||
},
|
||||
"pt": {
|
||||
@@ -1157,6 +1172,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Fechar"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Resumo"
|
||||
}
|
||||
},
|
||||
"nl": {
|
||||
@@ -1350,6 +1368,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Sluiten"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Samenvatting"
|
||||
}
|
||||
},
|
||||
"pl": {
|
||||
@@ -1543,6 +1564,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Zamknij"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Streszczenie"
|
||||
}
|
||||
},
|
||||
"ru": {
|
||||
@@ -1736,6 +1760,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "Закрыть"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "Сводка"
|
||||
}
|
||||
},
|
||||
"zh": {
|
||||
@@ -1929,6 +1956,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "关闭"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "摘要"
|
||||
}
|
||||
},
|
||||
"ja": {
|
||||
@@ -2122,6 +2152,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "閉じる"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "要約"
|
||||
}
|
||||
},
|
||||
"ko": {
|
||||
@@ -2315,6 +2348,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "닫기"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "요약"
|
||||
}
|
||||
},
|
||||
"ar": {
|
||||
@@ -2508,6 +2544,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "إغلاق"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "ملخص"
|
||||
}
|
||||
},
|
||||
"fa": {
|
||||
@@ -2701,6 +2740,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "بستن"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "خلاصه"
|
||||
}
|
||||
},
|
||||
"hi": {
|
||||
@@ -2894,6 +2936,9 @@
|
||||
},
|
||||
"bannerDismiss": {
|
||||
"message": "बंद करें"
|
||||
},
|
||||
"summaryLabel": {
|
||||
"message": "सारांश"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"manifest_version": 3,
|
||||
"name": "__MSG_extName__",
|
||||
"version": "0.4.2",
|
||||
"version": "0.4.3",
|
||||
"description": "__MSG_extDescription__",
|
||||
"default_locale": "en",
|
||||
"permissions": [
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -483,8 +483,96 @@ input[type="text"]:focus,
|
||||
.confirm-panel {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 12px;
|
||||
gap: 14px;
|
||||
}
|
||||
.preview-block {
|
||||
border: 1px solid var(--border);
|
||||
border-radius: var(--radius);
|
||||
background: #fff;
|
||||
overflow: hidden;
|
||||
}
|
||||
.preview-block-head {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 8px;
|
||||
padding: 10px 14px;
|
||||
background: linear-gradient(180deg, #fdfcfa 0%, #faf9f5 100%);
|
||||
border-bottom: 1px solid var(--border);
|
||||
font-size: 10px;
|
||||
font-weight: 800;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.1em;
|
||||
color: var(--muted);
|
||||
}
|
||||
.preview-block-head .dot {
|
||||
width: 7px; height: 7px; border-radius: 50%;
|
||||
background: var(--accent);
|
||||
}
|
||||
.preview-block-head .dot-summary { background: #0284c7; }
|
||||
.preview-block-head .dot-excerpt { background: #a47148; }
|
||||
.preview-block-body {
|
||||
padding: 14px 16px;
|
||||
font-size: 14px;
|
||||
line-height: 1.7;
|
||||
color: rgba(28, 28, 28, 0.92);
|
||||
word-break: break-word;
|
||||
overflow-wrap: anywhere;
|
||||
}
|
||||
.excerpt-block .preview-block-body {
|
||||
min-height: 180px;
|
||||
max-height: 360px;
|
||||
overflow-y: auto;
|
||||
background: #fcfbf9;
|
||||
}
|
||||
.summary-block .preview-block-body {
|
||||
font-style: normal;
|
||||
color: rgba(28, 28, 28, 0.78);
|
||||
background: rgba(2, 132, 199, 0.04);
|
||||
border-left: 3px solid #0ea5e9;
|
||||
padding-inline-start: 18px;
|
||||
}
|
||||
|
||||
/* Markdown rendu dans le side panel */
|
||||
.md { font-size: 14px; line-height: 1.7; }
|
||||
.md p { margin: 0 0 10px; }
|
||||
.md p:last-child { margin-bottom: 0; }
|
||||
.md-h3 {
|
||||
font-size: 16px; font-weight: 700;
|
||||
margin: 14px 0 8px; color: var(--ink);
|
||||
font-family: Georgia, 'Times New Roman', serif;
|
||||
}
|
||||
.md-h4 {
|
||||
font-size: 14px; font-weight: 700;
|
||||
margin: 12px 0 6px; color: var(--ink);
|
||||
font-family: Georgia, 'Times New Roman', serif;
|
||||
}
|
||||
.md-h5 {
|
||||
font-size: 13px; font-weight: 700;
|
||||
margin: 10px 0 4px; color: var(--muted);
|
||||
}
|
||||
.md strong { font-weight: 700; color: var(--ink); }
|
||||
.md em { font-style: italic; }
|
||||
.md a {
|
||||
color: #0284c7;
|
||||
text-decoration: underline;
|
||||
text-decoration-thickness: 1px;
|
||||
text-underline-offset: 2px;
|
||||
}
|
||||
.md a:hover { color: #0369a1; }
|
||||
.md-code {
|
||||
background: rgba(28, 28, 28, 0.06);
|
||||
padding: 1px 5px;
|
||||
border-radius: 4px;
|
||||
font-family: ui-monospace, 'SF Mono', Menlo, monospace;
|
||||
font-size: 12.5px;
|
||||
color: var(--ink);
|
||||
}
|
||||
.md-ul {
|
||||
margin: 8px 0;
|
||||
padding-inline-start: 20px;
|
||||
}
|
||||
.md-ul li { margin: 3px 0; }
|
||||
|
||||
.summary-preview {
|
||||
margin: 0;
|
||||
font-size: 12px;
|
||||
|
||||
@@ -71,6 +71,42 @@ function escapeHtml(s) {
|
||||
.replace(/"/g, '"')
|
||||
}
|
||||
|
||||
/**
|
||||
* Mini-renderer Markdown sûr pour le side panel.
|
||||
* - Échappe d'abord le texte (anti-XSS)
|
||||
* - Applique ensuite les transformations HTML par regex sur le texte échappé
|
||||
* - Supporte : titres, gras, italique, liens, code, listes à puces, sauts de ligne
|
||||
*
|
||||
* Volontairement limité — pas de tableaux imbriqués, pas de HTML brut.
|
||||
*/
|
||||
function renderMarkdownSafe(md) {
|
||||
if (!md) return ''
|
||||
let s = escapeHtml(md)
|
||||
// Liens : [texte](https://url) → <a>
|
||||
s = s.replace(/\[([^\]]+)\]\((https?:\/\/[^\s)]+)\)/g,
|
||||
'<a href="$2" target="_blank" rel="noopener noreferrer">$1</a>')
|
||||
// Titres : ### (avant ## avant #)
|
||||
s = s.replace(/^### (.+)$/gm, '<h5 class="md-h5">$1</h5>')
|
||||
s = s.replace(/^## (.+)$/gm, '<h4 class="md-h4">$1</h4>')
|
||||
s = s.replace(/^# (.+)$/gm, '<h3 class="md-h3">$1</h3>')
|
||||
// Gras (**texte**) puis italique (*texte* ou _texte_)
|
||||
s = s.replace(/\*\*([^*\n]+)\*\*/g, '<strong>$1</strong>')
|
||||
s = s.replace(/(^|[^*])\*([^*\n]+)\*/g, '$1<em>$2</em>')
|
||||
s = s.replace(/(^|\b)_([^_\n]+)_/g, '$1<em>$2</em>')
|
||||
// Code inline `code`
|
||||
s = s.replace(/`([^`\n]+)`/g, '<code class="md-code">$1</code>')
|
||||
// Listes à puces : lignes commençant par - ou *
|
||||
s = s.replace(/^(\s*)[-*]\s+(.+)$/gm, '$1<li>$2</li>')
|
||||
s = s.replace(/(<li>.*<\/li>\n?)+/g, (m) => `<ul class="md-ul">${m}</ul>`)
|
||||
// Sauts de ligne (double = paragraphe)
|
||||
s = s.replace(/\n{2,}/g, '</p><p>')
|
||||
s = s.replace(/\n/g, '<br/>')
|
||||
// Envelopper dans un paragraphe si pas déjà fait
|
||||
if (!s.startsWith('<')) s = `<p>${s}</p>`
|
||||
else if (!/^<(p|h[3-5]|ul|li)/.test(s)) s = `<p>${s}</p>`
|
||||
return s
|
||||
}
|
||||
|
||||
const RTL_CHAR = /[\u0590-\u05FF\u0600-\u06FF\u0700-\u074F\u0750-\u077F\u08A0-\u08FF\uFB50-\uFDFF\uFE70-\uFEFF]/
|
||||
const LTR_CHAR = /[A-Za-z0-9]/
|
||||
|
||||
@@ -491,10 +527,16 @@ function renderLoading(label) {
|
||||
|
||||
function renderConfirm() {
|
||||
const excerpt = analyzeResult?.excerpt || ''
|
||||
const summary = analyzeResult?.summary || ''
|
||||
const tags = analyzeResult?.tags || []
|
||||
const reading = formatReadingTime(analyzeResult?.readingTime)
|
||||
const tagsHtml = tags.map((t) => `<span class="tag-chip">${escapeHtml(t)}</span>`).join('')
|
||||
|
||||
// Le résumé et l'extrait peuvent contenir du Markdown produit par l'IA.
|
||||
// On rend le Markdown en HTML (limité et sûr) au lieu de l'afficher brut.
|
||||
const summaryHtml = summary ? renderMarkdownSafe(summary) : ''
|
||||
const excerptHtml = (excerpt && pendingClipType !== 'link') ? renderMarkdownSafe(excerpt) : ''
|
||||
|
||||
els.screen.innerHTML = `
|
||||
<div class="confirm-panel">
|
||||
<span class="label">${escapeHtml(t('previewBeforeSave'))}</span>
|
||||
@@ -502,25 +544,16 @@ function renderConfirm() {
|
||||
<span>${escapeHtml(t('noteTitleLabel'))}</span>
|
||||
<input id="titleInput" type="text" value="${escapeHtml(editableTitle)}" maxlength="300" />
|
||||
</label>
|
||||
${
|
||||
reading
|
||||
? `<div class="meta-row"><span class="reading-time">${escapeHtml(reading)}</span></div>`
|
||||
: ''
|
||||
}
|
||||
${
|
||||
analyzeResult?.summary
|
||||
? `<p class="summary-preview"${rtlAttrs(analyzeResult.summary)}>${escapeHtml(analyzeResult.summary)}</p>`
|
||||
: ''
|
||||
}
|
||||
${
|
||||
excerpt && pendingClipType !== 'link'
|
||||
? `<div class="excerpt-preview"${rtlAttrs(excerpt)}>
|
||||
<span class="excerpt-label">${escapeHtml(t('excerptLabel'))}</span>
|
||||
${escapeHtml(excerpt)}
|
||||
</div>`
|
||||
: ''
|
||||
}
|
||||
${reading ? `<div class="meta-row"><span class="reading-time">${escapeHtml(reading)}</span></div>` : ''}
|
||||
${tagsHtml ? `<div class="tags preview-tags">${tagsHtml}</div>` : ''}
|
||||
${summaryHtml ? `<section class="preview-block summary-block"${rtlAttrs(summary)}>
|
||||
<header class="preview-block-head"><span class="dot dot-summary"></span>${escapeHtml(t('summaryLabel') || 'Résumé')}</header>
|
||||
<div class="preview-block-body md">${summaryHtml}</div>
|
||||
</section>` : ''}
|
||||
${excerptHtml ? `<section class="preview-block excerpt-block"${rtlAttrs(excerpt)}>
|
||||
<header class="preview-block-head"><span class="dot dot-excerpt"></span>${escapeHtml(t('excerptLabel'))}</header>
|
||||
<div class="preview-block-body md md-excerpt">${excerptHtml}</div>
|
||||
</section>` : ''}
|
||||
</div>
|
||||
<div class="actions">
|
||||
<button type="button" class="btn btn-primary" id="saveBtn">${escapeHtml(t('saveToMomento'))}</button>
|
||||
|
||||
Reference in New Issue
Block a user