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.
Files changed (86) hide show
  1. package/CHANGELOG.md +401 -0
  2. package/LICENSE +21 -0
  3. package/README.md +507 -0
  4. package/dev/README.md +37 -0
  5. package/dev/debug/README.md +30 -0
  6. package/dev/debug/complete-console-translations.js +295 -0
  7. package/dev/debug/console-key-checker.js +408 -0
  8. package/dev/debug/console-translations.js +335 -0
  9. package/dev/debug/debugger.js +408 -0
  10. package/dev/debug/export-missing-keys.js +432 -0
  11. package/dev/debug/final-normalize.js +236 -0
  12. package/dev/debug/find-extra-keys.js +68 -0
  13. package/dev/debug/normalize-locales.js +153 -0
  14. package/dev/debug/refactor-locales.js +240 -0
  15. package/dev/debug/reorder-locales.js +85 -0
  16. package/dev/debug/replace-hardcoded-console.js +378 -0
  17. package/docs/INSTALLATION.md +449 -0
  18. package/docs/README.md +222 -0
  19. package/docs/TODO_ROADMAP.md +279 -0
  20. package/docs/api/API_REFERENCE.md +377 -0
  21. package/docs/api/COMPONENTS.md +492 -0
  22. package/docs/api/CONFIGURATION.md +651 -0
  23. package/docs/api/NPM_PUBLISHING_GUIDE.md +434 -0
  24. package/docs/debug/DEBUG_README.md +30 -0
  25. package/docs/debug/DEBUG_TOOLS.md +494 -0
  26. package/docs/development/AGENTS.md +351 -0
  27. package/docs/development/DEVELOPMENT_RULES.md +165 -0
  28. package/docs/development/DEV_README.md +37 -0
  29. package/docs/release-notes/RELEASE_NOTES_v1.0.0.md +173 -0
  30. package/docs/release-notes/RELEASE_NOTES_v1.6.0.md +141 -0
  31. package/docs/release-notes/RELEASE_NOTES_v1.6.1.md +185 -0
  32. package/docs/release-notes/RELEASE_NOTES_v1.6.3.md +199 -0
  33. package/docs/reports/ANALYSIS_README.md +17 -0
  34. package/docs/reports/CONSOLE_MISMATCH_BUG_REPORT_v1.5.0.md +181 -0
  35. package/docs/reports/SIZING_README.md +18 -0
  36. package/docs/reports/SUMMARY_README.md +18 -0
  37. package/docs/reports/TRANSLATION_BUG_REPORT_v1.5.0.md +129 -0
  38. package/docs/reports/USAGE_README.md +18 -0
  39. package/docs/reports/VALIDATION_README.md +18 -0
  40. package/locales/de/auth.json +3 -0
  41. package/locales/de/common.json +16 -0
  42. package/locales/de/pagination.json +6 -0
  43. package/locales/en/auth.json +3 -0
  44. package/locales/en/common.json +16 -0
  45. package/locales/en/pagination.json +6 -0
  46. package/locales/es/auth.json +3 -0
  47. package/locales/es/common.json +16 -0
  48. package/locales/es/pagination.json +6 -0
  49. package/locales/fr/auth.json +3 -0
  50. package/locales/fr/common.json +16 -0
  51. package/locales/fr/pagination.json +6 -0
  52. package/locales/ru/auth.json +3 -0
  53. package/locales/ru/common.json +16 -0
  54. package/locales/ru/pagination.json +6 -0
  55. package/main/i18ntk-analyze.js +625 -0
  56. package/main/i18ntk-autorun.js +461 -0
  57. package/main/i18ntk-complete.js +494 -0
  58. package/main/i18ntk-init.js +686 -0
  59. package/main/i18ntk-manage.js +848 -0
  60. package/main/i18ntk-sizing.js +557 -0
  61. package/main/i18ntk-summary.js +671 -0
  62. package/main/i18ntk-usage.js +1282 -0
  63. package/main/i18ntk-validate.js +762 -0
  64. package/main/ui-i18n.js +332 -0
  65. package/package.json +152 -0
  66. package/scripts/fix-missing-translation-keys.js +214 -0
  67. package/scripts/verify-package.js +168 -0
  68. package/ui-locales/de.json +637 -0
  69. package/ui-locales/en.json +688 -0
  70. package/ui-locales/es.json +637 -0
  71. package/ui-locales/fr.json +637 -0
  72. package/ui-locales/ja.json +637 -0
  73. package/ui-locales/ru.json +637 -0
  74. package/ui-locales/zh.json +637 -0
  75. package/utils/admin-auth.js +317 -0
  76. package/utils/admin-cli.js +353 -0
  77. package/utils/admin-pin.js +409 -0
  78. package/utils/detect-language-mismatches.js +454 -0
  79. package/utils/i18n-helper.js +128 -0
  80. package/utils/maintain-language-purity.js +433 -0
  81. package/utils/native-translations.js +478 -0
  82. package/utils/security.js +384 -0
  83. package/utils/test-complete-system.js +356 -0
  84. package/utils/test-console-i18n.js +402 -0
  85. package/utils/translate-mismatches.js +571 -0
  86. 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,3 @@
1
+ {
2
+ "supabaseNotConfigured": "NOT_TRANSLATED"
3
+ }
@@ -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,6 @@
1
+ {
2
+ "showing": "NOT_TRANSLATED",
3
+ "of": "NOT_TRANSLATED",
4
+ "items": "NOT_TRANSLATED",
5
+ "rowsPerPage": "NOT_TRANSLATED"
6
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "supabaseNotConfigured": "Supabase is not configured"
3
+ }
@@ -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,6 @@
1
+ {
2
+ "showing": "Showing",
3
+ "of": "of",
4
+ "items": "items",
5
+ "rowsPerPage": "Rows per page"
6
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "supabaseNotConfigured": "NOT_TRANSLATED"
3
+ }
@@ -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,6 @@
1
+ {
2
+ "showing": "NOT_TRANSLATED",
3
+ "of": "NOT_TRANSLATED",
4
+ "items": "NOT_TRANSLATED",
5
+ "rowsPerPage": "NOT_TRANSLATED"
6
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "supabaseNotConfigured": "NOT_TRANSLATED"
3
+ }
@@ -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,6 @@
1
+ {
2
+ "showing": "NOT_TRANSLATED",
3
+ "of": "NOT_TRANSLATED",
4
+ "items": "NOT_TRANSLATED",
5
+ "rowsPerPage": "NOT_TRANSLATED"
6
+ }
@@ -0,0 +1,3 @@
1
+ {
2
+ "supabaseNotConfigured": "NOT_TRANSLATED"
3
+ }
@@ -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,6 @@
1
+ {
2
+ "showing": "NOT_TRANSLATED",
3
+ "of": "NOT_TRANSLATED",
4
+ "items": "NOT_TRANSLATED",
5
+ "rowsPerPage": "NOT_TRANSLATED"
6
+ }