cidgoh / DataHarmonizer

A standardized browser-based spreadsheet editor and validator that can be run offline and locally, and which includes templates for SARS-CoV-2 and Monkeypox sampling data. This project, created by the Centre for Infectious Disease Genomics and One Health (CIDGOH), at Simon Fraser University, is now an open-source collaboration with contributions from the National Microbiome Data Collaborative (NMDC), the LinkML development team, and others.
MIT License
91 stars 23 forks source link

#333 Internationalization and Localization Support #410

Open kennethbruskiewicz opened 9 months ago

kennethbruskiewicz commented 9 months ago

Next steps:

kennethbruskiewicz commented 8 months ago

@pkalita-lbl If you want to take a quick look I'd be happy for any feedback!

pkalita-lbl commented 8 months ago

Yes I can take a look at this today or tomorrow!

kennethbruskiewicz commented 7 months ago

Some bugs came out in testing.

Also one extra request c/o @ddooley , support translations.json option for additional mapping in "<template>/locales/translations.json".

kennethbruskiewicz commented 6 months ago

Update on the completion status of this PR:

There were many features that were affected by i18n, but the features themselves should be stable or only require hot fixes in the near future. Existing workflows should not be affected.

For codebase cleanup PRs, I'll make better use of the Template class I'm setting up plus optimize for better performance and bundle size, as well as enforcing the use of top-directory relative paths for module references. Also consolidate menu.json with manifest.json so schemas and their discoverability by the application can be further decoupled.

Takadonet commented 6 months ago

Thanks for working on this PR. We host a version of the Data Harmonizer and having localization support will make our lives easier to address concern from our external partners.

ddooley commented 6 months ago

The DH pull is just about ready for testing. I'll let you know later today but you can actually see it in action with the TEST template in pull request's #410 branch 333-localization-i18n. It contains 2 separate test (french or whatever language you want) translation files:

kennethbruskiewicz commented 6 months ago

Thanks for working on this PR. We host a version of the Data Harmonizer and having localization support will make our lives easier to address concern from our external partners.

@Takadonet Would you be interested in giving this branch a test run this week? There are a lot of changes, and I would like a user to attempt to use the application to ensure the new features offer a smooth experience.

kennethbruskiewicz commented 6 months ago

@ddooley I needed to rework the multi select internationalization to have a simpler implementation, particularly so copy-paste was less fragile. I merged the current master with this branch.

kennethbruskiewicz commented 6 months ago

@ddooley I believe you've tested all of the changes made two weeks ago for i18n support (multi select menus are translated, provide values, and switch back and forth between languages; exports are in the default language; cut/paste should work robustly; DH works when opening the main HTML file as well as on a server).

I've also patched the problem with Chrome requiring clicking the localization button twice to get it to change(handle selecting a locale with onChange rather than onClick).

Takadonet commented 2 months ago

Bump. Any chance that this will be merged in the near future? Theses changes will be awesome to have.