i18ntk 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +401 -0
- package/LICENSE +21 -0
- package/README.md +507 -0
- package/dev/README.md +37 -0
- package/dev/debug/README.md +30 -0
- package/dev/debug/complete-console-translations.js +295 -0
- package/dev/debug/console-key-checker.js +408 -0
- package/dev/debug/console-translations.js +335 -0
- package/dev/debug/debugger.js +408 -0
- package/dev/debug/export-missing-keys.js +432 -0
- package/dev/debug/final-normalize.js +236 -0
- package/dev/debug/find-extra-keys.js +68 -0
- package/dev/debug/normalize-locales.js +153 -0
- package/dev/debug/refactor-locales.js +240 -0
- package/dev/debug/reorder-locales.js +85 -0
- package/dev/debug/replace-hardcoded-console.js +378 -0
- package/docs/INSTALLATION.md +449 -0
- package/docs/README.md +222 -0
- package/docs/TODO_ROADMAP.md +279 -0
- package/docs/api/API_REFERENCE.md +377 -0
- package/docs/api/COMPONENTS.md +492 -0
- package/docs/api/CONFIGURATION.md +651 -0
- package/docs/api/NPM_PUBLISHING_GUIDE.md +434 -0
- package/docs/debug/DEBUG_README.md +30 -0
- package/docs/debug/DEBUG_TOOLS.md +494 -0
- package/docs/development/AGENTS.md +351 -0
- package/docs/development/DEVELOPMENT_RULES.md +165 -0
- package/docs/development/DEV_README.md +37 -0
- package/docs/release-notes/RELEASE_NOTES_v1.0.0.md +173 -0
- package/docs/release-notes/RELEASE_NOTES_v1.6.0.md +141 -0
- package/docs/release-notes/RELEASE_NOTES_v1.6.1.md +185 -0
- package/docs/release-notes/RELEASE_NOTES_v1.6.3.md +199 -0
- package/docs/reports/ANALYSIS_README.md +17 -0
- package/docs/reports/CONSOLE_MISMATCH_BUG_REPORT_v1.5.0.md +181 -0
- package/docs/reports/SIZING_README.md +18 -0
- package/docs/reports/SUMMARY_README.md +18 -0
- package/docs/reports/TRANSLATION_BUG_REPORT_v1.5.0.md +129 -0
- package/docs/reports/USAGE_README.md +18 -0
- package/docs/reports/VALIDATION_README.md +18 -0
- package/locales/de/auth.json +3 -0
- package/locales/de/common.json +16 -0
- package/locales/de/pagination.json +6 -0
- package/locales/en/auth.json +3 -0
- package/locales/en/common.json +16 -0
- package/locales/en/pagination.json +6 -0
- package/locales/es/auth.json +3 -0
- package/locales/es/common.json +16 -0
- package/locales/es/pagination.json +6 -0
- package/locales/fr/auth.json +3 -0
- package/locales/fr/common.json +16 -0
- package/locales/fr/pagination.json +6 -0
- package/locales/ru/auth.json +3 -0
- package/locales/ru/common.json +16 -0
- package/locales/ru/pagination.json +6 -0
- package/main/i18ntk-analyze.js +625 -0
- package/main/i18ntk-autorun.js +461 -0
- package/main/i18ntk-complete.js +494 -0
- package/main/i18ntk-init.js +686 -0
- package/main/i18ntk-manage.js +848 -0
- package/main/i18ntk-sizing.js +557 -0
- package/main/i18ntk-summary.js +671 -0
- package/main/i18ntk-usage.js +1282 -0
- package/main/i18ntk-validate.js +762 -0
- package/main/ui-i18n.js +332 -0
- package/package.json +152 -0
- package/scripts/fix-missing-translation-keys.js +214 -0
- package/scripts/verify-package.js +168 -0
- package/ui-locales/de.json +637 -0
- package/ui-locales/en.json +688 -0
- package/ui-locales/es.json +637 -0
- package/ui-locales/fr.json +637 -0
- package/ui-locales/ja.json +637 -0
- package/ui-locales/ru.json +637 -0
- package/ui-locales/zh.json +637 -0
- package/utils/admin-auth.js +317 -0
- package/utils/admin-cli.js +353 -0
- package/utils/admin-pin.js +409 -0
- package/utils/detect-language-mismatches.js +454 -0
- package/utils/i18n-helper.js +128 -0
- package/utils/maintain-language-purity.js +433 -0
- package/utils/native-translations.js +478 -0
- package/utils/security.js +384 -0
- package/utils/test-complete-system.js +356 -0
- package/utils/test-console-i18n.js +402 -0
- package/utils/translate-mismatches.js +571 -0
- package/utils/validate-language-purity.js +531 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Translation Analysis Reports
|
|
2
|
+
|
|
3
|
+
This folder contains translation analysis reports generated by the i18nTK analysis tools.
|
|
4
|
+
|
|
5
|
+
## Report Types
|
|
6
|
+
|
|
7
|
+
- **translation-analysis-*.json** - Detailed translation completeness analysis
|
|
8
|
+
- **language-comparison-*.json** - Language-to-language comparison reports
|
|
9
|
+
- **missing-keys-*.txt** - Lists of missing translation keys
|
|
10
|
+
|
|
11
|
+
## File Naming Convention
|
|
12
|
+
|
|
13
|
+
```
|
|
14
|
+
{report-type}-{timestamp}.{extension}
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Example: `translation-analysis-2025-01-24T10-30-00-000Z.json`
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
# 🐛 Console Language Mismatch Bug Report - v1.5.0
|
|
2
|
+
|
|
3
|
+
**Date**: January 26, 2025
|
|
4
|
+
**Version**: 1.5.0
|
|
5
|
+
**Reporter**: AI Agent
|
|
6
|
+
**Priority**: High
|
|
7
|
+
**Status**: Open
|
|
8
|
+
**Related**: TRANSLATION_BUG_REPORT_v1.5.0.md
|
|
9
|
+
|
|
10
|
+
## 📋 Summary
|
|
11
|
+
|
|
12
|
+
Mixed English text detected in foreign language JSON files, causing console output language inconsistencies and poor user experience for non-English users.
|
|
13
|
+
|
|
14
|
+
## 🔍 Issue Details
|
|
15
|
+
|
|
16
|
+
### Affected Languages and Files
|
|
17
|
+
|
|
18
|
+
#### 🇫🇷 French (FR) - `ui-locales/fr.json`
|
|
19
|
+
**Mixed Language Entries Found:**
|
|
20
|
+
- Line 879: `"prompt": "Select Débogage option (0-4): "` (English "Select" + French "Débogage")
|
|
21
|
+
- Line 897: `"prompt": "Souhaitez-vous to set up an admin PIN? (y/N): "` (French + English mix)
|
|
22
|
+
- Line 898: `"enterPin": "Entrer le PIN administrateur (4-8 digits): "` (French + English "digits")
|
|
23
|
+
- Line 899: `"confirmPin": "Confirmerer admin PIN: "` (Broken French + English "admin PIN")
|
|
24
|
+
- Line 900: `"invalidPin": "PIN must be 4-8 digits only. Veuillez réessayer."` (English + French mix)
|
|
25
|
+
- Line 902: `"success": "Admin PIN has been set up Succèsfully!"` (English + broken French)
|
|
26
|
+
- Line 903: `"enabled": "Admin protection is now enable..."` (English text)
|
|
27
|
+
- Line 904: `"error": "Erreur setting up admin PIN:"` (French + English mix)
|
|
28
|
+
- Line 905: `"continuing": "Continuing without admin PIN protection."` (Full English)
|
|
29
|
+
- Line 906: `"skipped": "Skipping Configuration du PIN administrateur. You ..."` (English + French mix)
|
|
30
|
+
- Line 909: `"authenticated": "You are now authenticated for this session."` (Full English)
|
|
31
|
+
- Line 910: `"ended": "Admin session ended. Goodbye!"` (Full English)
|
|
32
|
+
- Line 911: `"failed": "Authentication Échec. Accès refusé."` (English + French mix)
|
|
33
|
+
|
|
34
|
+
#### 🇪🇸 Spanish (ES) - `ui-locales/es.json`
|
|
35
|
+
**Mixed Language Entries Found:**
|
|
36
|
+
- Line 166: `"sizing": "Analyze translation Archivo sizes and character counts"` (English + Spanish mix)
|
|
37
|
+
- Line 167: `"debug": "Ejecutar Herramientas de depuración for system Análisis"` (Spanish + English mix)
|
|
38
|
+
- Line 208: `"prompt": "Seleccione un idioma (1-7) o 0 para Cancelararar: "` (Broken Spanish)
|
|
39
|
+
- Line 876: `"prompt": "Select Depurar opción (0-4): "` (English "Select" + Spanish)
|
|
40
|
+
- Line 888: `"description": "Admin PIN protection Agregars secu..."` (English + broken Spanish)
|
|
41
|
+
- Line 895: `"enterPin": "Ingrese PIN de administrador (4-8 digits): "` (Spanish + English "digits")
|
|
42
|
+
- Line 896: `"confirmPin": "Confirmarar admin PIN: "` (Broken Spanish + English)
|
|
43
|
+
- Line 897: `"invalidPin": "PIN must be 4-8 digits only. Por favor intente de nuevo."` (English + Spanish mix)
|
|
44
|
+
- Line 899: `"success": "Admin PIN has been set up Éxitofully!"` (English + broken Spanish)
|
|
45
|
+
- Line 900: `"enabled": "Admin protection is now enable..."` (English text)
|
|
46
|
+
- Line 902: `"continuing": "Continuing without admin PIN protection."` (Full English)
|
|
47
|
+
- Line 903: `"skipped": "Skipping Configuración de PIN de administrador. You ..."` (English + Spanish mix)
|
|
48
|
+
- Line 906: `"authenticated": "You are now authenticated for this session."` (Full English)
|
|
49
|
+
- Line 907: `"ended": "Admin session ended. Goodbye!"` (Full English)
|
|
50
|
+
- Line 908: `"failed": "Authentication Falló. Acceso denegado."` (English + Spanish mix)
|
|
51
|
+
|
|
52
|
+
#### 🇩🇪 German (DE) - `ui-locales/de.json`
|
|
53
|
+
**Mixed Language Entries Found:**
|
|
54
|
+
- Line 155: `"description": "Dieses Tool hilft Ihnen bei der Verwaltung der InternationalisieAusführeng (i18n) für Ihr Projekt."` (Broken German word)
|
|
55
|
+
- Line 167: `"sizing": "Analyze translation Datei sizes and character counts"` (English + German mix)
|
|
56
|
+
- Line 168: `"debug": "Ausführen Debug-Werkzeuge for system Analyse"` (German + English mix)
|
|
57
|
+
- Line 170: `"options": "OptionEN:"` (Broken German)
|
|
58
|
+
- Line 424: `"excludedFiles": "Ausgeschlossene Dateien: {Dateis}"` (Broken German variable)
|
|
59
|
+
- Line 782: `"errors": "Fehler: {{Fehlers}}"` (Broken German variable)
|
|
60
|
+
- Line 906: `"skipped": "Admin-PIN-Einrichtung überspAusführengen. Sie..."` (Broken German)
|
|
61
|
+
- Line 911: `"failed": "AuthentifizieAusführeng fehlgeschlagen. Zugriff verweigert."` (Broken German)
|
|
62
|
+
|
|
63
|
+
## 🚨 Impact Assessment
|
|
64
|
+
|
|
65
|
+
### User Experience Impact
|
|
66
|
+
- **Critical**: Users see mixed language console output
|
|
67
|
+
- **Confusing**: Inconsistent terminology and broken translations
|
|
68
|
+
- **Professional**: Reduces perceived quality and professionalism
|
|
69
|
+
- **Accessibility**: Poor experience for non-English speakers
|
|
70
|
+
|
|
71
|
+
### Technical Impact
|
|
72
|
+
- **Console Output**: Mixed language messages in admin PIN setup
|
|
73
|
+
- **Debug Mode**: Inconsistent language in debug prompts
|
|
74
|
+
- **Error Messages**: Mixed language error reporting
|
|
75
|
+
- **Authentication**: Confusing authentication messages
|
|
76
|
+
|
|
77
|
+
## 🔧 Root Cause Analysis
|
|
78
|
+
|
|
79
|
+
### Primary Causes
|
|
80
|
+
1. **Incomplete Translation**: Many strings were partially translated
|
|
81
|
+
2. **Copy-Paste Errors**: English text copied without translation
|
|
82
|
+
3. **Template Issues**: Translation templates contained mixed content
|
|
83
|
+
4. **Quality Control**: Insufficient review of translated content
|
|
84
|
+
5. **Automated Processing**: Some automated translations were incomplete
|
|
85
|
+
|
|
86
|
+
### Secondary Issues
|
|
87
|
+
1. **Broken Words**: German compound words incorrectly split
|
|
88
|
+
2. **Grammar Errors**: Incorrect verb conjugations and word forms
|
|
89
|
+
3. **Variable Naming**: Inconsistent variable name translations
|
|
90
|
+
4. **Punctuation**: Missing or incorrect punctuation in translations
|
|
91
|
+
|
|
92
|
+
## 🎯 Immediate Actions Required
|
|
93
|
+
|
|
94
|
+
### High Priority (Fix Immediately)
|
|
95
|
+
1. **Admin PIN Messages**: Fix all admin PIN setup and authentication messages
|
|
96
|
+
2. **Debug Prompts**: Correct all debug mode prompts and options
|
|
97
|
+
3. **Error Messages**: Ensure all error messages are properly translated
|
|
98
|
+
4. **Core UI Elements**: Fix main menu and navigation prompts
|
|
99
|
+
|
|
100
|
+
### Medium Priority (Fix Soon)
|
|
101
|
+
1. **Help Text**: Review and correct all help and description text
|
|
102
|
+
2. **Status Messages**: Fix progress and status reporting messages
|
|
103
|
+
3. **Configuration Text**: Correct settings and configuration messages
|
|
104
|
+
|
|
105
|
+
### Low Priority (Fix Later)
|
|
106
|
+
1. **Variable Names**: Standardize variable name translations
|
|
107
|
+
2. **Formatting**: Improve text formatting and punctuation
|
|
108
|
+
3. **Consistency**: Ensure terminology consistency across files
|
|
109
|
+
|
|
110
|
+
## 🛠️ Recommended Solutions
|
|
111
|
+
|
|
112
|
+
### Immediate Fixes
|
|
113
|
+
```bash
|
|
114
|
+
# 1. Create clean translation templates
|
|
115
|
+
node dev/debug/console-key-checker.js
|
|
116
|
+
|
|
117
|
+
# 2. Manual review and correction of critical messages
|
|
118
|
+
# Focus on admin PIN, debug, and error messages
|
|
119
|
+
|
|
120
|
+
# 3. Run validation after fixes
|
|
121
|
+
node main/i18ntk-validate.js
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### Quality Assurance Process
|
|
125
|
+
1. **Native Speaker Review**: Have native speakers review translations
|
|
126
|
+
2. **Context Testing**: Test translations in actual console output
|
|
127
|
+
3. **Consistency Checks**: Ensure terminology consistency
|
|
128
|
+
4. **Grammar Validation**: Verify proper grammar and syntax
|
|
129
|
+
|
|
130
|
+
### Prevention Measures
|
|
131
|
+
1. **Translation Guidelines**: Create detailed translation guidelines
|
|
132
|
+
2. **Review Process**: Implement mandatory review for all translations
|
|
133
|
+
3. **Testing Protocol**: Test console output in all languages
|
|
134
|
+
4. **Automated Checks**: Add automated checks for mixed language content
|
|
135
|
+
|
|
136
|
+
## 📁 Files Requiring Immediate Attention
|
|
137
|
+
|
|
138
|
+
### Critical Files
|
|
139
|
+
- `ui-locales/fr.json` - 13+ mixed language entries
|
|
140
|
+
- `ui-locales/es.json` - 15+ mixed language entries
|
|
141
|
+
- `ui-locales/de.json` - 8+ broken/mixed entries
|
|
142
|
+
|
|
143
|
+
### Backup Files (Also Affected)
|
|
144
|
+
- `ui-locales/fr.backup.json`
|
|
145
|
+
- `ui-locales/es.backup.json`
|
|
146
|
+
- `ui-locales/de.backup.json`
|
|
147
|
+
|
|
148
|
+
## 🔍 Detection Commands
|
|
149
|
+
|
|
150
|
+
### Find Mixed Language Content
|
|
151
|
+
```bash
|
|
152
|
+
# Search for English words in foreign language files
|
|
153
|
+
grep -r "[a-zA-Z]" ui-locales/fr.json | grep -E "(Select|Admin|PIN|Error|Success|Authentication)"
|
|
154
|
+
grep -r "[a-zA-Z]" ui-locales/es.json | grep -E "(Select|Admin|PIN|Error|Success|Authentication)"
|
|
155
|
+
grep -r "[a-zA-Z]" ui-locales/de.json | grep -E "(Select|Admin|PIN|Error|Success|Authentication)"
|
|
156
|
+
|
|
157
|
+
# Find broken words or formatting
|
|
158
|
+
grep -E "[A-Z][a-z]+[A-Z]" ui-locales/*.json
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
## 📞 Next Steps
|
|
162
|
+
|
|
163
|
+
1. **Assign Language Experts**: Assign native speakers for each affected language
|
|
164
|
+
2. **Create Fix Schedule**: Prioritize fixes based on user impact
|
|
165
|
+
3. **Implement Review Process**: Establish translation review workflow
|
|
166
|
+
4. **Test Console Output**: Verify fixes in actual console environment
|
|
167
|
+
5. **Update Documentation**: Update translation guidelines and processes
|
|
168
|
+
|
|
169
|
+
## 🔗 Related Issues
|
|
170
|
+
|
|
171
|
+
- **TRANSLATION_BUG_REPORT_v1.5.0.md**: Missing translation keys
|
|
172
|
+
- **Console Translation Support**: Part of v1.5.0 console internationalization
|
|
173
|
+
- **Admin PIN Security**: Related to enhanced security features
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
**Note**: This bug report identifies critical language consistency issues that significantly impact user experience. These issues should be prioritized for immediate resolution to maintain the professional quality of the v1.5.0 release.
|
|
178
|
+
|
|
179
|
+
**Generated**: January 26, 2025 at 03:00 UTC
|
|
180
|
+
**Report ID**: CONSOLE-MISMATCH-2025-002
|
|
181
|
+
**Severity**: High - User Experience Impact
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Sizing Analysis Reports
|
|
2
|
+
|
|
3
|
+
This folder contains sizing analysis reports generated by the i18nTK sizing analysis tools.
|
|
4
|
+
|
|
5
|
+
## Report Types
|
|
6
|
+
|
|
7
|
+
- **sizing-analysis-*.json** - Detailed file size analysis
|
|
8
|
+
- **sizing-analysis-*.csv** - CSV format for spreadsheet analysis
|
|
9
|
+
- **size-comparison-*.json** - Language size comparison reports
|
|
10
|
+
- **optimization-suggestions-*.txt** - Size optimization recommendations
|
|
11
|
+
|
|
12
|
+
## File Naming Convention
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
{report-type}-{timestamp}.{extension}
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Example: `sizing-analysis-2025-01-24T10-30-00-000Z.json`
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Summary Reports
|
|
2
|
+
|
|
3
|
+
This folder contains comprehensive summary reports generated by the i18nTK summary tools.
|
|
4
|
+
|
|
5
|
+
## Report Types
|
|
6
|
+
|
|
7
|
+
- **summary-report-*.json** - Complete project summary
|
|
8
|
+
- **language-overview-*.json** - Language-specific overviews
|
|
9
|
+
- **project-health-*.json** - Overall project health reports
|
|
10
|
+
- **completion-status-*.json** - Translation completion status
|
|
11
|
+
|
|
12
|
+
## File Naming Convention
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
{report-type}-{timestamp}.{extension}
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Example: `summary-report-2025-01-24T10-30-00-000Z.json`
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
# 🐛 Translation Bug Report - v1.5.0
|
|
2
|
+
|
|
3
|
+
**Date**: January 26, 2025
|
|
4
|
+
**Version**: 1.5.0
|
|
5
|
+
**Reporter**: AI Agent
|
|
6
|
+
**Priority**: Medium
|
|
7
|
+
**Status**: Open
|
|
8
|
+
|
|
9
|
+
## 📋 Summary
|
|
10
|
+
|
|
11
|
+
Missing translations detected in Spanish (ES) and Japanese (JA) language files during v1.5.0 documentation update and validation process.
|
|
12
|
+
|
|
13
|
+
## 🔍 Issue Details
|
|
14
|
+
|
|
15
|
+
### Missing Translation Keys
|
|
16
|
+
|
|
17
|
+
- **Spanish (ES)**: 484 missing translation keys
|
|
18
|
+
- **Japanese (JA)**: 408 missing translation keys
|
|
19
|
+
- **Total Impact**: 892 missing translations across 2 languages
|
|
20
|
+
|
|
21
|
+
### Affected Languages
|
|
22
|
+
|
|
23
|
+
✅ **Complete Translations**:
|
|
24
|
+
- German (DE) - ✅ 523/523 keys
|
|
25
|
+
- French (FR) - ✅ 523/523 keys
|
|
26
|
+
- Russian (RU) - ✅ 523/523 keys
|
|
27
|
+
- Chinese (ZH) - ✅ 523/523 keys
|
|
28
|
+
|
|
29
|
+
❌ **Incomplete Translations**:
|
|
30
|
+
- Spanish (ES) - ❌ 39/523 keys (484 missing)
|
|
31
|
+
- Japanese (JA) - ❌ 115/523 keys (408 missing)
|
|
32
|
+
|
|
33
|
+
## 🛠️ Actions Taken
|
|
34
|
+
|
|
35
|
+
1. ✅ **Detection**: Ran `node dev/debug/console-key-checker.js`
|
|
36
|
+
2. ✅ **Backup Creation**: Automatic backups created for all affected files
|
|
37
|
+
3. ✅ **Key Addition**: Missing keys added with `[NOT TRANSLATED]` placeholders
|
|
38
|
+
4. ✅ **Partial Translation**: Ran `node utils/native-translations.js`
|
|
39
|
+
- ES: 15 translations replaced
|
|
40
|
+
- JA: 1 translation replaced
|
|
41
|
+
- Total: 16 automatic replacements
|
|
42
|
+
|
|
43
|
+
## 📊 Current Status
|
|
44
|
+
|
|
45
|
+
### Remaining Work Required
|
|
46
|
+
|
|
47
|
+
- **Spanish (ES)**: ~469 keys still need manual translation
|
|
48
|
+
- **Japanese (JA)**: ~407 keys still need manual translation
|
|
49
|
+
- **Total**: ~876 keys requiring human translation
|
|
50
|
+
|
|
51
|
+
## 🎯 Recommended Actions
|
|
52
|
+
|
|
53
|
+
### Immediate (High Priority)
|
|
54
|
+
1. **Review Critical UI Elements**: Focus on main menu, error messages, and core functionality
|
|
55
|
+
2. **Validate Existing Translations**: Ensure current translations are contextually appropriate
|
|
56
|
+
3. **Update Translation Guidelines**: Enhance language-specific guidelines for ES and JA
|
|
57
|
+
|
|
58
|
+
### Short Term (Medium Priority)
|
|
59
|
+
1. **Complete ES Translations**: Prioritize Spanish due to higher missing count
|
|
60
|
+
2. **Complete JA Translations**: Focus on Japanese technical terminology
|
|
61
|
+
3. **Quality Assurance**: Review automated translations for accuracy
|
|
62
|
+
|
|
63
|
+
### Long Term (Low Priority)
|
|
64
|
+
1. **Automated Translation Pipeline**: Implement better automation for future updates
|
|
65
|
+
2. **Translation Memory**: Build translation memory for consistency
|
|
66
|
+
3. **Community Contributions**: Consider community translation contributions
|
|
67
|
+
|
|
68
|
+
## 📁 Files Affected
|
|
69
|
+
|
|
70
|
+
### Spanish (ES)
|
|
71
|
+
- `ui-locales/es.json` - 484 missing keys added
|
|
72
|
+
- Backup: `ui-locales/es.backup.json`
|
|
73
|
+
|
|
74
|
+
### Japanese (JA)
|
|
75
|
+
- `ui-locales/ja.json` - 408 missing keys added
|
|
76
|
+
- Backup: `ui-locales/ja.backup.json`
|
|
77
|
+
|
|
78
|
+
## 🔧 Technical Details
|
|
79
|
+
|
|
80
|
+
### Detection Method
|
|
81
|
+
```bash
|
|
82
|
+
node dev/debug/console-key-checker.js
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Translation Processing
|
|
86
|
+
```bash
|
|
87
|
+
node utils/native-translations.js
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### Validation Commands
|
|
91
|
+
```bash
|
|
92
|
+
node main/i18ntk-validate.js
|
|
93
|
+
node main/i18ntk-analyze.js
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
## 📈 Impact Assessment
|
|
97
|
+
|
|
98
|
+
### User Experience Impact
|
|
99
|
+
- **Spanish Users**: May see `[NOT TRANSLATED]` placeholders in console output
|
|
100
|
+
- **Japanese Users**: May see `[NOT TRANSLATED]` placeholders in console output
|
|
101
|
+
- **Functionality**: Core functionality remains unaffected
|
|
102
|
+
- **Severity**: Medium (cosmetic/UX issue, not functional)
|
|
103
|
+
|
|
104
|
+
### Development Impact
|
|
105
|
+
- **Console Output**: Non-English console messages may display placeholders
|
|
106
|
+
- **Documentation**: All documentation remains in English (unaffected)
|
|
107
|
+
- **Core Features**: All core i18n toolkit features work correctly
|
|
108
|
+
|
|
109
|
+
## 🚀 Next Steps
|
|
110
|
+
|
|
111
|
+
1. **Assign Translation Tasks**: Assign ES and JA translation tasks to appropriate team members
|
|
112
|
+
2. **Create Translation Schedule**: Establish timeline for completion
|
|
113
|
+
3. **Quality Review Process**: Implement review process for new translations
|
|
114
|
+
4. **Testing Protocol**: Test translated console output in target languages
|
|
115
|
+
5. **Documentation Update**: Update AGENTS.md with new translation patterns
|
|
116
|
+
|
|
117
|
+
## 📞 Contact Information
|
|
118
|
+
|
|
119
|
+
- **Bug Reporter**: AI Agent (Automated Detection)
|
|
120
|
+
- **Technical Lead**: [To be assigned]
|
|
121
|
+
- **Translation Coordinator**: [To be assigned]
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
**Note**: This bug report was automatically generated during the v1.5.0 documentation update process. The missing translations do not affect core functionality but impact user experience for Spanish and Japanese users.
|
|
126
|
+
|
|
127
|
+
**Generated**: January 26, 2025 at 02:57 UTC
|
|
128
|
+
**Report ID**: TRANS-BUG-2025-001
|
|
129
|
+
**Export File**: `missing-keys-2025-07-26T02-57-47-103Z.json`
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Usage Analysis Reports
|
|
2
|
+
|
|
3
|
+
This folder contains usage analysis reports generated by the i18nTK usage analysis tools.
|
|
4
|
+
|
|
5
|
+
## Report Types
|
|
6
|
+
|
|
7
|
+
- **usage-analysis-*.txt** - Detailed usage analysis reports
|
|
8
|
+
- **unused-keys-*.json** - Lists of unused translation keys
|
|
9
|
+
- **missing-keys-*.json** - Lists of missing translation keys
|
|
10
|
+
- **dynamic-keys-*.json** - Dynamic key detection reports
|
|
11
|
+
|
|
12
|
+
## File Naming Convention
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
{report-type}-{timestamp}.{extension}
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Example: `usage-analysis-2025-01-24T10-30-00-000Z.txt`
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Translation Validation Reports
|
|
2
|
+
|
|
3
|
+
This folder contains validation reports generated by the i18nTK validation tools.
|
|
4
|
+
|
|
5
|
+
## Report Types
|
|
6
|
+
|
|
7
|
+
- **validation-report-*.json** - Detailed validation results
|
|
8
|
+
- **validation-errors-*.txt** - Lists of validation errors
|
|
9
|
+
- **validation-warnings-*.txt** - Lists of validation warnings
|
|
10
|
+
- **structural-issues-*.json** - Structural inconsistency reports
|
|
11
|
+
|
|
12
|
+
## File Naming Convention
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
{report-type}-{timestamp}.{extension}
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Example: `validation-report-2025-01-24T10-30-00-000Z.json`
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"offlineTitle": "NOT_TRANSLATED",
|
|
3
|
+
"offlineMessage": "NOT_TRANSLATED",
|
|
4
|
+
"tryReconnect": "NOT_TRANSLATED",
|
|
5
|
+
"common": "NOT_TRANSLATED",
|
|
6
|
+
"logout": "NOT_TRANSLATED",
|
|
7
|
+
"login": "NOT_TRANSLATED",
|
|
8
|
+
"amount": "NOT_TRANSLATED",
|
|
9
|
+
"timePeriods": {
|
|
10
|
+
"customRange": "NOT_TRANSLATED"
|
|
11
|
+
},
|
|
12
|
+
"unknownUser": "NOT_TRANSLATED",
|
|
13
|
+
"notSet": "NOT_TRANSLATED",
|
|
14
|
+
"announcement_id": "NOT_TRANSLATED",
|
|
15
|
+
"last_sign_in_at": "NOT_TRANSLATED"
|
|
16
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"offlineTitle": "You are offline",
|
|
3
|
+
"offlineMessage": "Please check your internet connection",
|
|
4
|
+
"tryReconnect": "Try to reconnect",
|
|
5
|
+
"common": "Common",
|
|
6
|
+
"logout": "Logout",
|
|
7
|
+
"login": "Login",
|
|
8
|
+
"amount": "Amount",
|
|
9
|
+
"timePeriods": {
|
|
10
|
+
"customRange": "Custom Range"
|
|
11
|
+
},
|
|
12
|
+
"unknownUser": "Unknown User",
|
|
13
|
+
"notSet": "Not Set",
|
|
14
|
+
"announcement_id": "Announcement ID",
|
|
15
|
+
"last_sign_in_at": "Last Sign In"
|
|
16
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"offlineTitle": "NOT_TRANSLATED",
|
|
3
|
+
"offlineMessage": "NOT_TRANSLATED",
|
|
4
|
+
"tryReconnect": "NOT_TRANSLATED",
|
|
5
|
+
"common": "NOT_TRANSLATED",
|
|
6
|
+
"logout": "NOT_TRANSLATED",
|
|
7
|
+
"login": "NOT_TRANSLATED",
|
|
8
|
+
"amount": "NOT_TRANSLATED",
|
|
9
|
+
"timePeriods": {
|
|
10
|
+
"customRange": "NOT_TRANSLATED"
|
|
11
|
+
},
|
|
12
|
+
"unknownUser": "NOT_TRANSLATED",
|
|
13
|
+
"notSet": "NOT_TRANSLATED",
|
|
14
|
+
"announcement_id": "NOT_TRANSLATED",
|
|
15
|
+
"last_sign_in_at": "NOT_TRANSLATED"
|
|
16
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"offlineTitle": "NOT_TRANSLATED",
|
|
3
|
+
"offlineMessage": "NOT_TRANSLATED",
|
|
4
|
+
"tryReconnect": "NOT_TRANSLATED",
|
|
5
|
+
"common": "NOT_TRANSLATED",
|
|
6
|
+
"logout": "NOT_TRANSLATED",
|
|
7
|
+
"login": "NOT_TRANSLATED",
|
|
8
|
+
"amount": "NOT_TRANSLATED",
|
|
9
|
+
"timePeriods": {
|
|
10
|
+
"customRange": "NOT_TRANSLATED"
|
|
11
|
+
},
|
|
12
|
+
"unknownUser": "NOT_TRANSLATED",
|
|
13
|
+
"notSet": "NOT_TRANSLATED",
|
|
14
|
+
"announcement_id": "NOT_TRANSLATED",
|
|
15
|
+
"last_sign_in_at": "NOT_TRANSLATED"
|
|
16
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{
|
|
2
|
+
"offlineTitle": "NOT_TRANSLATED",
|
|
3
|
+
"offlineMessage": "NOT_TRANSLATED",
|
|
4
|
+
"tryReconnect": "NOT_TRANSLATED",
|
|
5
|
+
"common": "NOT_TRANSLATED",
|
|
6
|
+
"logout": "NOT_TRANSLATED",
|
|
7
|
+
"login": "NOT_TRANSLATED",
|
|
8
|
+
"amount": "NOT_TRANSLATED",
|
|
9
|
+
"timePeriods": {
|
|
10
|
+
"customRange": "NOT_TRANSLATED"
|
|
11
|
+
},
|
|
12
|
+
"unknownUser": "NOT_TRANSLATED",
|
|
13
|
+
"notSet": "NOT_TRANSLATED",
|
|
14
|
+
"announcement_id": "NOT_TRANSLATED",
|
|
15
|
+
"last_sign_in_at": "NOT_TRANSLATED"
|
|
16
|
+
}
|