Skip to content

feat(i18n): Fix no-op t(), wrap settings strings, complete translations (93→280 keys)#207

Open
rubenvdlinde wants to merge 5 commits intodevelopmentfrom
feature/i18n-complete-translations
Open

feat(i18n): Fix no-op t(), wrap settings strings, complete translations (93→280 keys)#207
rubenvdlinde wants to merge 5 commits intodevelopmentfrom
feature/i18n-complete-translations

Conversation

@rubenvdlinde
Copy link
Copy Markdown
Contributor

Summary

  • Wrap all user-facing strings in t() / $this->l10n->t() translation calls
  • Ensure English is the primary language for all translation keys (per ADR-007)
  • Convert any hardcoded Dutch strings to English keys with Dutch in nl.json
  • Complete l10n/en.json (identity-mapped) and l10n/nl.json (Dutch translations)
  • Fix <script setup> components missing direct t import from @nextcloud/l10n

Test plan

  • Verify app loads without JavaScript errors
  • Switch Nextcloud language to Dutch and verify translations display correctly
  • Switch back to English and verify English strings display correctly
  • Spot-check key pages (dashboard, settings, detail views) in both languages

🤖 Generated with Claude Code

- Extend base webpack config instead of replacing resolve/module
- Add NodePolyfillPlugin for process polyfill compatibility
- Add CnObjectSidebar + objectSidebarState for proper sidebar positioning
- Follows ADR-017 (component composition) and ADR-018 (header actions)
Settings link in gear foldout now opens NcAppSettingsDialog modal
instead of routing to /settings page. Matches ADR-004 pattern.
- Remove local no-op t() method in CronjobConfiguration.vue
- Wrap bare strings in all settings section components
- Fix widget JS missing t/n import
- Expand l10n files from 93 to 280 keys with Dutch translations
@github-actions
Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/softwarecatalog @ 0e01708

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
composer ✅ 120/120
npm ✅ 582/582
PHPUnit ⏭️
Newman ⏭️
Playwright ⏭️

Quality workflow — 2026-04-16 11:23 UTC

Download the full PDF report from the workflow artifacts.

Standardize on #actions across all components per the updated
slot naming convention in @conduction/nextcloud-vue.
@github-actions
Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/softwarecatalog @ 2492175

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
composer ✅ 120/120
npm ✅ 582/582
PHPUnit ⏭️
Newman ⏭️
Playwright ⏭️

Quality workflow — 2026-04-16 18:06 UTC

Download the full PDF report from the workflow artifacts.

All translation keys now use sentence case per ADR-007.
Only first word capitalized, except proper nouns and acronyms.
@github-actions
Copy link
Copy Markdown
Contributor

Quality Report — ConductionNL/softwarecatalog @ 48079c8

Check PHP Vue Security License Tests
lint
phpcs
phpmd
psalm
phpstan
phpmetrics
eslint
stylelint
composer ✅ 120/120
npm ✅ 582/582
PHPUnit ⏭️
Newman ⏭️
Playwright ⏭️

Quality workflow — 2026-04-16 18:13 UTC

Download the full PDF report from the workflow artifacts.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant