fix(extension): bannière visible dès l'injection + exclusion store-assets
Bug réel : la bannière 'Surlignez le texte à clipper' n'apparaissait jamais en pratique parce que le side panel envoyait SET_PICK_MODE avant que le content script ne soit prêt (race condition MV3 entre chrome.scripting.executeScript et la mise en place du listener chrome.runtime.onMessage). Le retry PING dans ensureContentScript ne suffisait pas : le listener sidepanel peut aussi être en retard. Fix radical : content.js affiche la bannière IMMÉDIATEMENT à l'initialisation, sans attendre SET_PICK_MODE. L'utilisateur voit immédiatement que l'extension est active. Un bouton ✕ permet de la fermer (state local au tab). Pas de dépendance sur le side panel pour le feedback visuel. + manifest : retrait de optional_host_permissions (redondant avec host_permissions http://*/* et https://*/*, peut perturber Chrome en dev). + bannière rediseignée : max-width 640px responsive, animation slideIn, bouton ✕ accessible. + nouvelles clés i18n bannerDismiss dans les 15 locales. + build : exclusion de store-assets/ du zip et du xpi (sinon le package Store faisait 327 Ko au lieu de 47 Ko).
This commit is contained in:
@@ -194,7 +194,7 @@ async function build() {
|
||||
copyFiles(extRoot, distDir, [
|
||||
// Top-level directories to skip entirely (do not even create empty folders)
|
||||
(rel, isDir) => isDir && /^dist-/i.test(rel),
|
||||
(rel, isDir) => isDir && (rel === 'scripts' || rel === 'i18n'),
|
||||
(rel, isDir) => isDir && (rel === 'scripts' || rel === 'i18n' || rel === 'store-assets'),
|
||||
// File-level patterns
|
||||
/\.md$/,
|
||||
/^node_modules$/,
|
||||
|
||||
@@ -183,7 +183,7 @@ async function build() {
|
||||
log('📋 Copying extension files...', 'blue')
|
||||
copyFiles(extRoot, distDir, [
|
||||
(rel, isDir) => isDir && /^dist-/i.test(rel),
|
||||
(rel, isDir) => isDir && (rel === 'scripts' || rel === 'i18n'),
|
||||
(rel, isDir) => isDir && (rel === 'scripts' || rel === 'i18n' || rel === 'store-assets'),
|
||||
/\.md$/,
|
||||
/^node_modules$/,
|
||||
/^diagnose\.js$/,
|
||||
|
||||
Reference in New Issue
Block a user