Commit Graph
4 Commits
Author SHA1 Message Date
bruno 31b7f4c569 fix: translate dashboard tabs, header menu items
CI / lint (push) Failing after 19s
CI / test (push) Has been skipped
CI / build (push) Has been skipped
CI / e2e (push) Has been skipped
CI / security (push) Failing after 10s
- showWelcome() dashboard: all tabs, empty states, hints → ${t()}
- Header dropdown: 7 menu items with data-i18n (Thème..Déconnexion)
- 61 new locale keys for dashboard, settings nav, help nav, about
- Total: 658 keys per language
2026-06-18 14:47:18 -04:00
bruno 0403be4516 feat: complete i18n coverage — all dynamic content translated
CI / test (push) Has been cancelled
CI / security (push) Has been cancelled
CI / build (push) Has been cancelled
CI / e2e (push) Has been cancelled
CI / lint (push) Has been cancelled
All remaining French strings converted to t() calls:
- ui.js: create/delete file/dir modals, rename/copy/bookmark toasts
- palette.js: confirm dialogs, error toasts
- search.js: result summary text with interpolation
- config.js: about/diagnostics section labels
- auth.js: admin panel title
- viewer.js: forge popout labels
- dashboard.js: shared widget buttons, date locale-aware

57 new locale keys for dynamic content (modals, toasts, admin, about)
Total: 597 keys per language

All 26 modules validated — 163 exports, 0 errors
2026-06-18 14:18:25 -04:00
bruno f91a386566 feat: comprehensive i18n coverage — all static text + auto-translate toasts
CI / lint (push) Failing after 18s
CI / test (push) Has been skipped
CI / build (push) Has been skipped
CI / e2e (push) Has been skipped
CI / security (push) Failing after 9s
Locale files expanded to 300+ keys covering all sections:
- Header menu, sidebar, search, viewer, editor, AI toolbar
- Config modal (all sections), help modal, dashboard, graph, mermaid
- Context menus, offline UI, palette, auth, shares, backups
- All toasts and confirmations

Automatic data-i18n tagging in index.html (177 attributes)
via Python script — handles all user-facing static text nodes.
Zero concatenation errors verified.

i18n.js: added tr() reverse-lookup function
(French text → key → current locale translation)

ui.js: showToast() now auto-translates via tr()
— all 24 existing toast call sites benefit automatically
2026-06-18 14:01:37 -04:00
bruno f85482214e feat: i18n system - French/English internationalization
CI / lint (push) Failing after 20s
CI / test (push) Has been skipped
CI / build (push) Has been skipped
CI / e2e (push) Has been skipped
CI / security (push) Failing after 9s
Core: i18n.js module with t(), setLocale(), initI18n()
- Flat key→string JSON locale files (fr.json + en.json, 165 keys)
- data-i18n / data-i18n-placeholder / data-i18n-attr DOM attributes
- Live locale switch via setLocale() - no page reload
- Language detection: localStorage > navigator.language > 'fr'
- Fallback: missing key → French → raw key

Wired into:
- app.js: await initI18n() early in init()
- config.js: profile save → await setLocale(), toasts + confirm via t()
- auth.js: network error toast via t()
- index.html: data-i18n on login form, profile section, search placeholder
2026-06-18 13:31:11 -04:00