velxio/frontend/src/i18n
David Montero 737ec5c6eb feat(import): unify project import — accept .vlx and .zip in both entry points
Velxio had two parallel import paths that confused users (reported on
Discord by AgUn / dmontero):

  * Toolbar "Import a project from a .zip file" → Wokwi .zip only
  * File-explorer "Open .vlx file"               → Velxio .vlx only

If you exported a Velxio project as .vlx and tried to bring it back via
the toolbar Import button, you bounced off "wrong format" with no hint
that the .vlx loader was hiding behind the file-explorer save-bar.

Fix: introduce `utils/importProject.ts` as the single dispatcher.  It
sniffs the extension and routes:

  *.vlx  → importVlxFile      (writes directly to stores)
  *.zip  → importFromWokwiZip (returns a payload the caller applies,
                               so the toolbar can still trigger the
                               install-libraries modal afterwards)

Both UI entry points now go through the dispatcher with the same
`accept=".vlx,.zip,application/json,application/zip"` filter:

  * Toolbar "Import project (.vlx Velxio or .zip Wokwi)"
  * File-explorer "Open project (.vlx Velxio or .zip Wokwi)"

The toolbar tooltip is i18n-driven — updated EN + 8 other locales
(es, fr, de, it, pt-br, ja, ru, zh-cn) so every user sees the same
clarification.

Wokwi compatibility kept intact — the .zip path still resolves to
`importFromWokwiZip` and the same library-install modal pops if the
imported project lists libraries we don't have locally.
2026-05-22 20:55:06 +02:00
..
locales feat(import): unify project import — accept .vlx and .zip in both entry points 2026-05-22 20:55:06 +02:00
LocaleSync.tsx feat(i18n): react-i18next foundation + 9-locale support for header / footer 2026-05-09 00:40:37 -03:00
config.ts feat(i18n): react-i18next foundation + 9-locale support for header / footer 2026-05-09 00:40:37 -03:00
cookie.ts feat(i18n): react-i18next foundation + 9-locale support for header / footer 2026-05-09 00:40:37 -03:00
index.ts fix(i18n): split common.json (editor + about) so all 8 locales translate 2026-05-09 18:50:21 -03:00
path.ts feat(i18n): react-i18next foundation + 9-locale support for header / footer 2026-05-09 00:40:37 -03:00
useLocalizedNavigate.ts feat(i18n): react-i18next foundation + 9-locale support for header / footer 2026-05-09 00:40:37 -03:00