Félix Malfait
e6491d6a80
feat(i18n): fix translation QA issues and add automation ( #16756 )
...
## Summary
This PR fixes translation QA issues and adds automation to prevent
future issues.
### Translation Fixes
- Fixed **escaped Unicode sequences** in translations (e.g.,
`\u62db\u5f85` → `招待`)
- Removed **corrupted control characters** from .po files (null bytes,
invalid characters)
- Fixed **missing/incorrect placeholders** in various languages
- Deleted **35 problematic translations** via Crowdin API that had
variable mismatches
### New Scripts (in `packages/twenty-utils/`)
- `fix-crowdin-translations.ts` - Auto-fixes encoding issues and syncs
to Crowdin
- `fix-qa-issues.ts` - Fixes specific QA issues via Crowdin API
- `translation-qa-report.ts` - Generates weekly QA report from Crowdin
API
### New Workflow
- `i18n-qa-report.yaml` - Weekly workflow that creates a PR with
translation QA issues for review
### Other Changes
- Moved GitHub Actions from `.github/workflows/actions/` to
`.github/actions/`
- Fixed `date-utils.ts` to avoid nested `t` macros in plural expressions
(root cause of confusing placeholders)
### QA Status After Fixes
| Category | Count | Status |
|----------|-------|--------|
| variables | 0 ✅ | Fixed |
| tags | 1 | Minor |
| empty | 0 ✅ | Fixed |
| spaces | 127 | Low priority |
| numbers | 246 | Locale-specific |
| special_symbols | 268 | Locale-specific |
2025-12-22 17:30:46 +01:00
Félix Malfait
a0cfff6000
Remove Luxon from codebase ( #14448 )
...
Fixes #14444
We shouldn't have 2 libraries to manage dates, one is enough
2025-09-12 23:25:05 +02:00
Félix Malfait
4c4811dca7
Fix broken unit test after translation was added ( #14329 )
...
1-line fix, test is wrong since Lingui translations have been corrected
now
2025-09-05 17:53:00 +02:00
Balaji Krishnamurthy
7a999c8476
Format date displayed in Releases section ( #14183 )
...
Closes #14177
I noticed a `formatDisplayDate` file being used in `twenty-website` and
created the same one for `twenty-front` as well. Unit tests for the same
have been added.
<img width="1438" height="770" alt="image"
src="https://github.com/user-attachments/assets/5aa6eef5-19c5-4108-bf3f-c582d0ca1b59 "
/>
<img width="1275" height="785" alt="image"
src="https://github.com/user-attachments/assets/20a87ba6-fca4-472c-a691-362901505303 "
/>
---------
Co-authored-by: Félix Malfait <felix@twenty.com>
2025-09-04 17:27:31 +02:00
martmull
1c3775e4a0
Fix Never api key expiration dates ( #4965 )
...
closes #4714
We cannot set null expiration dates for api keys. So we will set to 100
years instead of null. If apiKey expires in more that 10 years, it is
displayed as "Never expires"
2024-04-15 20:05:59 +02:00
Charles Bochet
5bdca9de6c
Migrate to a monorepo structure ( #2909 )
2023-12-10 18:10:54 +01:00