i18ntk 4.7.0 → 4.7.2

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 (40) hide show
  1. package/CHANGELOG.md +34 -1
  2. package/README.md +15 -4
  3. package/main/i18ntk-ui.js +35 -30
  4. package/main/i18ntk-usage.js +2 -2
  5. package/main/i18ntk-validate.js +1 -1
  6. package/main/manage/commands/ValidateCommand.js +1 -1
  7. package/main/manage/index.js +52 -47
  8. package/main/manage/managers/LanguageMenu.js +3 -1
  9. package/main/manage/services/ConfigurationService.js +1 -1
  10. package/main/manage/services/FrameworkDetectionService.js +1 -1
  11. package/main/manage/services/UsageService.js +2 -2
  12. package/package.json +11 -7
  13. package/settings/settings-manager.js +19 -3
  14. package/ui-locales/ar.json +2636 -0
  15. package/ui-locales/cs.json +2636 -0
  16. package/ui-locales/de.json +17 -1
  17. package/ui-locales/el.json +2636 -0
  18. package/ui-locales/en.json +17 -1
  19. package/ui-locales/es.json +17 -1
  20. package/ui-locales/fr.json +17 -1
  21. package/ui-locales/he.json +2636 -0
  22. package/ui-locales/hi.json +2636 -0
  23. package/ui-locales/hu.json +2636 -0
  24. package/ui-locales/it.json +2636 -0
  25. package/ui-locales/ja.json +17 -1
  26. package/ui-locales/ko.json +2636 -0
  27. package/ui-locales/nl.json +2636 -0
  28. package/ui-locales/pl.json +2636 -0
  29. package/ui-locales/pt.json +2636 -0
  30. package/ui-locales/ru.json +17 -1
  31. package/ui-locales/sv.json +2636 -0
  32. package/ui-locales/th.json +2636 -0
  33. package/ui-locales/tr.json +2636 -0
  34. package/ui-locales/uk.json +2636 -0
  35. package/ui-locales/vi.json +2636 -0
  36. package/ui-locales/zh.json +17 -1
  37. package/utils/config-helper.js +2 -2
  38. package/utils/config-manager.js +3 -4
  39. package/utils/env-manager.js +1 -1
  40. package/utils/locale-optimizer.js +1 -1
@@ -0,0 +1,2636 @@
1
+ {
2
+ "meta": {
3
+ "version": "4.7.0",
4
+ "updated": "2026-07-07",
5
+ "lang": "el"
6
+ },
7
+ "common": {
8
+ "welcome": "Καλωσόρισμα",
9
+ "hello": "Γειά σου",
10
+ "goodbye": "Αντίο",
11
+ "yes": "Ναί",
12
+ "no": "Οχι",
13
+ "save": "Εκτός",
14
+ "cancel": "Ματαίωση",
15
+ "delete": "Διαγράφω",
16
+ "edit": "Εκδίδω",
17
+ "loading": "Φόρτωση...",
18
+ "offlineTitle": "Είστε εκτός σύνδεσης",
19
+ "offlineMessage": "Ελέγξτε τη σύνδεσή σας στο Διαδίκτυο",
20
+ "tryReconnect": "Προσπαθήστε να επανασυνδεθείτε",
21
+ "logout": "Αποσύνδεση",
22
+ "login": "Σύνδεση",
23
+ "amount": "Ποσό",
24
+ "success": "Επιτυχία",
25
+ "error": "Σφάλμα",
26
+ "warning": "Προειδοποίηση",
27
+ "info": "Πληροφορίες:",
28
+ "debug": "Εντοπισμός σφαλμάτων",
29
+ "progress": "Πρόοδος:",
30
+ "remaining": "Παραμένων:",
31
+ "total": "Σύνολο:",
32
+ "completed": "7. Ολοκληρώθηκε με επιτυχία!",
33
+ "missing": "Απών",
34
+ "partial": "Μερικός",
35
+ "sameAsSource": "Ίδιο με την πηγή:",
36
+ "formatMismatch": "Αναντιστοιχία μορφής:",
37
+ "typeMismatch": "Αναντιστοιχία τύπου:",
38
+ "structureMismatch": "Αναντιστοιχία δομής:",
39
+ "invalidOption": "Μη έγκυρη επιλογή",
40
+ "separator": "==================================================",
41
+ "initializationFailed": "❌ Η προετοιμασία απέτυχε: {error}",
42
+ "stackTrace": "Ίχνη στοίβας: {stack}",
43
+ "pressEnterToContinue": "Πατήστε Enter για να συνεχίσετε...",
44
+ "pressEnterToReturn": "Πατήστε Enter για να επιστρέψετε στο κύριο μενού...",
45
+ "stepCompleted": "Βήμα '{stepName}'ολοκληρώθηκε.",
46
+ "stepFailed": "Βήμα '{stepName}'Απέτυχε.",
47
+ "runningStep": "Βήμα τρεξίματος: {stepName}",
48
+ "command": "Εντολή: {command}",
49
+ "startingWorkflow": "Έναρξη ροής εργασιών...",
50
+ "workflowCompleted": "Η ροή εργασίας ολοκληρώθηκε.",
51
+ "checkReports": "Ελέγξτε τις αναφορές για λεπτομέρειες.",
52
+ "errorExecutingCommand": "Σφάλμα κατά την εκτέλεση της εντολής: {error}",
53
+ "genericError": "❌ Σφάλμα: {error}",
54
+ "errors": {
55
+ "errors": "Σφάλματα:",
56
+ "genericError": "❌ Σφάλμα: {error}",
57
+ "initializationFailed": "❌ Η προετοιμασία απέτυχε: {error}",
58
+ "initializationCancelled": "❌ Η αρχικοποίηση ακυρώθηκε από τον χρήστη.",
59
+ "translationKeyNotFound": "Δεν βρέθηκε το κλειδί μετάφρασης: {key}",
60
+ "sourceDirectoryNotFound": "Ο κατάλογος πηγής δεν βρέθηκε: {directory}",
61
+ "configLoadingFailed": "Η φόρτωση της διαμόρφωσης απέτυχε",
62
+ "invalidSourceDirectory": "Μη έγκυρος κατάλογος πηγής: {directory}",
63
+ "securityViolation": "Εντοπίστηκε παραβίαση ασφαλείας",
64
+ "authenticationFailed": "Ο έλεγχος ταυτότητας απέτυχε",
65
+ "sourceEqualsI18nWarn": "⚠️ sourceDir ισούται με i18nDir ({sourceDir}). Πέφτοντας πίσω στο {fallback} για σάρωση πηγής."
66
+ },
67
+ "errorGeneratingStatusSummary": "Σφάλμα κατά τη δημιουργία σύνοψης κατάστασης: {error}",
68
+ "errorRunningDebugTool": "Σφάλμα κατά την εκτέλεση του εργαλείου εντοπισμού σφαλμάτων \"{displayName}': {error}",
69
+ "errorReadingDebugLogs": "Σφάλμα κατά την ανάγνωση των αρχείων καταγραφής εντοπισμού σφαλμάτων: {error}",
70
+ "errorAnalyzingLogFile": "Σφάλμα κατά την ανάλυση του αρχείου καταγραφής: {error}",
71
+ "errorAnalyzingTranslationKeys": "Σφάλμα κατά την ανάλυση των κλειδιών μετάφρασης: {error}",
72
+ "errorAnalyzingTranslationCompleteness": "Σφάλμα κατά την ανάλυση της πληρότητας της μετάφρασης: {error}",
73
+ "analyzingTranslationCompleteness": "Ανάλυση της πληρότητας της μετάφρασης σε όλες τις γλώσσες...",
74
+ "i18nDirectoryNotFound": "⚠️ Ο κατάλογος i18n δεν βρέθηκε: {i18nDir}",
75
+ "translationCompletenessAnalysisFailed": "⚠️ Η ανάλυση πληρότητας μετάφρασης απέτυχε: {error}",
76
+ "failedToAnalyzeLanguage": "❌ Απέτυχε η ανάλυση της γλώσσας {language}: {error}",
77
+ "errorReadingI18nDirectory": "❌ Σφάλμα κατά την ανάγνωση του καταλόγου i18n:",
78
+ "languageCompletenessTitle": "📈 ΠΛΗΡΕΣΗ ΜΕΤΑΦΡΑΣΗΣ ΚΑΤΑ ΓΛΩΣΣΑ",
79
+ "errorAnalyzingTranslationFormat": "Σφάλμα κατά την ανάλυση της μορφής μετάφρασης: {error}",
80
+ "errorAnalyzingTranslationType": "Σφάλμα κατά την ανάλυση του τύπου μετάφρασης: {error}",
81
+ "errorAnalyzingTranslationStructure": "Σφάλμα κατά την ανάλυση της δομής μετάφρασης: {error}",
82
+ "errorAnalyzingTranslationFormatMismatch": "Σφάλμα ανάλυσης αναντιστοιχίας μορφής μετάφρασης: {error}",
83
+ "errorAnalyzingTranslationTypeMismatch": "Σφάλμα ανάλυσης αναντιστοιχίας τύπου μετάφρασης: {error}",
84
+ "errorAnalyzingTranslationStructureMismatch": "Σφάλμα ανάλυσης αναντιστοιχίας δομής μετάφρασης: {error}",
85
+ "errorAnalyzingTranslationSameAsSource": "Σφάλμα κατά την ανάλυση της μετάφρασης όπως η πηγή: {error}",
86
+ "title": "Κατάσταση",
87
+ "nextStep1": "1. Ελέγξτε την ανάλυση χρήσης:",
88
+ "nextStep2": "2. Επικύρωση μεταφράσεων:",
89
+ "nextStep3": "3. Αναλύστε την πληρότητα:",
90
+ "nextStep4": "4. Συμπληρώστε τις μεταφράσεις που λείπουν:",
91
+ "nextStep5": "5. Δημιουργία συνοπτικής αναφοράς:",
92
+ "nextStep6": "6. Ελέγξτε και οριστικοποιήστε τις μεταφράσεις:",
93
+ "generating": "Δημιουργία συνοπτικής αναφοράς...",
94
+ "review": "Έλεγχος μεταφράσεων...",
95
+ "finalizing": "Ολοκλήρωση μεταφράσεων...",
96
+ "finalized": "Ολοκληρώθηκε με επιτυχία!",
97
+ "warnings": "Προειδοποιήσεις:",
98
+ "completedKeys": "Ολοκληρωμένα κλειδιά:",
99
+ "missingKeys": "Λείπουν κλειδιά:",
100
+ "partialKeys": "Μερικά κλειδιά:",
101
+ "home": "Σπίτι",
102
+ "settings": "Ρυθμίσεις",
103
+ "startingSettings": "🎛️ Έναρξη ρυθμίσεων CLI...",
104
+ "confirm": "Επιβεβαιώνω",
105
+ "errorExiting": "Σφάλμα κατά την έξοδο."
106
+ },
107
+ "errors": {
108
+ "invalidOption": "❌ Μη έγκυρη επιλογή: {option}. Δοκιμάστε ξανά.",
109
+ "readlineClosed": "Η ροή εισόδου είναι κλειστή. τρέχει σε μη διαδραστική λειτουργία.",
110
+ "noPackageJson": "Δεν βρέθηκε πακέτο.json. Δεν είναι δυνατός ο αυτόματος εντοπισμός του πλαισίου i18n.",
111
+ "noI18nDir": "Δεν βρέθηκε κατάλογος i18n στη ρίζα του έργου.",
112
+ "noI18nConfig": "Δεν βρέθηκε αρχείο διαμόρφωσης i18n στη ρίζα του έργου.",
113
+ "errorReadingDebugLogs": "Σφάλμα κατά την ανάγνωση των αρχείων καταγραφής εντοπισμού σφαλμάτων: {error}"
114
+ },
115
+ "scanner": {
116
+ "help_message": "I18n Text Scanner Χρήση: node i18ntk-scanner.js [επιλογές] Επιλογές: --source-dir <dir> Κατάλογος προέλευσης για σάρωση (προεπιλογή: ./src) --έξοδος <file> Αρχείο εξόδου για αποτελέσματα σάρωσης (προεπιλογή: ./i18ntk-scanner-report.json) --framework <name> Πλαίσιο για στόχευση (react, vue, angular, vanilla) -- μοτίβα <patterns> Προσαρμοσμένα μοτίβα regex (χωρισμένα με κόμμα) --include-tests Συμπερίληψη δοκιμαστικών αρχείων στη σάρωση --exclude-dirs <dirs> Κατάλογοι προς εξαίρεση (χωρισμένοι με κόμμα) --help Εμφάνιση αυτής της βοήθειας Παραδείγματα: κόμβος i18ntk-scanner.js --source-dir=./src --framework=react κόμβος i18ntk-scanner.js --patterns 'console.log\\((.*?)\\)' --include18nerts node --output=./scan-results.json",
117
+ "help_options": {
118
+ "source_dir": "Κατάλογος προέλευσης για σάρωση για ζητήματα i18n",
119
+ "output_dir": "Κατάλογος για αναφορές και αποτελέσματα σάρωσης",
120
+ "framework": "Πλαίσιο στόχου (react, vue, angular, vanilla)",
121
+ "patterns": "Προσαρμοσμένα μοτίβα regex για ανίχνευση κειμένου",
122
+ "exclude": "Μοτίβα αρχείων προς εξαίρεση από τη σάρωση",
123
+ "output_report": "Δημιουργήστε λεπτομερή αναφορά σάρωσης",
124
+ "min_length": "Ελάχιστο μήκος κειμένου που πρέπει να ληφθεί υπόψη για τη μετάφραση",
125
+ "max_length": "Μέγιστο μήκος κειμένου που πρέπει να ληφθεί υπόψη για τη μετάφραση",
126
+ "include_tests": "Συμπεριλάβετε αρχεία δοκιμής στη διαδικασία σάρωσης"
127
+ },
128
+ "starting": "🔍 Έναρξη σαρωτή κειμένου για πλαίσιο: {framework}",
129
+ "sourceDirectory": "📁 Σάρωση καταλόγου: {sourceDir}",
130
+ "frameworkDetected": "🎯 Ανιχνευμένο πλαίσιο: {framework}",
131
+ "scanningFiles": "📊 Σάρωση {fileCount} αρχεία...",
132
+ "foundTexts": "📝 Βρέθηκε {textCount} κείμενα που απαιτούν μετάφραση",
133
+ "generatingReport": "📊 Δημιουργία λεπτομερούς αναφοράς...",
134
+ "reportSaved": "💾 Η αναφορά σάρωσης αποθηκεύτηκε σε: {reportPath}",
135
+ "noTextsFound": "✅ Δεν βρέθηκαν κωδικοποιημένα αγγλικά κείμενα",
136
+ "scanComplete": "🎉 Η σάρωση ολοκληρώθηκε με επιτυχία!",
137
+ "analysisTitle": "🔍 ΑΝΑΛΥΣΗ ΣΑΡΩΣΗΣ ΜΕΤΑΦΡΑΣΗΣ",
138
+ "fileSummary": "📄 {file}: {count} κείμενα που βρέθηκαν",
139
+ "textLocation": "📍 Γραμμή {line}: {text}",
140
+ "foundText": "Θεμελιώ {count} πιθανές παρουσίες κειμένου με σκληρό κώδικα",
141
+ "context": "📝 Περιεχόμενο: {context}",
142
+ "severity": "⚠️ Σοβαρότητα: {severity}",
143
+ "recommendation": "💡 Σύσταση: {recommendation}",
144
+ "welcome": {
145
+ "title": "🎯 Καλώς ήρθατε στο Text Scanner!",
146
+ "description": "Αυτό το εργαλείο σαρώνει τον πηγαίο κώδικα σας για έντυπο αγγλικό κείμενο που μπορεί να χρειάζεται μετάφραση."
147
+ },
148
+ "frameworkPrompt": {
149
+ "title": "🎯 Επιλέξτε Πλαίσιο",
150
+ "available": "Διαθέσιμα πλαίσια: react, vue, angular, vanilla",
151
+ "description": "Εισαγάγετε τον τύπο πλαισίου (ή πατήστε Enter για αυτόματη ανίχνευση):",
152
+ "input": "Σκελετός:"
153
+ },
154
+ "directoryPrompt": {
155
+ "title": "📁 Επιλέξτε Κατάλογος πηγών",
156
+ "current": "Τρέχων κατάλογος: {dir}",
157
+ "description": "Εισαγάγετε τον κατάλογο για σάρωση (ή πατήστε Enter για τρέχον):",
158
+ "input": "Τηλεφωνικός κατάλογος:"
159
+ },
160
+ "options": {
161
+ "includeTests": "Να συμπεριληφθούν αρχεία δοκιμής;",
162
+ "excludeDirs": "Κατάλογοι προς εξαίρεση (χωρισμένοι με κόμματα):",
163
+ "customPatterns": "Προσαρμοσμένα μοτίβα για σάρωση (regex):"
164
+ },
165
+ "reportGenerated": "Δημιουργήθηκε αναφορά σάρωσης: {path}"
166
+ },
167
+ "fixer": {
168
+ "help_message": "I18n Translation Fixer Χρήση: node i18ntk-fixer.js [επιλογές] Επιλογές: --source-dir <dir> Κατάλογος πηγής για σάρωση (προεπιλογή: ./locales) --γλώσσες <langs> Λίστα γλωσσών διαχωρισμένων με κόμματα προς διόρθωση --δείκτες <markers> Σημάντες διαχωρισμένοι με κόμματα για να αντιμετωπίζονται ως αμετάφραστα --no-backup Παράλειψη αυτόματης δημιουργίας αντιγράφων ασφαλείας --βοήθεια Εμφάνιση αυτής της βοήθειας Παραδείγματα: κόμβος i18ntk-fixer.js --languages ​​de,fr node i18ntk-fixer.js --source-dir=./locales --markers NOT_TRANSLATED.backup.",
169
+ "starting": "🚀 Έναρξη επιδιόρθωσης μετάφρασης για γλώσσες: {languages}",
170
+ "sourceDirectory": "📁 Κατάλογος πηγής: {sourceDir}",
171
+ "sourceLanguage": "🔤 Γλώσσα πηγής: {sourceLanguage}",
172
+ "markers": "🏷️ Μαρκαδόροι προς διόρθωση: {markers}",
173
+ "scanningLanguage": "📊 Σάρωση {language}...",
174
+ "noLanguages": "❌ Δεν έχουν καθοριστεί γλώσσες για επιδιόρθωση.",
175
+ "allComplete": "🎉 Όλες οι μεταφράσεις έχουν ήδη ολοκληρωθεί!",
176
+ "fullReportSaved": "📊 Η πλήρης αναφορά αποθηκεύτηκε σε: {reportPath}",
177
+ "reviewReport": "Ελέγξτε την αναφορά πριν συνεχίσετε.",
178
+ "backupCreated": "💾 Το αντίγραφο ασφαλείας δημιουργήθηκε με επιτυχία.",
179
+ "applyingFixes": "🔄 Εφαρμογή διορθώσεων...",
180
+ "fixingComplete": "✅ Η διόρθωση της μετάφρασης ολοκληρώθηκε!",
181
+ "operationCancelled": "❌ Η λειτουργία ακυρώθηκε από τον χρήστη.",
182
+ "analysisTitle": "🔍 ΑΝΑΛΥΣΗ ΔΙΟΡΘΩΣΗΣ ΜΕΤΑΦΡΑΣΗΣ",
183
+ "analysisSeparator": "==================================================",
184
+ "totalIssues": "Συνολικά προβλήματα που βρέθηκαν: {totalIssues}",
185
+ "missingTranslations": "Λείπουν μεταφράσεις: {missing}",
186
+ "placeholderTranslations": "Μεταφράσεις placeholder: {placeholder}",
187
+ "noIssues": "✅ Δεν βρέθηκαν προβλήματα. Όλες οι μεταφράσεις είναι ολοκληρωμένες.",
188
+ "detailedIssues": "📋 DETAILED ISSUES:",
189
+ "detailedSeparator": "--------------------------------------------------",
190
+ "filePath": "📄 {file} → {path}",
191
+ "missingKey": "❌ ΛΕΙΠΟΥΝ: {source} → {new}",
192
+ "placeholderKey": "⚠️ ΤΟΠΟΘΕΤΗΣ: \"{target}\" → \"{new}\"",
193
+ "moreIssues": "... και {count} περισσότερα θέματα. Ελέγξτε το αρχείο αναφοράς για πλήρεις λεπτομέρειες.",
194
+ "confirmationTitle": "🤔 Θέλετε να συνεχίσετε με αυτές τις διορθώσεις;",
195
+ "confirmationOptions": "Επιλογές:",
196
+ "optionYes": "y - Ναι, εφαρμόστε όλες τις διορθώσεις",
197
+ "optionNo": "n - Όχι, ακυρώστε τη λειτουργία",
198
+ "optionShow": "s - Εμφάνιση λεπτομερών ζητημάτων",
199
+ "choicePrompt": "Η επιλογή σας (y/n/s):",
200
+ "nonInteractiveMode": "⚡ Εντοπίστηκε μη διαδραστική λειτουργία - αυτόματη εφαρμογή διορθώσεων...",
201
+ "reportGenerated": "📊 Δημιουργήθηκε αναφορά επιδιόρθωσης: {path}",
202
+ "summary": "Σύνοψη Fixer:",
203
+ "welcome": {
204
+ "title": "🎯 Καλώς ήρθατε στο Translation Fixer!",
205
+ "description": "Αυτό το εργαλείο θα σας βοηθήσει να διορθώσετε κατεστραμμένες μεταφράσεις και σύμβολα κράτησης θέσης στα αρχεία τοπικών ρυθμίσεων."
206
+ },
207
+ "markerPrompt": {
208
+ "title": "🏷️ Διαμόρφωση δεικτών κράτησης θέσης",
209
+ "description": "Εισαγάγετε τους δείκτες που υποδεικνύουν μη μεταφρασμένο κείμενο (χωρισμένο με κόμμα):",
210
+ "currentDefaults": "Προεπιλεγμένοι δείκτες: {markers}",
211
+ "input": "Δείκτες (ή πατήστε Enter για προεπιλογές):"
212
+ },
213
+ "languagePrompt": {
214
+ "title": "🌍 Επιλέξτε Γλώσσες προς διόρθωση",
215
+ "available": "Διαθέσιμες γλώσσες: {languages}",
216
+ "description": "Εισαγάγετε γλώσσες προς διόρθωση (χωρισμένες με κόμματα) ή πατήστε Enter για όλες:",
217
+ "input": "Γλώσσες:",
218
+ "noLanguages": "Δεν βρέθηκαν γλώσσες για διόρθωση."
219
+ },
220
+ "directoryPrompt": {
221
+ "title": "📁 Επιλέξτε Κατάλογο",
222
+ "current": "Τρέχων κατάλογος: {dir}",
223
+ "description": "Εισαγάγετε τον κατάλογο που περιέχει τα αρχεία τοπικής ρύθμισης (ή πατήστε Enter για τρέχοντα):",
224
+ "input": "Τηλεφωνικός κατάλογος:"
225
+ },
226
+ "backupLocation": "Εφεδρική τοποθεσία: {dir}",
227
+ "completed": "Η επισκευή ολοκληρώθηκε.",
228
+ "creatingBackup": "Δημιουργία αντιγράφων ασφαλείας σε {dir}...",
229
+ "dryRunMode": "Λειτουργία ξηρής λειτουργίας: {mode}",
230
+ "error": "Ο διορθωτής απέτυχε: {error}",
231
+ "fixing": "Διόρθωση {language}...",
232
+ "foundLanguages": "Θεμελιώ {count} γλώσσες: {languages}",
233
+ "languageFixed": "{language}: σταθερό {fixed} κλειδί(α), παραλείφθηκε {skipped}.",
234
+ "running": "Εκτελείται επιδιόρθωση μετάφρασης...",
235
+ "totalFixed": "Συνολικά διορθώθηκε: {count}"
236
+ },
237
+ "autorun": {
238
+ "stepAnalyzeTranslations": "Αναλύστε τις μεταφράσεις",
239
+ "stepCompletedWithIcon": "✅ Ολοκληρώθηκε: {stepName}",
240
+ "stepValidateTranslations": "Επικύρωση μεταφράσεων",
241
+ "stepRunning": "▶️ Βήμα {stepNumber}/{totalSteps}: {stepName}",
242
+ "separator": "==================================================",
243
+ "stepFailed": "❌ Απέτυχε: {stepName}",
244
+ "errorLabel": "Σφάλμα",
245
+ "autoRunScriptTitle": "🧪 Αυτόματη εκτέλεση ροής εργασίας",
246
+ "usageTitle": "Χρήση",
247
+ "runAllSteps": "Εκτέλεση: node i18ntk-autorun.js",
248
+ "configureSettingsFirst": "Config: i18ntk-config.json ή σημαίες CLI",
249
+ "runSpecificSteps": "Χρησιμοποιήστε --steps=1,3 ή --list για να εμφανίσετε τα βήματα",
250
+ "showHelp": "--βοήθεια για περισσότερες πληροφορίες",
251
+ "examplesTitle": "Παραδείγματα",
252
+ "configExample": "κόμβος i18ntk-autorun.js --ui-language=zh",
253
+ "stepsExample1": "κόμβος i18ntk-autorun.js --steps=analyze,validate",
254
+ "stepsExample2": "κόμβος i18ntk-autorun.js --list",
255
+ "customSettingsConfiguration": "Προσαρμοσμένες ρυθμίσεις αυτόματης εκτέλεσης",
256
+ "availableSteps": "Διαθέσιμα βήματα",
257
+ "startingAutoRunWorkflow": "🚀 Έναρξη ροής εργασίας αυτόματης εκτέλεσης...",
258
+ "workflowIncludesSteps": "Η ροή εργασίας περιλαμβάνει {count} βήματα:",
259
+ "missingRequiredFile": "Λείπει το απαιτούμενο αρχείο: {file}",
260
+ "workflowStopped": "Η ροή εργασίας σταμάτησε λόγω αποτυχίας.",
261
+ "workflowCompleted": "🎉 Η ροή εργασίας ολοκληρώθηκε!",
262
+ "successfulSteps": "Επιτυχημένα βήματα: {count}",
263
+ "failedSteps": "Αποτυχημένα βήματα: {count}",
264
+ "stepInitializeProject": "Αρχικοποίηση έργου",
265
+ "stepCheckUsage": "Ελέγξτε τη χρήση του κλειδιού",
266
+ "stepGenerateSummary": "Δημιουργία συνοπτικής αναφοράς",
267
+ "runInitializationFirst": "Εκτελέστε πρώτα την προετοιμασία.",
268
+ "initializationCheckPassed": "Ο έλεγχος αρχικοποίησης πέρασε.",
269
+ "runningStep": "Βήμα τρεξίματος: {stepName}",
270
+ "commandLabel": "Εντολή: {command}",
271
+ "stepCompletedWithTime": "Βήμα '{stepName}'ολοκληρώθηκε σε {duration}ms.",
272
+ "stepCompleted": "Βήμα '{stepName}'ολοκληρώθηκε.",
273
+ "stepFailedWithError": "Βήμα '{stepName}' απέτυχε με σφάλμα: {error}",
274
+ "requiredStepFailed": "Το απαιτούμενο βήμα απέτυχε. Διακοπή ροής εργασιών.",
275
+ "optionalStepFailed": "Το προαιρετικό βήμα απέτυχε. Συνεχιζόμενη ροή εργασιών.",
276
+ "stepRequired": "(Υποχρεούμαι)",
277
+ "stepOptional": "(Προαιρετικός)",
278
+ "startingExecution": "Έναρξη εκτέλεσης...",
279
+ "pressEnterToContinue": "Πατήστε Enter για να συνεχίσετε...",
280
+ "runningSelectedSteps": "Εκτέλεση επιλεγμένων βημάτων...",
281
+ "invalidStepNumber": "Μη έγκυρος αριθμός βήματος: {stepNum}",
282
+ "executionReport": "Έκθεση εκτέλεσης:",
283
+ "requiredFailedSteps": "Τα απαιτούμενα βήματα απέτυχαν: {count}",
284
+ "stepDetails": "Λεπτομέρειες βήματος:",
285
+ "reportSavedTo": "Η αναφορά αποθηκεύτηκε σε: {path}",
286
+ "overallStatusSuccess": "SUCCESS",
287
+ "overallStatusFailed": "FAILED",
288
+ "overallStatus": "Συνολική κατάσταση: {status}",
289
+ "pressEnterForDefaults": "Πατήστε Enter για να χρησιμοποιήσετε τις προεπιλεγμένες ρυθμίσεις για οποιοδήποτε μήνυμα προτροπής.",
290
+ "sourceDirPrompt": "Εισαγάγετε τον κατάλογο προέλευσης (προεπιλογή: {default}):",
291
+ "sourceLangPrompt": "Εισαγάγετε τη γλώσσα πηγής (προεπιλογή: {default}):",
292
+ "targetLangsPrompt": "Εισαγάγετε γλώσσες-στόχους (χωρισμένες με κόμματα, προεπιλογή: {default}):",
293
+ "translationMarkerPrompt": "Εισαγάγετε δείκτη μετάφρασης (προεπιλογή: {default}):",
294
+ "outputDirPrompt": "Εισαγάγετε τον κατάλογο εξόδου για αναφορές (προεπιλογή: {default}):",
295
+ "settingsUpdatedSuccessfully": "Οι ρυθμίσεις ενημερώθηκαν με επιτυχία!",
296
+ "errorConfiguringSettings": "Σφάλμα κατά τη διαμόρφωση των ρυθμίσεων: {error}",
297
+ "configurationComplete": "Η διαμόρφωση ολοκληρώθηκε.",
298
+ "runAutoRunCommand": "Τώρα μπορείτε να εκτελέσετε την εντολή αυτόματης εκτέλεσης.",
299
+ "configurationFailed": "Η διαμόρφωση απέτυχε: {error}",
300
+ "noValidStepNumbers": "Δεν παρέχονται έγκυροι αριθμοί βημάτων.",
301
+ "autoRunFailed": "Η αυτόματη εκτέλεση απέτυχε: {error}",
302
+ "stepCompleteTranslations": "Ολοκληρωμένες Μεταφράσεις",
303
+ "stepAnalyzeSizing": "Αναλύστε το μέγεθος",
304
+ "stepCompletedIcon": "✅",
305
+ "stepRunningWithNumber": "[{stepNumber}/{totalSteps}] Βήμα '{stepName}\"τρέξιμο...",
306
+ "stepFailedIcon": "❌",
307
+ "translationLoadWarning": "Προειδοποίηση: Δεν ήταν δυνατή η φόρτωση {lang} μεταφράσεις",
308
+ "configReadError": "Σφάλμα ανάγνωσης {file}"
309
+ },
310
+ "analyze": {
311
+ "help_message": "I18n Translation Analyzer Χρήση: node i18ntk-analyze.js [επιλογές] Επιλογές: --source-dir <dir> Κατάλογος πηγής για σάρωση (προεπιλογή: ./src) --i18n-dir <dir> Κατάλογος I18n (προεπιλογή: ./src/locales) --output-report Δημιουργία λεπτομερούς αναφοράς --output-dir <dir> Κατάλογος εξόδου για αναφορές (προεπιλογή: ./αναφορές) --help Εμφάνιση αυτής της βοήθειας Παραδείγματα: κόμβος i18ntk-analyze.js --output-report node i18ntk-analyze.js --source-dir=./app --i18n-dir=./locales κόμβος i18ntk-analyze.",
312
+ "source_directory": "📁 Κατάλογος πηγής: {sourceDir}",
313
+ "i18n_directory": "🌐 Κατάλογος I18n: {i18nDir}",
314
+ "loading_translation_files": "📋 Φόρτωση αρχείων μετάφρασης...",
315
+ "sourceDirectoryLabel": "📁 Κατάλογος πηγών: {sourceDir}",
316
+ "sourceLanguageLabel": "🌍 Γλώσσα πηγής: {sourceLanguage}",
317
+ "strictModeLabel": "⚙️ Αυστηρή λειτουργία: {mode}",
318
+ "found_translation_files_count": "✅ Βρέθηκε {count} αρχεία μετάφρασης",
319
+ "analyzing_translations": "🔍 Ανάλυση μεταφράσεων...",
320
+ "analysis_completed_successfully": "🎉 Η ανάλυση ολοκληρώθηκε με επιτυχία!",
321
+ "analysis_results": "📊 ANALYSIS RESULTS",
322
+ "language_analysis_stats": "{language}: {translatedKeys}/{totalKeys} ({percentage}% μεταφρασμένο)",
323
+ "sample_missing_keys": "Δείγμα κλειδιών που λείπουν:",
324
+ "missing_key": "- {key}",
325
+ "and_more_missing": "...και {count} περισσότερο.",
326
+ "sample_unused_keys": "Δείγμα αχρησιμοποίητων κλειδιών:",
327
+ "unused_key": "- {key}",
328
+ "and_more_unused": "...και {count} περισσότερο.",
329
+ "recommendations": "📋 ΠΡΟΤΑΣΕΙΣ",
330
+ "add_missing_translations": "💡 Προσθέστε μεταφράσεις που λείπουν για να βελτιώσετε την κάλυψη.",
331
+ "remove_unused_translations": "💡 Καταργήστε τις αχρησιμοποίητες μεταφράσεις για να διατηρήσετε το έργο σας καθαρό.",
332
+ "next_steps": "📋 NEXT STEPS",
333
+ "review_analysis_results": "1. Ελέγξτε τα αποτελέσματα της ανάλυσης στην κονσόλα ή στην αναφορά που δημιουργήθηκε.",
334
+ "run_with_output_report": "2. Εκτελέστε με --output-report για λεπτομερή αναφορά.",
335
+ "add_or_remove_translations": "3. Προσθέστε μεταφράσεις που λείπουν ή αφαιρέστε τις αχρησιμοποίητες.",
336
+ "rerun_analysis": "4. Επαναλάβετε την ανάλυση για να επαληθεύσετε τις βελτιώσεις.",
337
+ "analysis_summary": "📊 ANALYSIS SUMMARY",
338
+ "source_files_scanned": "Τα αρχεία πηγής σαρώθηκαν: {fileCount}",
339
+ "translation_files_checked": "Ελεγμένα αρχεία μετάφρασης: {translationFileCount}",
340
+ "total_keys": "Σύνολο κλειδιών: {totalKeys}",
341
+ "translated_keys": "Μεταφρασμένα κλειδιά: {translatedKeys}",
342
+ "missing_keys": "Λείπουν κλειδιά: {missingKeys}",
343
+ "unused_keys": "Αχρησιμοποίητα κλειδιά: {unusedKeys}",
344
+ "translation_coverage": "Μεταφραστική κάλυψη: {coverage}%",
345
+ "analysis_passed_for_language": "✅ Η ανάλυση πέρασε για {language}",
346
+ "analysis_failed_for_language": "❌ Η ανάλυση απέτυχε για {language} ({missingKeys} απών, {unusedKeys} αχρησιμοποίητος)",
347
+ "starting": "🔍 Έναρξη ανάλυσης μετάφρασης...",
348
+ "foundLanguages": "📋 Βρέθηκε {count} γλώσσες προς ανάλυση: {languages}",
349
+ "analyzing": "🔄 Αναλύοντας {language}...",
350
+ "reportTitle": "📊 ΕΚΘΕΣΗ ΑΝΑΛΥΣΗΣ ΜΕΤΑΦΡΑΣΗΣ",
351
+ "generated": "Δημιουργήθηκε: {timestamp}",
352
+ "status": "Κατάσταση: {translated}/{total} κλειδιά ({percentage}% μεταφρασμένο)",
353
+ "filesAnalyzed": "Αρχεία που αναλύθηκαν: {analyzed}/{total}",
354
+ "keysNeedingTranslation": "Κλειδιά που χρειάζονται μετάφραση: {count}",
355
+ "fileBreakdown": "📋 ΑΝΑΛΥΣΗ ΑΡΧΕΙΟΥ",
356
+ "error": "Σφάλμα",
357
+ "completed": "✅ Η ανάλυση ολοκληρώθηκε για {language}",
358
+ "progress": "📊 Συνολική πρόοδος: {translated}/{total} επεξεργασμένες γλώσσες",
359
+ "reportSaved": "Η αναφορά αποθηκεύτηκε: {reportPath}",
360
+ "summary": "📊 ANALYSIS SUMMARY",
361
+ "finished": "✅ Η ανάλυση ολοκληρώθηκε με επιτυχία!",
362
+ "statusFileMissing": "❌ Λείπει το αρχείο μετάφρασης",
363
+ "sourceKeys": "📊 Κλειδιά πηγής: {count}",
364
+ "translation": "📊 Μετάφραση: {translated}/{total} ({percentage}%)",
365
+ "structure": "🗂️ Δομή: {status}",
366
+ "consistent": "Συνεπής",
367
+ "inconsistent": "Ασυνεπής",
368
+ "missingKeys": "Λείπουν κλειδιά: {count}",
369
+ "extraKeys": "Επιπλέον κλειδιά: {count}",
370
+ "issues": "⚠️ Βρέθηκαν προβλήματα: {count}",
371
+ "issueType": {
372
+ "not_translated": "Μη μεταφρασμένο: {count}",
373
+ "empty_value": "Κενές τιμές: {count}",
374
+ "partial_translation": "Μερικές μεταφράσεις: {count}",
375
+ "format_mismatch": "Αναντιστοιχίες μορφής: {count}",
376
+ "type_mismatch": "Αναντιστοιχίες τύπου: {count}",
377
+ "structure_mismatch": "Αναντιστοιχίες δομής: {count}",
378
+ "same_as_source": "Ίδιο με την πηγή: {count}"
379
+ },
380
+ "keysToTranslate": "📋 ΚΛΕΙΔΙΑ ΓΙΑ ΜΕΤΑΦΡΑΣΗ",
381
+ "key": "Κλειδί",
382
+ "english": "αγγλικός",
383
+ "needsTranslation": "ΧΡΕΙΑΖΕΤΑΙ ΜΕΤΑΦΡΑΣΗ",
384
+ "andMoreKeys": "...και {count} περισσότερα κλειδιά.",
385
+ "noLanguages": "⚠️ Δεν βρέθηκαν γλώσσες-στόχοι.",
386
+ "languageStats": "{language}: {percentage}% ολοκληρωμένη ({translated}/{total} κλειδιά)",
387
+ "invalidReportFilePath": "Μη έγκυρη διαδρομή αρχείου αναφοράς",
388
+ "failedToWriteReportFile": "Απέτυχε η ασφαλής εγγραφή του αρχείου αναφοράς"
389
+ },
390
+ "complete": {
391
+ "configLoadedSuccessfully": "Η διαμόρφωση φορτώθηκε με επιτυχία",
392
+ "configLoadingFailed": "Η φόρτωση της διαμόρφωσης απέτυχε",
393
+ "sourceLanguageNotFound": "Ο κατάλογος γλώσσας πηγής δεν βρέθηκε: {sourceLanguage}",
394
+ "couldNotParseTarget": "Δεν ήταν δυνατή η ανάλυση του αρχείου προορισμού: {file}",
395
+ "couldNotParseSource": "Δεν ήταν δυνατή η ανάλυση του αρχείου προέλευσης: {file}",
396
+ "reportGenerated": "Δημιουργήθηκε αναφορά: {path}",
397
+ "generateReportPrompt": "Θα θέλατε να δημιουργηθεί μια αναφορά;",
398
+ "title": "🌍 ΟΛΟΚΛΗΡΩΣΗ ΜΕΤΑΦΡΑΣΗΣ I18NTK",
399
+ "separator": "============================================================",
400
+ "sourceDir": "📁 Κατάλογος πηγής: {sourceDir}",
401
+ "sourceLanguage": "🌐 Γλώσσα πηγής: {sourceLanguage}",
402
+ "dryRunMode": "🧪 Λειτουργία ξηρής λειτουργίας - δεν θα γίνουν αλλαγές",
403
+ "languages": "🌍 Διαθέσιμες γλώσσες: {languages}",
404
+ "addingMissingKeys": "➕ Προσθήκη κλειδιών που λείπουν στα αρχεία μετάφρασης...",
405
+ "processing": "🔄 Επεξεργασία {language}...",
406
+ "addedKeys": "✅ Προστέθηκε {count} λείπουν κλειδιά",
407
+ "noChangesNeeded": "✅ Δεν χρειάζονται αλλαγές για {language}",
408
+ "summaryTitle": "📊 ΣΥΝΟΨΗ ΟΛΟΚΛΗΡΩΣΗΣ",
409
+ "totalChanges": "📝 Συνολικές αλλαγές: {totalChanges}",
410
+ "languagesProcessed": "🌍 Γλώσσες που υποβλήθηκαν σε επεξεργασία: {languagesProcessed}",
411
+ "missingKeysAdded": "➕ Προστέθηκαν κλειδιά που λείπουν: {missingKeysAdded}",
412
+ "nextStepsTitle": "📋 NEXT STEPS",
413
+ "nextStep1": "1. Εκτελέστε την ανάλυση χρήσης:",
414
+ "nextStep2": "κόμβος i18ntk-usage.js --output-report",
415
+ "nextStep3": "2. Επικύρωση μεταφράσεων:",
416
+ "nextStep4": "κόμβος i18ntk-validate.js",
417
+ "nextStep5": "3. Αναλύστε μοτίβα:",
418
+ "nextStep6": "κόμβος i18ntk-analyze.js",
419
+ "allKeysAvailable": "🎉 Όλα τα κλειδιά μετάφρασης είναι πλέον διαθέσιμα!",
420
+ "runWithoutDryRun": "💡 Εκτελέστε χωρίς --dry-run για να εφαρμόσετε αλλαγές",
421
+ "deletingOldReport": "🗑️ Διαγραφή παλιάς αναφοράς...",
422
+ "generatingFreshAnalysis": "📊 Δημιουργία νέας ανάλυσης χρήσης...",
423
+ "couldNotGenerate": "❌ Δεν ήταν δυνατή η δημιουργία ανάλυσης χρήσης",
424
+ "reportNotFound": "📋 Η αναφορά χρήσης δεν βρέθηκε. Χρήση κοινών πλήκτρων...",
425
+ "foundMissingKeys": "📋 Βρέθηκε {count} λείπουν κλειδιά από την ανάλυση χρήσης",
426
+ "couldNotParse": "❌ Δεν ήταν δυνατή η ανάλυση της αναφοράς χρήσης. Χρήση κοινών πλήκτρων...",
427
+ "errorDuringCompletion": "❌ Σφάλμα κατά την ολοκλήρωση: {error}",
428
+ "fatalError": "❌ Θανατηφόρο σφάλμα: {error}",
429
+ "configurationValidationFailed": "Η επικύρωση διαμόρφωσης απέτυχε: λείπουν υποχρεωτικά πεδία"
430
+ },
431
+ "sizing": {
432
+ "separator": "================================================================================",
433
+ "lineSeparator": "--------------------------------------------------------------------------------",
434
+ "analysisStats": "{stats}",
435
+ "sourceDirectoryLabel": "📁 Κατάλογος πηγής: {sourceDir}",
436
+ "sourceLanguageLabel": "🌍 Γλώσσα πηγής: {sourceLanguage}",
437
+ "strictModeLabel": "⚙️ Αυστηρή λειτουργία: {mode}",
438
+ "invalidSourceDirectoryError": "Μη έγκυρη διαδρομή καταλόγου προέλευσης: {sourceDir}",
439
+ "sourceDirectoryNotFoundError": "Ο κατάλογος πηγής δεν βρέθηκε: {sourceDir}",
440
+ "invalidOutputDirectoryError": "Μη έγκυρη διαδρομή καταλόγου εξόδου: {outputDir}",
441
+ "invalidReportFileError": "Μη έγκυρη διαδρομή αρχείου αναφοράς",
442
+ "problematic_keys": "Προβληματικά κλειδιά: {problematicKeys}",
443
+ "problematicKeysLabel": "Προβληματικά κλειδιά: {problematicKeys}",
444
+ "long_translations": "Εκτενείς μεταφράσεις: {longTranslations}",
445
+ "failedToSaveReportError": "Η ασφαλής αποθήκευση της αναφοράς απέτυχε",
446
+ "invalidCsvFileError": "Μη έγκυρη διαδρομή αρχείου CSV",
447
+ "failedToSaveCsvError": "Αποτυχία αποθήκευσης της αναφοράς CSV με ασφάλεια",
448
+ "fatalError": "❌ Η ανάλυση μεγέθους απέτυχε: {error}",
449
+ "starting_i18n_sizing_analysis": "Έναρξη ανάλυσης μεγέθους i18n...",
450
+ "source_directory": "Κατάλογος πηγής: {sourceDir}",
451
+ "found_languages": "Βρέθηκαν γλώσσες: {languages}",
452
+ "analyzing_file_sizes": "Ανάλυση μεγεθών αρχείων...",
453
+ "analyzing_translation_content": "Ανάλυση μεταφραστικού περιεχομένου...",
454
+ "generating_size_comparisons": "Δημιουργία συγκρίσεων μεγεθών...",
455
+ "no_languages_found_for_comparison": "Δεν βρέθηκαν γλώσσες για σύγκριση",
456
+ "sizing_analysis_results": "Αποτελέσματα ανάλυσης μεγέθους I18n",
457
+ "file_sizes_title": "Μεγέθη αρχείων",
458
+ "file_sizes_header": "Γλώσσα Μέγεθος (KB) Γραμμές Χαρακτήρες",
459
+ "file_size_row": "{lang} {sizeKB} {lines} {characters}",
460
+ "language_statistics_title": "Γλωσσική Στατιστική",
461
+ "language_stats_header": "Πλήκτρα γλώσσας Χαρακτήρες Μέσο μήκος Μέγιστο μήκος Κενό Μακρύ",
462
+ "language_stats_row": "{lang} {totalKeys} {totalCharacters} {averageKeyLength} {maxKeyLength} {emptyKeys} {longKeys}",
463
+ "size_variations_title": "Παραλλαγές μεγέθους",
464
+ "size_variations_header": "Γλώσσα Char Diff % Diff Προβληματική",
465
+ "size_variation_row": "{lang} {characterDifference} {percentageDifference}% {problematic}",
466
+ "problematic_yes": "Ναί",
467
+ "problematic_no": "Οχι",
468
+ "recommendations_title": "συστάσεις",
469
+ "recommendation_item": "{index}. {recommendation}",
470
+ "problematic_key_detail": "{index}. Κλειδί: '{key}' - Παραλλαγές: {variations}",
471
+ "generating_detailed_report": "Δημιουργία λεπτομερούς αναφοράς...",
472
+ "keysHaveSignificantSizeVariations": "τα κλειδιά έχουν σημαντικές διακυμάνσεις μεγέθους",
473
+ "longTranslationsDetected": "${lang} έχει μεταφράσεις ${data.longKeys} μεγαλύτερες από 100 χαρακτήρες - σκεφτείτε να τις αναλύσετε",
474
+ "longer": "μακρύτερα",
475
+ "shorter": "κοντύτερος",
476
+ "review_translations": "Εξετάστε το ενδεχόμενο αναθεώρησης {lang} μεταφράσεις - είναι {percentageDifference}% {comparison} από τη γραμμή βάσης",
477
+ "report_saved_to": "Η αναφορά αποθηκεύτηκε σε: {reportPath}",
478
+ "considerReviewingTranslations": "Σκεφτείτε την αναθεώρηση ${lang} μεταφράσεις - είναι ${data.percentageDifference}% μεγαλύτερες από τη γραμμή βάσης",
479
+ "csv_report_saved_to": "Η αναφορά CSV αποθηκεύτηκε σε: {csvPath}",
480
+ "human_report_saved": "Η αναγνώσιμη αναφορά αποθηκεύτηκε: {reportPath}",
481
+ "folder_summary_title": "Περίληψη φακέλου",
482
+ "folder_summary_table_header": "Μέγεθος γλώσσας (KB) Πλήκτρα Μέσο μήκος Συνολικοί χαρακτήρες",
483
+ "folder_summary_row": "{lang} {sizeKB} {totalKeys} {avgLength} {totalChars}",
484
+ "language_comparison_title": "Σύγκριση Γλωσσών",
485
+ "language_comparison_row": "{lang}: {diff} χαρακτήρες ({percent}%) {status}",
486
+ "summary_stats": "📊 Περίληψη: {totalLanguages} γλώσσες, {totalKeys} πλήκτρα - Οι αναφορές αποθηκεύονται σε {reportPath}",
487
+ "detailedKeysDescription": "Εμφάνιση λεπτομερούς ανάλυσης σε επίπεδο κλειδιού στην κονσόλα",
488
+ "too_many_keys_warning": "⚠️ Πάρα πολλά κλειδιά για εμφάνιση στην κονσόλα - ελέγξτε το αρχείο λεπτομερούς αναφοράς για πλήρη ανάλυση",
489
+ "no_translation_files_found": "Δεν βρέθηκαν αρχεία μετάφρασης",
490
+ "analysis_completed": "Η ανάλυση ολοκληρώθηκε σε {duration}ms",
491
+ "analysis_failed": "Η ανάλυση απέτυχε: {errorMessage}",
492
+ "starting_analysis": "Έναρξη ανάλυσης...",
493
+ "found_files": "Θεμελιώ {count} αρχεία",
494
+ "failed_to_parse_language_error": "Αποτυχία ανάλυσης {language} μεταφράσεις: {errorMessage}",
495
+ "recommendations": {
496
+ "keys_have_significant_size_variations": "τα κλειδιά έχουν σημαντικές διακυμάνσεις μεγέθους",
497
+ "consider_reviewing_translations": "Σκεφτείτε την αναθεώρηση {lang} μεταφράσεις - είναι {percentageDifference}% {comparison} από τη γραμμή βάσης",
498
+ "long_translations_detected": "{lang} έχει {longKeys} μεταφράσεις μεγαλύτερες από {threshold} χαρακτήρες - σκεφτείτε να τους αναλύσετε"
499
+ },
500
+ "detailed_key_analysis_title": "Λεπτομερής Ανάλυση Κλειδιών",
501
+ "key_analysis_detail": "{lang}: {length} χαρακτήρες ({status}) - {translation}",
502
+ "key_analysis_header": "Κλειδί: {key}",
503
+ "status_empty": "αδειάζω",
504
+ "status_long": "μακρύς",
505
+ "status_ok": "Εντάξει"
506
+ },
507
+ "usage": {
508
+ "help_message": "I18n Χρήση Αναλυτή Χρήσης: node i18ntk-usage.js [επιλογές] Επιλογές: --source-dir <dir> Κατάλογος πηγής για σάρωση (προεπιλογή: ./src) --i18n-dir <dir> Κατάλογος I18n (προεπιλογή: ./src/locales) --output-report Δημιουργία λεπτομερούς αναφοράς --output-dir <dir> Κατάλογος εξόδου για αναφορές (προεπιλογή: ./αναφορές) --βοήθεια Εμφάνιση αυτής της βοήθειας Παραδείγματα: κόμβος i18ntk-usage.js --output-report node i18ntk-usage.js --source-dir=./app --i18n-dir=./locales κόμβος i18ntk-usage.js --/output-usage.js --/output-report node i18ntk-usage.js --source-dir=./app --i18n-dir=./locales node i18ntk-usage.js --/output-usage.js --/output-usage.js --/output-report node.",
509
+ "source_directory_thissourcedir": "📁 Κατάλογος πηγής: {sourceDir}",
510
+ "translationCompletenessTitle": "🌍 Πληρότητα μετάφρασης:",
511
+ "i18n_directory_thisi18ndir": "🌐 Κατάλογος I18n: {i18nDir}",
512
+ "failed_to_parse_filename_error": "⚠️ Αποτυχία ανάλυσης {fileName}: {errorMessage}",
513
+ "analyzing_source_files": "🔍 Ανάλυση αρχείων πηγής...",
514
+ "found_files_in_source": "📂 Βρέθηκε {numFiles} αρχεία στον κατάλογο προέλευσης",
515
+ "found_thisusedkeyssize_unique_": "🎯 Βρέθηκε {usedKeysSize} μοναδικά μεταχειρισμένα κλειδιά",
516
+ "total_key_usages_totalkeysfoun": "📊 Συνολικές χρήσεις κλειδιών: {totalKeysFound}",
517
+ "loading_available_translation_": "📋 Φόρτωση διαθέσιμων κλειδιών μετάφρασης...",
518
+ "found_thisavailablekeyssize_av": "✅ Βρέθηκε {availableKeysSize} διαθέσιμα κλειδιά",
519
+ "foundTranslationFiles": "✅ Βρέθηκε {count} αρχεία μετάφρασης",
520
+ "errorReadingI18nDirectory": "⚠️ Σφάλμα κατά την ανάγνωση του καταλόγου i18n: {error}",
521
+ "pressEnterToReturnToMenu": "📝 Πατήστε Enter για να επιστρέψετε στο κύριο μενού...",
522
+ "notTranslatedKeysTotal": "⚠️ Μη μεταφρασμένα κλειδιά: {total}",
523
+ "noSourceFilesFound": "⚠️ Δεν βρέθηκαν αρχεία πηγής στον κατάλογο προέλευσης.",
524
+ "reviewNotTranslatedKeys": "💡 Ελέγξτε τα μη μεταφρασμένα κλειδιά",
525
+ "analysisCompletedSuccessfully": "🎉 Η ανάλυση ολοκληρώθηκε με επιτυχία!",
526
+ "detectedSourceDirectory": "Εντοπίστηκε κατάλογος πηγής: {sourceDir}",
527
+ "detectedI18nDirectory": "Εντοπίστηκε κατάλογος i18n: {i18nDir}",
528
+ "fileInfo": "📄 {namespace}: {keys} κλειδιά",
529
+ "failedToAnalyzeUsage": "❌ Αποτυχία ανάλυσης χρήσης: {error}",
530
+ "failedToAnalyzeFile": "❌ Απέτυχε η ανάλυση του αρχείου: {error}",
531
+ "failedToExtractKeys": "❌ Αποτυχία εξαγωγής κλειδιών από {filePath}: {error}",
532
+ "analysisFailedError": "❌ Η ανάλυση απέτυχε: {error}",
533
+ "analyzerInitialized": "Αρχικοποιήθηκε ο αναλυτής",
534
+ "analyzerInitFailed": "Η προετοιμασία του αναλυτή απέτυχε: {error}",
535
+ "argsParsed": "Τα επιχειρήματα αναλύθηκαν",
536
+ "processedFiles": "Επεξεργασμένο {processedFiles} του {totalFiles} αρχεία.",
537
+ "argsParseFailed": "Η ανάλυση επιχειρημάτων απέτυχε: {error}",
538
+ "translationDiscoveryError": "Σφάλμα εύρεσης μετάφρασης: {error}",
539
+ "fileTraversalError": "Σφάλμα διέλευσης αρχείου: {error}",
540
+ "sourceEqualsI18nWarn": "{reason}. Η ανάλυση χρήσης δεν θα σαρώσει τα αρχεία τοπικών ρυθμίσεων ως πηγαίο κώδικα.",
541
+ "i18nEqualsSourceWarn": "⚠️ Ο κατάλογος I18n και ο κατάλογος πηγής είναι οι ίδιοι. Αυτό μπορεί να προκαλέσει προβλήματα με την ανάλυση.",
542
+ "usageAnalysisFailed": "⚠️ Η ανάλυση χρήσης απέτυχε: {error}",
543
+ "translationFileParseError": "⚠️ Σφάλμα ανάλυσης αρχείου μετάφρασης: {error}",
544
+ "translationKeysLoadError": "⚠️ Σφάλμα φόρτωσης κλειδιών μετάφρασης: {error}",
545
+ "languageCompletenessStats": "🌐 {language}: {translated}/{total} ({completeness}% μεταφρασμένο)",
546
+ "missingKeysCount": "⚠️ Κλειδιά που λείπουν: {count}",
547
+ "analyzingTranslationCompleteness": "Ανάλυση της πληρότητας της μετάφρασης...",
548
+ "unusedKeysCount": "Αχρησιμοποίητα κλειδιά: {count}",
549
+ "usedKeysCount": "Χρησιμοποιημένα κλειδιά: {count}",
550
+ "availableKeysCount": "Διαθέσιμα κλειδιά: {count}",
551
+ "analysisResults": "Αποτελέσματα ανάλυσης:",
552
+ "i18nDirectoryNotFound": "⚠️ Ο κατάλογος I18n δεν βρέθηκε. Ελέγξτε τη διαδρομή.",
553
+ "sourceDirectoryNotFound": "⚠️ Ο κατάλογος πηγής δεν βρέθηκε: {dir}",
554
+ "checkUsage": {
555
+ "title": "🔍 I18NTK USAGE ANALYSIS",
556
+ "analyzing_source_files": "🔍 Ανάλυση αρχείων πηγής...",
557
+ "source_directory_thissourcedir": "📁 Κατάλογος πηγής: {sourceDir}",
558
+ "i18n_directory_thisi18ndir": "📁 Κατάλογος i18n: {i18nDir}",
559
+ "found_files_in_source": "✅ Βρέθηκε {numFiles} αρχεία στον κατάλογο προέλευσης",
560
+ "no_source_files_found": "⚠️ Δεν βρέθηκαν αρχεία πηγής στον καθορισμένο κατάλογο",
561
+ "processedFiles": "📊 Επεξεργασμένο {processedFiles} του {totalFiles} αρχεία",
562
+ "failedToProcessFile": "❌ Απέτυχε η επεξεργασία",
563
+ "found_thisusedkeyssize_unique_": "🔍 Βρέθηκε {usedKeysSize} μοναδικά μεταχειρισμένα κλειδιά",
564
+ "total_key_usages_totalkeysfoun": "📊 Συνολικές χρήσεις κλειδιών: {totalKeysFound}",
565
+ "loading_available_translation_": "📂 Φόρτωση διαθέσιμων κλειδιών μετάφρασης...",
566
+ "found_thisavailablekeyssize_av": "✅ Βρέθηκε {availableKeysSize} διαθέσιμα κλειδιά",
567
+ "message": "Ανάλυση της χρήσης κλειδιού μετάφρασης στο έργο σας...",
568
+ "usage_analysis_results": "📊 USAGE ANALYSIS RESULTS",
569
+ "source_files_scanned_thisfileu": "📁 Τα αρχεία προέλευσης σαρώθηκαν: {fileUsageSize}",
570
+ "available_translation_keys_thi": "✅ Διαθέσιμα κλειδιά μετάφρασης: {availableKeysSize}",
571
+ "used_translation_keys_thisused": "🔍 Χρησιμοποιημένα κλειδιά μετάφρασης: {usedKeysSize}",
572
+ "dynamic_keys_detected_dynamick": "⚡ Εντοπίστηκαν δυναμικά κλειδιά: {dynamicKeysLength}",
573
+ "unused_keys_unusedkeyslength": "🗑️ Αχρησιμοποίητα κλειδιά: {unusedKeysLength}",
574
+ "missing_keys_missingkeyslength": "❌ Κλειδιά που λείπουν: {missingKeysLength}",
575
+ "translation_completeness_title": "📈 ΠΛΗΡΕΣΗ ΜΕΤΑΦΡΑΣΗΣ",
576
+ "language_completeness_stats": "{language}: {translated}/{total} κλειδιά ({percentage}%)",
577
+ "n_sample_unused_keys": "🗑️ ΔΕΙΓΜΑ ΑΧΡΗΣΙΜΟΠΟΙΗΤΩΝ ΚΛΕΙΔΙΩΝ (πρώτα 5):",
578
+ "key": "🔑 {key}",
579
+ "and_unusedkeyslength_5_more": "... και {count} περισσότερα αχρησιμοποίητα κλειδιά",
580
+ "n_sample_missing_keys": "❌ ΔΕΙΓΜΑ ΚΛΕΙΔΙΩΝ ΠΟΥ ΛΕΙΠΟΥΝ (πρώτα 5):",
581
+ "and_missingkeyslength_5_more": "... και {count} περισσότερα κλειδιά που λείπουν",
582
+ "n_generating_detailed_report": "📊 Δημιουργία λεπτομερούς αναφοράς...",
583
+ "report_saved_reportpath": "📄 Η αναφορά αποθηκεύτηκε: {reportPath}",
584
+ "n_recommendations": "💡 ΠΡΟΤΑΣΕΙΣ:",
585
+ "consider_removing_unused_trans": "🗑️ Εξετάστε το ενδεχόμενο κατάργησης μεταφράσεων που δεν χρησιμοποιούνται για να μειώσετε το μέγεθος του πακέτου",
586
+ "add_missing_translation_keys_t": "➕ Προσθέστε κλειδιά μετάφρασης που λείπουν για να διατηρήσετε τη συνέπεια",
587
+ "review_dynamic_keys_manually_t": "🔍 Ελέγξτε τα δυναμικά κλειδιά με μη αυτόματο τρόπο (μπορεί να είναι έγκυρα)",
588
+ "all_translation_keys_are_prope": "✅ Όλα τα κλειδιά μετάφρασης χρησιμοποιούνται σωστά!",
589
+ "n_next_steps": "🎯 NEXT STEPS:",
590
+ "2_check_the_detailed_report_fo": "2. Ελέγξτε τη λεπτομερή αναφορά για συγκεκριμένα θέματα",
591
+ "help_message": "I18n Χρήση Αναλυτή Χρήσης: node i18ntk-usage.js [επιλογές] Επιλογές: --source-dir <dir> Κατάλογος πηγής για σάρωση (προεπιλογή: ./src) --i18n-dir <dir> Κατάλογος I18n (προεπιλογή: ./src/locales) --output-report Δημιουργία λεπτομερούς αναφοράς --output-dir <dir> Κατάλογος εξόδου για αναφορές (προεπιλογή: ./αναφορές) --βοήθεια Εμφάνιση αυτής της βοήθειας Παραδείγματα: κόμβος i18ntk-usage.js --output-report node i18ntk-usage.js --source-dir=./app --i18n-dir=./locales κόμβος i18ntk-usage.js --/output-usage.js --/output-report node i18ntk-usage.js --source-dir=./app --i18n-dir=./locales node i18ntk-usage.js --/output-usage.js --/output-usage.js --/output-report node.",
592
+ "1_review_the_analysis_results": "1. Ελέγξτε τα αποτελέσματα της ανάλυσης στην κονσόλα ή στην αναφορά που δημιουργήθηκε.",
593
+ "2_run_with_outputreport_for_de": "2. Εκτελέστε με --output-report για λεπτομερή αναφορά.",
594
+ "3_remove_unused_keys_or_add_mi": "3. Αφαιρέστε τα αχρησιμοποίητα κλειδιά ή προσθέστε κλειδιά που λείπουν στον πηγαίο κώδικα.",
595
+ "4_rerun_analysis_to_verify_imp": "4. Επαναλάβετε την ανάλυση για να επαληθεύσετε τις βελτιώσεις.",
596
+ "noSourceFilesFound": "Δεν βρέθηκαν αρχεία πηγής για ανάλυση.",
597
+ "i18nDirectoryNotFound": "Ο κατάλογος I18n δεν βρέθηκε: {i18nDir}",
598
+ "noTranslationLanguagesFound": "Δεν βρέθηκαν γλώσσες μετάφρασης.",
599
+ "failedToAnalyzeFile": "Απέτυχε η ανάλυση του αρχείου {filePath}: {error}",
600
+ "failedToAnalyzeLanguage": "Απέτυχε η ανάλυση της γλώσσας {language}: {error}",
601
+ "translationCompletenessAnalysisFailed": "Η ανάλυση πληρότητας μετάφρασης απέτυχε: {error}",
602
+ "n": "\\n"
603
+ },
604
+ "complete": {
605
+ "configLoadedSuccessfully": "Η διαμόρφωση φορτώθηκε με επιτυχία",
606
+ "configLoadingFailed": "Η φόρτωση της διαμόρφωσης απέτυχε",
607
+ "title": "🌍 ΟΛΟΚΛΗΡΩΣΗ ΜΕΤΑΦΡΑΣΗΣ I18NTK",
608
+ "separator": "============================================================",
609
+ "sourceDir": "📁 Κατάλογος πηγής: {sourceDir}",
610
+ "sourceLanguage": "🌐 Γλώσσα πηγής: {sourceLanguage}",
611
+ "dryRunMode": "🧪 Λειτουργία ξηρής λειτουργίας - δεν θα γίνουν αλλαγές",
612
+ "languages": "🌍 Διαθέσιμες γλώσσες: {languages}",
613
+ "addingMissingKeys": "➕ Προσθήκη κλειδιών που λείπουν στα αρχεία μετάφρασης...",
614
+ "processing": "🔄 Επεξεργασία {language}...",
615
+ "addedKeys": "✅ Προστέθηκε {count} λείπουν κλειδιά",
616
+ "changeDetails": "📝 {file}: {key}",
617
+ "andMore": "...και {count} περισσότερο",
618
+ "noChangesNeeded": "✅ Δεν χρειάζονται αλλαγές για {language}",
619
+ "summaryTitle": "📊 ΣΥΝΟΨΗ ΟΛΟΚΛΗΡΩΣΗΣ",
620
+ "totalChanges": "📝 Συνολικές αλλαγές: {totalChanges}",
621
+ "languagesProcessed": "🌍 Γλώσσες που υποβλήθηκαν σε επεξεργασία: {languagesProcessed}",
622
+ "missingKeysAdded": "➕ Προστέθηκαν κλειδιά που λείπουν: {missingKeysAdded}",
623
+ "nextStepsTitle": "📋 NEXT STEPS",
624
+ "nextStep1": "1. Εκτελέστε την ανάλυση χρήσης:",
625
+ "nextStep2": "κόμβος i18ntk-usage.js --output-report",
626
+ "nextStep3": "2. Επικύρωση μεταφράσεων:",
627
+ "nextStep4": "κόμβος i18ntk-validate.js",
628
+ "nextStep5": "3. Αναλύστε μοτίβα:",
629
+ "nextStep6": "κόμβος i18ntk-analyze.js",
630
+ "allKeysAvailable": "🎉 Όλα τα κλειδιά μετάφρασης είναι πλέον διαθέσιμα!",
631
+ "runWithoutDryRun": "💡 Εκτελέστε χωρίς --dry-run για να εφαρμόσετε αλλαγές",
632
+ "deletingOldReport": "🗑️ Διαγραφή παλιάς αναφοράς...",
633
+ "generatingFreshAnalysis": "📊 Δημιουργία νέας ανάλυσης χρήσης...",
634
+ "couldNotGenerate": "❌ Δεν ήταν δυνατή η δημιουργία ανάλυσης χρήσης",
635
+ "reportNotFound": "📋 Η αναφορά χρήσης δεν βρέθηκε. Χρήση κοινών πλήκτρων...",
636
+ "foundMissingKeys": "📋 Βρέθηκε {count} λείπουν κλειδιά από την ανάλυση χρήσης",
637
+ "couldNotParse": "❌ Δεν ήταν δυνατή η ανάλυση της αναφοράς χρήσης. Χρήση κοινών πλήκτρων..."
638
+ },
639
+ "noTranslationLanguagesFound": "Δεν βρέθηκαν γλώσσες μετάφρασης",
640
+ "failedToAnalyzeLanguage": "Απέτυχε η ανάλυση της γλώσσας",
641
+ "translationCompletenessAnalysisFailed": "Η ανάλυση πληρότητας μετάφρασης απέτυχε",
642
+ "failedToProcessFile": "Απέτυχε η επεξεργασία του αρχείου:",
643
+ "failedToSaveReport": "Αποτυχία αποθήκευσης αναφοράς χρήσης: {error}",
644
+ "i18nDirectoryDoesNotExist": "Ο κατάλογος I18n δεν υπάρχει: {dir}",
645
+ "reportSavedTo": "Η αναφορά χρήσης αποθηκεύτηκε σε: {reportPath}",
646
+ "sourceDirectoryDoesNotExist": "Ο κατάλογος πηγής δεν υπάρχει: {dir}",
647
+ "noSourceDirectoryConfigured": "(καμία ρύθμιση παραμέτρων)"
648
+ },
649
+ "validate": {
650
+ "help_message": "I18n Χρήση εργαλείου επικύρωσης μετάφρασης: node i18ntk-validate.js [επιλογές] Επιλογές: --source-dir <dir> Κατάλογος πηγής για σάρωση (προεπιλογή: ./src) --i18n-dir <dir> Κατάλογος I18n (προεπιλογή: ./src/locales) --output-report Δημιουργία λεπτομερούς αναφοράς --output-dir <dir> Κατάλογος εξόδου για αναφορές (προεπιλογή: ./αναφορές) --help Εμφάνιση αυτής της βοήθειας Παραδείγματα: κόμβος i18ntk-validate.js --output-report node i18ntk-validate.js --source-dir=./app --i18n-dir=./locales κόμβος i18ntk-validate.",
651
+ "title": "🔍 I18n Translation Validator",
652
+ "message": "Έναρξη διαδικασίας επικύρωσης...",
653
+ "sourceDirectory": "📁 Κατάλογος πηγής: {dir}",
654
+ "sourceLanguage": "🌍 Γλώσσα πηγής: {sourceLanguage}",
655
+ "strictMode": "⚙️ Αυστηρή λειτουργία: {mode}",
656
+ "noTargetLanguages": "Δεν έχουν διαμορφωθεί γλώσσες προορισμού. παράβλεψη επικύρωσης στόχου. Προσθήκη γλωσσών μέσω του \"i18ntk init --languages=de,fr\".",
657
+ "validatingLanguages": "🌍 Γλώσσες επικύρωσης: {langs}",
658
+ "validatingLanguage": "🔍 Γλώσσα επικύρωσης: {lang}",
659
+ "filesCount": "📄 Αρχεία: {count}",
660
+ "keysCount": "🔑 Κλειδιά: {count}",
661
+ "missingFilesCount": "📁 Αρχεία που λείπουν: {count}",
662
+ "syntaxErrorsCount": "❌ Συντακτικά σφάλματα: {count}",
663
+ "translationPercentage": "🎯 Μετάφραση: {percentage}% ({translated}/{total} κλειδιά)",
664
+ "validationSummary": "📊 ΣΥΝΟΨΗ ΕΠΙΚΥΡΩΣΗΣ",
665
+ "validation_failed": "❌ Η επικύρωση απέτυχε: {error}",
666
+ "totalErrors": "❌ Σύνολο σφαλμάτων: {count}",
667
+ "totalWarnings": "⚠️ Συνολικές προειδοποιήσεις: {count}",
668
+ "errorsSection": "❌ ERRORS",
669
+ "warningsSection": "⚠️ WARNINGS",
670
+ "recommendationsSection": "💡 ΠΡΟΤΑΣΕΙΣ",
671
+ "fixErrorsFirst": "1. Διορθώστε πρώτα όλα τα σφάλματα",
672
+ "resolveMissingFilesAndSyntaxErrors": "1. Επιλύστε τα αρχεία που λείπουν και τα συντακτικά σφάλματα",
673
+ "fixStructuralInconsistencies": "2. Διορθώστε δομικές ασυνέπειες",
674
+ "completeMissingTranslations": "3. Συμπληρώστε τις μεταφράσεις που λείπουν",
675
+ "rerunValidation": "4. Εκτελέστε ξανά την επικύρωση για να επαληθεύσετε τις διορθώσεις",
676
+ "addressWarnings": "Απευθυνθείτε σε προειδοποιήσεις για βελτίωση της ποιότητας",
677
+ "reviewWarnings": "Ελέγξτε τις προειδοποιήσεις και διορθώστε όπου χρειάζεται",
678
+ "considerRunningWithStrict": "2. Εξετάστε το ενδεχόμενο εκτέλεσης με --strict flag για αυστηρότερη επικύρωση",
679
+ "allValidationsPassed": "🎉 Όλες οι επικυρώσεις πέρασαν!",
680
+ "considerRunningUsageAnalysis": "Εξετάστε το ενδεχόμενο εκτέλεσης ανάλυσης χρήσης: node i18ntk-usage.js",
681
+ "deletedOldReport": "🗑️ Διαγράφηκε η παλιά αναφορά επικύρωσης",
682
+ "sourceDir": "📁 Κατάλογος πηγής: {sourceDir}",
683
+ "i18nDir": "🌐 Κατάλογος I18n: {i18nDir}",
684
+ "loadingTranslationFiles": "📋 Φόρτωση αρχείων μετάφρασης...",
685
+ "foundTranslationFilesCount": "✅ Βρέθηκε {count} αρχεία μετάφρασης",
686
+ "analyzingTranslations": "🔍 Ανάλυση μεταφράσεων...",
687
+ "validationCompletedSuccessfully": "🎉 Η επικύρωση ολοκληρώθηκε με επιτυχία!",
688
+ "validationErrorsFound": "⚠️ Βρέθηκαν σφάλματα επικύρωσης: {count}",
689
+ "validationWarningsFound": "⚠️ Βρέθηκαν προειδοποιήσεις επικύρωσης: {count}",
690
+ "validationPassed": "✅ Η επικύρωση πέρασε χωρίς σφάλματα",
691
+ "validationFailed": "Η επικύρωση απέτυχε: {error}",
692
+ "startingValidationProcess": "🔍 Έναρξη διαδικασίας επικύρωσης...",
693
+ "validationProcessCompletedSuccessfully": "✅ Η διαδικασία επικύρωσης ολοκληρώθηκε με επιτυχία",
694
+ "stackTrace": "Ίχνη στοίβας: {stack}",
695
+ "authenticationFailed": "❌ Ο έλεγχος ταυτότητας απέτυχε. Δεν επιτρέπεται η πρόσβαση.",
696
+ "fatalValidationError": "❌ Θανατηφόρο σφάλμα επικύρωσης: {error}",
697
+ "configAccess": "Πρόσβαση στις ρυθμίσεις παραμέτρων για επικύρωση",
698
+ "configValidated": "Η διαμόρφωση επικυρώθηκε με επιτυχία",
699
+ "configError": "Σφάλμα διαμόρφωσης: {error}",
700
+ "validatorInit": "Εκκίνηση του εργαλείου επικύρωσης I18n",
701
+ "validatorInitialized": "Το πρόγραμμα επικύρωσης I18n ξεκίνησε με επιτυχία",
702
+ "validatorInitError": "Σφάλμα προετοιμασίας επικυρωτή: {error}",
703
+ "argsParsing": "Ανάλυση ορισμάτων γραμμής εντολών",
704
+ "argsParsed": "Τα ορίσματα της γραμμής εντολών αναλύθηκαν με επιτυχία",
705
+ "argsParseError": "Σφάλμα ανάλυσης επιχειρημάτων: {error}",
706
+ "languagesScan": "Σάρωση διαθέσιμων γλωσσών",
707
+ "languagesFound": "Θεμελιώ {count} γλώσσες",
708
+ "languagesScanError": "Σφάλμα σάρωσης γλώσσας: {error}",
709
+ "filesScan": "Θεμελιώ {count} αρχεία σε {language}",
710
+ "filesScanError": "Σφάλμα σάρωσης αρχείων: {error}",
711
+ "jsonValidated": "Η σύνταξη JSON επικυρώθηκε: {filePath}",
712
+ "jsonValidationError": "Σφάλμα επικύρωσης JSON: {error}",
713
+ "languageValidation": "Γλώσσα επικύρωσης: {language}",
714
+ "languageValidationError": "Σφάλμα επικύρωσης γλώσσας: {error}",
715
+ "fileDeleted": "Το αρχείο διαγράφηκε",
716
+ "runStarted": "Έναρξη εκτέλεσης επικύρωσης",
717
+ "runCompleted": "Η εκτέλεση επικύρωσης ολοκληρώθηκε με επιτυχία",
718
+ "runError": "Η εκτέλεση επικύρωσης απέτυχε: {error}",
719
+ "scriptExecution": "Εκτέλεση σεναρίου",
720
+ "validationCompleted": "Ολοκληρώθηκε η επικύρωση",
721
+ "validationError": "Σφάλμα επικύρωσης: {error}",
722
+ "separator": "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━",
723
+ "languageHeader": "🌐 Γλώσσα: {language}",
724
+ "validationResults": "📊 Αποτελέσματα επικύρωσης",
725
+ "noErrors": "✅ Δεν βρέθηκαν σφάλματα",
726
+ "noWarnings": "✅ Δεν βρέθηκαν προειδοποιήσεις",
727
+ "summaryHeader": "📋 OVERALL SUMMARY",
728
+ "progressIndicator": "⏳ Επεξεργασία...",
729
+ "completedIndicator": "✅ Ολοκληρώθηκε",
730
+ "errorIndicator": "❌ Σφάλμα",
731
+ "warningIndicator": "⚠️ Προειδοποίηση",
732
+ "infoIndicator": "ℹ️ Πληροφορίες",
733
+ "sourceDirNotConfigured": "Ο κατάλογος προέλευσης δεν έχει ρυθμιστεί",
734
+ "sourceLanguageNotConfigured": "Η γλώσσα πηγής δεν έχει διαμορφωθεί",
735
+ "translationFunctionNotInitialized": "Η λειτουργία μετάφρασης δεν προετοιμάστηκε σωστά",
736
+ "sourceLanguageDirectoryNotFound": "Ο κατάλογος γλώσσας πηγής δεν βρέθηκε",
737
+ "specifiedLanguageNotFound": "Η καθορισμένη γλώσσα δεν βρέθηκε",
738
+ "noJsonFilesFound": "Δεν βρέθηκαν αρχεία JSON στον κατάλογο προέλευσης: {sourceDir}",
739
+ "i18nDirectoryNotFound": "Ο κατάλογος I18n δεν βρέθηκε: {i18nDir}",
740
+ "invalidDirectoryPaths": "Εντοπίστηκαν μη έγκυρες διαδρομές καταλόγου",
741
+ "invalidSampleFilePath": "Μη έγκυρη διαδρομή δείγματος αρχείου",
742
+ "failedToCreateSampleTranslationFile": "Αποτυχία δημιουργίας δείγματος αρχείου μετάφρασης",
743
+ "invalidFilePathDetected": "Εντοπίστηκε μη έγκυρη διαδρομή αρχείου",
744
+ "failedToWriteFile": "Αποτυχία εγγραφής αρχείου: {filePath}",
745
+ "invalidSourceDirectory": "Μη έγκυρος κατάλογος πηγής: {sourceDir}",
746
+ "invalidSourceLanguageDirectory": "Μη έγκυρος κατάλογος γλώσσας πηγής: {sourceDir}"
747
+ },
748
+ "adminCli": {
749
+ "setupPinProtectionTitle": "🔐 Ρύθμιση προστασίας PIN διαχειριστή",
750
+ "setupPinProtectionDescription": "Αυτό θα απαιτήσει ένα PIN 4-6 ψηφίων για διαχειριστικές λειτουργίες.",
751
+ "enablePinProtectionPrompt": "Θέλετε να ενεργοποιήσετε την προστασία PIN διαχειριστή;",
752
+ "setupCancelled": "Η ρύθμιση προστασίας PIN διαχειριστή ακυρώθηκε.",
753
+ "enterPinPrompt": "Εισαγάγετε ένα 4-6ψήφιο PIN:",
754
+ "pinFormatError": "❌ Το PIN πρέπει να είναι 4-6 ψηφία. Δοκιμάστε ξανά.",
755
+ "confirmPinPrompt": "Επιβεβαίωση PIN:",
756
+ "pinMismatchError": "❌ Τα PIN δεν ταιριάζουν. Δοκιμάστε ξανά.",
757
+ "pinProtectionEnabledSuccess": "✅ Η προστασία PIN διαχειριστή ενεργοποιήθηκε με επιτυχία!",
758
+ "pinRecoveryWarning": "⚠️ Να θυμάστε το PIN σας - δεν μπορεί να ανακτηθεί εάν χαθεί.",
759
+ "setupPinProtectionFailed": "❌ Απέτυχε η ρύθμιση της προστασίας PIN διαχειριστή.",
760
+ "errorSettingUpPin": "❌ Σφάλμα κατά τη ρύθμιση του PIN διαχειριστή: {message}",
761
+ "authRequiredForOperation": "🔐 Απαιτείται έλεγχος ταυτότητας διαχειριστή για: {operation}",
762
+ "invalidPinFormat": "❌ Μη έγκυρη μορφή PIN. Το PIN πρέπει να είναι 4-6 ψηφία.",
763
+ "authenticationSuccess": "✅ Επιτυχής έλεγχος ταυτότητας!",
764
+ "invalidPinAttemptsRemaining": "❌ Μη έγκυρο PIN. {remaining} απομένουν προσπάθειες.",
765
+ "authenticationFailedAccessDenied": "❌ Ο έλεγχος ταυτότητας απέτυχε. Δεν επιτρέπεται η πρόσβαση.",
766
+ "authenticationError": "❌ Σφάλμα ελέγχου ταυτότητας: {message}",
767
+ "pinProtectionNotEnabled": "Η προστασία PIN διαχειριστή δεν είναι ενεργοποιημένη αυτήν τη στιγμή.",
768
+ "disablingPinProtectionTitle": "🔓 Απενεργοποίηση Προστασίας PIN διαχειριστή",
769
+ "confirmDisablePinProtection": "Είστε βέβαιοι ότι θέλετε να απενεργοποιήσετε την προστασία PIN διαχειριστή;",
770
+ "operationCancelled": "Η λειτουργία ακυρώθηκε.",
771
+ "pinProtectionDisabledSuccess": "✅ Απενεργοποιήθηκε η προστασία PIN διαχειριστή.",
772
+ "disablePinProtectionFailed": "❌ Απέτυχε η απενεργοποίηση της προστασίας PIN διαχειριστή.",
773
+ "errorDisablingPinProtection": "❌ Σφάλμα κατά την απενεργοποίηση της προστασίας διαχειριστή: {message}",
774
+ "adminProtectionStatusTitle": "🔐 Κατάσταση προστασίας διαχειριστή",
775
+ "statusEnabled": "Κατάσταση: ✅ ΕΝΕΡΓΟΠΟΙΗΜΕΝΟ",
776
+ "protectionDetails": "Προστασία: Απαιτείται PIN 4-6 ψηφίων για λειτουργίες διαχειριστή",
777
+ "lockoutDetails": "Κλείδωμα: 3 αποτυχημένες προσπάθειες = κλείδωμα 15 λεπτών",
778
+ "statusDisabled": "Κατάσταση: ❌ ΑΠΕΝΕΡΓΟΠΟΙΗΜΕΝΟ",
779
+ "noAuthRequired": "Προστασία: Δεν απαιτείται έλεγχος ταυτότητας",
780
+ "unprotectedRisk": "Κίνδυνος: Οι διοικητικές λειτουργίες είναι απροστάτευτες",
781
+ "errorCheckingAdminStatus": "❌ Σφάλμα κατά τον έλεγχο της κατάστασης διαχειριστή: {message}",
782
+ "authRequired": "🔐 Απαιτείται έλεγχος ταυτότητας διαχειριστή.",
783
+ "invalidPin": "❌ Μη έγκυρο PIN.",
784
+ "authSuccess": "✅ Επιτυχής έλεγχος ταυτότητας!",
785
+ "adminPinSetupCli": "admin_pin_setup_cli",
786
+ "adminAuthFailedCli": "admin_auth_failed_cli",
787
+ "adminAuthDisabledCli": "admin_auth_disabled_cli",
788
+ "protectedAccess": "Προστατευμένη πρόσβαση: Απαιτείται έλεγχος ταυτότητας διαχειριστή για ευαίσθητες λειτουργίες.",
789
+ "enterPin": "Εισαγάγετε το PIN διαχειριστή:",
790
+ "accessGranted": "Παραχωρήθηκε πρόσβαση."
791
+ },
792
+ "adminPin": {
793
+ "setup_title": "🔐 Ρύθμιση PIN διαχειριστή",
794
+ "setup_separator": "============================================================",
795
+ "setup_description": "Δημιουργήστε ένα PIN 4-6 ψηφίων για πρόσβαση διαχειριστή σε ευαίσθητες ρυθμίσεις.",
796
+ "required_for_title": "Αυτό το PIN θα απαιτείται για:",
797
+ "required_for_1": "• Αλλαγή ρυθμίσεων ασφαλείας",
798
+ "required_for_2": "• Τροποποίηση προηγμένων διαμορφώσεων",
799
+ "required_for_3": "• Πρόσβαση σε εργαλεία εντοπισμού σφαλμάτων",
800
+ "required_for_4": "• Επαναφορά ρυθμίσεων",
801
+ "setup_note": "💡 Σημείωση: Θα βλέπετε αστερίσκους (*) καθώς πληκτρολογείτε - αυτοί είναι απλώς χαρακτήρες απόκρυψης.",
802
+ "setup_digits_only": "Μόνο οι αριθμοί 0-9 γίνονται δεκτοί ως ψηφία PIN.",
803
+ "invalid_pin_length": "❌ Μη έγκυρο PIN. Πρέπει να είναι 4-6 ψηφία (μόνο οι αριθμοί 0-9).",
804
+ "invalid_pin_example": "Παράδειγμα: 1234 ή 567890",
805
+ "pins_do_not_match": "❌ Τα PIN δεν ταιριάζουν.",
806
+ "setup_success": "✅ Το PIN διαχειριστή ορίστηκε με επιτυχία!",
807
+ "setup_warning": "⚠️ Διατηρήστε αυτό το PIN ασφαλές. Δεν μπορεί να ανακτηθεί εάν χαθεί.",
808
+ "setup_error": "❌ Σφάλμα κατά τη ρύθμιση του PIN:",
809
+ "session_expired": "⏰ Η περίοδος λειτουργίας διαχειριστή έληξε λόγω αδράνειας.",
810
+ "no_pin_set_setting_up": "⚠️ Δεν έχει οριστεί PIN διαχειριστή. Ρύθμιση PIN...",
811
+ "no_pin_configured_access_denied": "⚠️ Δεν έχει διαμορφωθεί το PIN διαχειριστή. Δεν επιτρέπεται η πρόσβαση.",
812
+ "use_admin_settings_to_set_pin": "💡 Χρησιμοποιήστε τις ρυθμίσεις διαχειριστή για να ρυθμίσετε πρώτα ένα PIN.",
813
+ "locked_out": "🔒 Η πρόσβαση διαχειριστή είναι κλειδωμένη λόγω πάρα πολλών αποτυχημένων προσπαθειών.",
814
+ "wait_before_retry": "Περιμένετε 5 λεπτά πριν δοκιμάσετε ξανά.",
815
+ "access_granted": "✅ Παραχωρήθηκε πρόσβαση διαχειριστή.",
816
+ "incorrect_pin": "❌ Λανθασμένος κωδικός PIN. {attempts} απομένουν προσπάθειες.",
817
+ "verify_pin_error": "❌ Σφάλμα κατά την επαλήθευση του PIN:",
818
+ "already_configured": "✅ Το PIN διαχειριστή έχει ήδη διαμορφωθεί.",
819
+ "optional_setup_title": "🔐 Ρύθμιση PIN διαχειριστή (Προαιρετικό)",
820
+ "optional_setup_description": "Η προστασία PIN διαχειριστή προσθέτει ασφάλεια για ευαίσθητες λειτουργίες όπως:",
821
+ "setup_prompt": "Θέλετε να ρυθμίσετε ένα PIN διαχειριστή; (y/N):",
822
+ "skipping_setup": "⏭️ Παράλειψη ρύθμισης PIN διαχειριστή. Μπορείτε να το ρυθμίσετε αργότερα στις ρυθμίσεις.",
823
+ "setup_prompt_error": "❌ Σφάλμα κατά την προτροπή ρύθμισης PIN:",
824
+ "protectedAccess": "Προστατευμένη πρόσβαση: Απαιτείται έλεγχος ταυτότητας διαχειριστή για ευαίσθητες λειτουργίες.",
825
+ "enterPin": "Εισαγάγετε το PIN διαχειριστή:",
826
+ "accessGranted": "Παραχωρήθηκε πρόσβαση.",
827
+ "invalidPin": "❌ Μη έγκυρο PIN. Δοκιμάστε ξανά.",
828
+ "weak_pin_warning": "⚠️ ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Αυτό το PIN φαίνεται να είναι αδύναμο ή κοινό.",
829
+ "weak_pin_suggestion": "💡 Σκεφτείτε να χρησιμοποιήσετε ένα ισχυρότερο PIN με ποικίλα ψηφία.",
830
+ "use_anyway_prompt": "Πληκτρολογήστε \"ναι\" για χρήση ούτως ή άλλως ή πατήστε Enter για να επιλέξετε διαφορετικό PIN:",
831
+ "enter_new_pin": "Εισαγάγετε νέο PIN διαχειριστή (4-6 ψηφία):",
832
+ "confirm_pin": "Επιβεβαίωση PIN διαχειριστή:",
833
+ "not_set": "Δεν έχει οριστεί",
834
+ "pin_display_mask": "####"
835
+ },
836
+ "debug": {
837
+ "title": "🔧 Εργαλεία εντοπισμού σφαλμάτων",
838
+ "separator": "============================================================",
839
+ "mainDebuggerSystemDiagnostics": "1. Διαγνωστικά συστήματος",
840
+ "_consoleTranslationsCheck": "// 2. Έλεγχος μεταφράσεων κονσόλας",
841
+ "_exportMissingKeys": "// 3. Εξαγωγή κλειδιών μετάφρασης που λείπουν",
842
+ "_replaceHardcodedConsole": "// 4. Αντικαταστήστε τις συμβολοσειρές της κονσόλας με σκληρό κώδικα",
843
+ "_consoleKeyChecker": "// 5. Έλεγχος πλήκτρων κονσόλας",
844
+ "debugLogs": "2. Αρχεία εντοπισμού σφαλμάτων",
845
+ "backToMainMenu": "0. Επιστροφή στο Κύριο Μενού",
846
+ "selectOption": "Επιλέξτε ένα εργαλείο εντοπισμού σφαλμάτων:",
847
+ "runningDebugTool": "Τρέξιμο {displayName}...",
848
+ "debugToolNotFound": "❌ Το εργαλείο εντοπισμού σφαλμάτων δεν βρέθηκε: {toolName}",
849
+ "errorRunningDebugTool": "Σφάλμα κατά την εκτέλεση του εργαλείου εντοπισμού σφαλμάτων \"{displayName}': {error}",
850
+ "recentDebugLogs": "📄 Πρόσφατα αρχεία καταγραφής εντοπισμού σφαλμάτων",
851
+ "noDebugLogsFound": "❌ Δεν βρέθηκαν αρχεία καταγραφής εντοπισμού σφαλμάτων.",
852
+ "debugLogsDirectoryNotFound": "❌ Ο κατάλογος αρχείων καταγραφής εντοπισμού σφαλμάτων δεν βρέθηκε.",
853
+ "selectLogPrompt": "Επιλέξτε αρχείο καταγραφής για προβολή (1-{count}):",
854
+ "invalidChoiceSelectRange": "Μη έγκυρη επιλογή. Επιλέξτε από τη διαθέσιμη γκάμα.",
855
+ "contentOf": "📄 Περιεχόμενο του {filename}:",
856
+ "pressEnterToContinue": "Πατήστε Enter για να συνεχίσετε..."
857
+ },
858
+ "detect_language_mismatches": {
859
+ "tool_title": "🔍 Εργαλείο ανίχνευσης ασυμφωνίας γλώσσας",
860
+ "separator": "=====================================",
861
+ "analyzing_file": "📄 Αναλύοντας {language}.json...",
862
+ "error_analyzing_file": "❌ Σφάλμα κατά την ανάλυση {filename}: {errorMessage}",
863
+ "results_title": "📊 ΑΠΟΤΕΛΕΣΜΑΤΑ ΑΝΙΧΝΕΥΣΗΣ ΑΝΤΙΣΤΟΙΧΙΑΣ ΓΛΩΣΣΑΣ",
864
+ "results_separator": "========================================",
865
+ "summary_title": "📋 SUMMARY:",
866
+ "total_files_analyzed": "Σύνολο αρχείων που αναλύθηκαν: {totalFiles}",
867
+ "files_with_mismatches": "Αρχεία με αναντιστοιχίες: {filesWithMismatches}",
868
+ "total_mismatches_found": "Συνολικές αναντιστοιχίες που βρέθηκαν: {totalMismatches}",
869
+ "no_mismatches_found": "✅ Δεν βρέθηκαν αναντιστοιχίες γλώσσας! Όλες οι μεταφράσεις φαίνεται να είναι στις σωστές τους γλώσσες.",
870
+ "detailed_results_title": "🔍 DETAILED RESULTS:",
871
+ "file_mismatch_header": "📄 {filename} ({language})",
872
+ "mismatches_count": "Θεμελιώ {count} αναντιστοιχία(ες):",
873
+ "mismatch_details": "{index}. Κλειδί: {key}",
874
+ "mismatch_value": "Τιμή: \"{value}\"",
875
+ "mismatch_issue": "Ζήτημα: {description}",
876
+ "recommendations_title": "💡 ΠΡΟΤΑΣΕΙΣ:",
877
+ "recommendation_1": "1. Ελέγξτε και μεταφράστε όλες τις καταχωρήσεις που επισημαίνονται με [TRANSLATE]",
878
+ "recommendation_2": "2. Αντικαταστήστε τα προθέματα γλώσσας (π.χ. [DE], [FR]) με σωστές μεταφράσεις",
879
+ "recommendation_3": "3. Μεταφράστε αγγλικό κείμενο στην κατάλληλη γλώσσα-στόχο",
880
+ "recommendation_4": "4. Χρησιμοποιήστε ισοδύναμα μητρικής γλώσσας για όλο το κείμενο που βλέπει ο χρήστης",
881
+ "recommendation_5": "5. Εκτελέστε ξανά αυτό το εργαλείο αφού κάνετε διορθώσεις για να επαληθεύσετε τις διορθώσεις",
882
+ "detailed_report_saved": "📄 Λεπτομερής αναφορά αποθηκεύτηκε σε: {reportPath}",
883
+ "error_saving_report": "❌ Σφάλμα αποθήκευσης αναφοράς: {errorMessage}",
884
+ "auto_fix_mode": "🔧 Λειτουργία αυτόματης επιδιόρθωσης {dryRun}",
885
+ "auto_fix_separator": "=====================================",
886
+ "fixed_file": "✅ Διορθώθηκε {filename}",
887
+ "auto_fix_summary_title": "📊 Σύνοψη αυτόματης επιδιόρθωσης:",
888
+ "total_fixes_applied": "Συνολικές διορθώσεις που εφαρμόστηκαν: {count}",
889
+ "preview_fixes_title": "🔍 Προεπισκόπηση διορθώσεων:",
890
+ "fix_details": "{file}: {key} Παλιά: \"{old}\"Νέο:\"{new}\"",
891
+ "more_fixes": "... και {count} περισσότερες διορθώσεις",
892
+ "run_with_apply_fixes": "💡 Εκτελέστε με --εφαρμογή για να εφαρμόσετε αυτές τις διορθώσεις",
893
+ "error_general": "❌ Σφάλμα:",
894
+ "mainDebuggerSystemDiagnostics": "Κύριος εντοπισμός σφαλμάτων / Διαγνωστικά συστήματος",
895
+ "exportMissingKeys": "Εξαγωγή κλειδιών που λείπουν",
896
+ "replaceHardcodedConsole": "Αντικαταστήστε την κονσόλα με σκληρό κώδικα",
897
+ "consoleKeyChecker": "Έλεγχος κλειδιών κονσόλας",
898
+ "debugLogs": "Αρχεία εντοπισμού σφαλμάτων",
899
+ "backToMainMenu": "Επιστροφή στο Κύριο Μενού",
900
+ "invalidChoiceSelectRange": "❌ Μη έγκυρη επιλογή. Επιλέξτε έναν αριθμό εντός του εμφανιζόμενου εύρους.",
901
+ "runningDebugTool": "Εκτέλεση εργαλείου εντοπισμού σφαλμάτων: {displayName}",
902
+ "debugToolNotFound": "Εργαλείο εντοπισμού σφαλμάτων \"{toolName}\"δεν βρέθηκε.",
903
+ "recentDebugLogs": "Πρόσφατα αρχεία καταγραφής εντοπισμού σφαλμάτων",
904
+ "noDebugLogsFound": "Δεν βρέθηκαν αρχεία καταγραφής εντοπισμού σφαλμάτων.",
905
+ "logEntry": "Καταχώριση ημερολογίου: {timestamp} - {message}",
906
+ "debugLogsDirectoryNotFound": "Ο κατάλογος αρχείων καταγραφής εντοπισμού σφαλμάτων δεν βρέθηκε."
907
+ },
908
+ "help": {
909
+ "title": "📊 ΒΟΗΘΕΙΑ ΔΙΑΧΕΙΡΙΣΗΣ I18NTK",
910
+ "usage": "Χρήση: node main/manage/index.js [επιλογές]",
911
+ "interactiveMode": "💡 Χρήση: node main/manage/index.js --command=<command> για άμεση εκτέλεση",
912
+ "showHelp": "📖 Χρησιμοποιήστε: node main/manage/index.js --help για διαθέσιμες εντολές",
913
+ "availableCommands": "📖 Διαθέσιμες εντολές:",
914
+ "initProject": "🚀 Αρχικοποιήστε νέες γλώσσες",
915
+ "analyzeTranslations": "🔍 Αναλύστε μεταφράσεις",
916
+ "validateTranslations": "✅ Επικύρωση μεταφράσεων",
917
+ "checkUsage": "📊 Ελέγξτε τη χρήση του κλειδιού",
918
+ "initCommand": "init - Εκκίνηση νέων γλωσσών",
919
+ "analyzeCommand": "ανάλυση - Ανάλυση μεταφράσεων",
920
+ "validateCommand": "επικύρωση - Επικύρωση μεταφράσεων",
921
+ "usageCommand": "χρήση - Ελέγξτε τη χρήση του κλειδιού",
922
+ "sizingCommand": "sizing - Αναλύστε το μέγεθος",
923
+ "completeCommand": "ολοκληρωμένες - Ολοκληρωμένες μεταφράσεις (100% κάλυψη)",
924
+ "summaryCommand": "περίληψη - Εμφάνιση κατάστασης έργου",
925
+ "debugCommand": "εντοπισμός σφαλμάτων - Εντοπισμός προβλημάτων μετάφρασης",
926
+ "scannerCommand": "σαρωτής - Σάρωση για κλειδιά",
927
+ "translateCommand": "μετάφραση - Αυτόματη μετάφραση αρχείων τοπικής ρύθμισης",
928
+ "menu": {
929
+ "pressEnterToContinue": "Πατήστε Enter για να συνεχίσετε...",
930
+ "title": "🌐 ΜΕΝΟΥ ΔΙΑΧΕΙΡΙΣΗΣ I18NTK",
931
+ "description": "Διαδραστικό μενού για τη διαχείριση της διεθνοποίησης",
932
+ "exit": "🚪 Έξοδος"
933
+ },
934
+ "commands": {
935
+ "init": "init - Εκκίνηση νέων γλωσσών",
936
+ "analyze": "ανάλυση - Ανάλυση μεταφράσεων",
937
+ "validate": "επικύρωση - Επικύρωση μεταφράσεων",
938
+ "usage": "χρήση - Ελέγξτε τη χρήση του κλειδιού",
939
+ "sizing": "sizing - Αναλύστε το μέγεθος",
940
+ "complete": "ολοκληρωμένες - Ολοκληρωμένες μεταφράσεις (100% κάλυψη)",
941
+ "summary": "περίληψη - Εμφάνιση κατάστασης έργου",
942
+ "debug": "εντοπισμός σφαλμάτων - Εντοπισμός προβλημάτων μετάφρασης"
943
+ },
944
+ "options": {
945
+ "sourceDir": "--πηγή-σκην <dir> Κατάλογος πηγής για ανάλυση",
946
+ "output": "--παραγωγή <file> Αρχείο εξόδου για την αναφορά",
947
+ "verbose": "--περιεκτική, -v Εμφάνιση λεπτομερών πληροφοριών",
948
+ "keepReports": "--keep-reports Διατηρήστε τις υπάρχουσες αναφορές",
949
+ "deleteReports": "--delete-reports Διαγραφή υπαρχουσών αναφορών",
950
+ "help": "--help, -h Εμφάνιση αυτής της βοήθειας"
951
+ },
952
+ "examples": {
953
+ "title": "Παραδείγματα:",
954
+ "example1": "κόμβος i18ntk-manage.js",
955
+ "example2": "κόμβος i18ntk-manage.js --source-dir ./locales",
956
+ "example3": "κόμβος i18ntk-manage.js --output summary-report.txt",
957
+ "example4": "κόμβος i18ntk-manage.js --verbose",
958
+ "example5": "κόμβος i18ntk-manage.js --source-dir ./locales --output report.json"
959
+ },
960
+ "features": {
961
+ "initProject": "🚀 Αρχικοποιήστε νέες γλώσσες",
962
+ "analyzeTranslations": "🔍 Αναλύστε μεταφράσεις",
963
+ "validateTranslations": "✅ Επικύρωση μεταφράσεων",
964
+ "checkUsage": "📊 Ελέγξτε τη χρήση του κλειδιού",
965
+ "completeTranslations": "🎯 Ολοκληρωμένες μεταφράσεις (100% κάλυψη)",
966
+ "showSizing": "📏 Ανάλυση μεγέθους",
967
+ "runWorkflow": "🔄 Εκτελέστε πλήρη ροή εργασίας",
968
+ "showStatus": "📋 Εμφάνιση κατάστασης έργου",
969
+ "deleteReports": "🗑️ Διαγράψτε όλες τις αναφορές",
970
+ "changeLanguage": "🌍 Αλλάξτε τη γλώσσα διεπαφής χρήστη",
971
+ "settings": "⚙️ Ρυθμίσεις",
972
+ "showHelp": "❓ Βοήθεια",
973
+ "debugTools": "🔧 Εργαλεία εντοπισμού σφαλμάτων"
974
+ },
975
+ "messages": {
976
+ "selectOption": "Επιλέξτε μια επιλογή:",
977
+ "invalidOption": "Μη έγκυρη επιλογή. Δοκιμάστε ξανά.",
978
+ "operationCompleted": "✅ Η λειτουργία ολοκληρώθηκε με επιτυχία!",
979
+ "pressEnter": "Πατήστε Enter για να συνεχίσετε...",
980
+ "goodbye": "👋 Αντίο!",
981
+ "unknownCommand": "Άγνωστη εντολή: {command}",
982
+ "nonInteractive": "⚠️ Εντοπίστηκε μη διαδραστική λειτουργία. Το μενού εμφανίζεται μόνο για αναφορά."
983
+ },
984
+ "i18n_helper": {
985
+ "translation_file_not_found": "Το αρχείο μετάφρασης δεν βρέθηκε: {translationFile}",
986
+ "error_loading_translations": "Σφάλμα φόρτωσης μεταφράσεων: {errorMessage}",
987
+ "translation_not_found": "Δεν βρέθηκε η μετάφραση για το κλειδί: {key}",
988
+ "translation_key_not_string": "Το κλειδί μετάφρασης δεν μετατρέπεται σε συμβολοσειρά: {key}",
989
+ "error_reading_locales_directory": "Σφάλμα κατά την ανάγνωση του καταλόγου τοπικών ρυθμίσεων: {errorMessage}"
990
+ }
991
+ },
992
+ "init": {
993
+ "initializationTitle": "🚀 Εργαλειοθήκη διαχείρισης i18n - Εκκίνηση έργου",
994
+ "initializationCancelled": "🚫 Η αρχικοποίηση ακυρώθηκε από τον χρήστη.",
995
+ "sourceDirectoryLabel": "📁 Κατάλογος πηγών: {dir}",
996
+ "requiredTitle": "Απαιτείται αρχικοποίηση",
997
+ "requiredBody": "Αυτό το έργο πρέπει να αρχικοποιηθεί πριν από την εκτέλεση αυτής της εντολής.",
998
+ "promptRunNow": "Θέλετε να εκτελέσετε την προετοιμασία τώρα; (y/N):",
999
+ "sourceLanguageLabel": "🌍 Γλώσσα πηγής: {language}",
1000
+ "detectedI18nFrameworks": "🔍 Εντοπίστηκε πλαίσιο(α) i18n: {frameworks}",
1001
+ "pinMustBe4Digits": "🔐 Το PIN πρέπει να είναι 4 ψηφία.",
1002
+ "existingDirectoriesFound": "📁 Βρέθηκαν υπάρχοντες κατάλογοι μετάφρασης:",
1003
+ "useExistingDirectoryPrompt": "Θέλετε να χρησιμοποιήσετε τον υπάρχοντα κατάλογο; (y/n)",
1004
+ "selectDirectoryPrompt": "Επιλέξτε έναν κατάλογο εισάγοντας τον αριθμό (ή επιλέξτε \"Δημιουργία νέου καταλόγου\")",
1005
+ "enterNewDirectoryName": "Εισαγάγετε το όνομα για τον νέο σας κατάλογο μετάφρασης",
1006
+ "createdNewDirectory": "✅Δημιουργήθηκε νέος κατάλογος: {dir}",
1007
+ "directoryAlreadyExists": "⚠️ Ο κατάλογος υπάρχει ήδη: {dir}",
1008
+ "invalidDirectoryName": "❌ Παρέχεται μη έγκυρο όνομα καταλόγου.",
1009
+ "usingExistingDirectory": "Χρήση υπάρχοντος καταλόγου: {dir}",
1010
+ "adminPinSetupOptional": "🔐 Προαιρετική ρύθμιση PIN διαχειριστή (συνιστάται για ασφάλεια)",
1011
+ "adminPinSeparator": "------------------------------",
1012
+ "adminPinDescription1": "PIN διαχειριστή: 4ψήφιος αριθμός για ασφαλή πρόσβαση",
1013
+ "adminPinDescription2": "Αφήστε το κενό για να παραλείψετε τη ρύθμιση PIN",
1014
+ "adminPinDescription3": "Εάν ορίσετε ένα PIN, θα απαιτείται για όλες τις μελλοντικές ασφαλείς ενέργειες.",
1015
+ "adminPinDescription4": "Κρυπτογράφηση AES-256-GCM που χρησιμοποιείται για την ασφαλή αποθήκευση του PIN.",
1016
+ "adminPinSetupPrompt": "Εισαγάγετε το PIN διαχειριστή (4 ψηφία) ή αφήστε το κενό για παράβλεψη:",
1017
+ "skippingAdminPinSetup": "Παράβλεψη ρύθμισης PIN διαχειριστή...",
1018
+ "settingUpAdminPin": "🔐 Ρύθμιση του PIN διαχειριστή...",
1019
+ "enterAdminPin": "Εισαγάγετε το PIN διαχειριστή:",
1020
+ "confirmAdminPin": "Επιβεβαίωση PIN διαχειριστή:",
1021
+ "pinMismatch": "Τα PIN δεν ταιριάζουν. Δοκιμάστε ξανά.",
1022
+ "adminPinSetupSuccess": "🔐 Επιτυχής ρύθμιση PIN διαχειριστή!",
1023
+ "adminPinSetupFailure": "🔐 Η ρύθμιση του PIN διαχειριστή απέτυχε. Δοκιμάστε ξανά.",
1024
+ "adminProtectionEnabled": "🔐 Ενεργοποιήθηκε η προστασία διαχειριστή. Όλες οι ενέργειες απαιτούν έλεγχο ταυτότητας PIN.",
1025
+ "adminProtectionDisabled": "🔐 Απενεργοποιήθηκε η προστασία διαχειριστή. Όλες οι ενέργειες είναι πλέον διαθέσιμες χωρίς PIN.",
1026
+ "autoDetectedI18nDirectory": "Αυτόματος εντοπισμένος κατάλογος i18n: {directory}",
1027
+ "initializingProject": "⚙️ Εκκίνηση διαμόρφωσης έργου...",
1028
+ "createdSampleTranslationFile": "✅ Δημιουργήθηκε δείγμα αρχείου μετάφρασης: {file}",
1029
+ "languageSelectionTitle": "🌐 Διαμόρφωση γλώσσας",
1030
+ "available": "Διαθέσιμος",
1031
+ "defaultLanguages": "📝 Προεπιλεγμένες γλώσσες: {languages}",
1032
+ "enterLanguageCodes": "🎯 Εισαγάγετε κωδικούς γλώσσας προορισμού (χωρισμένοι με κόμματα, π.χ. de, es, fr, ru):",
1033
+ "targetLanguages": "🌍 Γλώσσες στόχου",
1034
+ "foundSourceFiles": "📄 Βρέθηκε {count} αρχεία πηγής για ανάλυση",
1035
+ "processingLanguage": "🔄 Γλώσσα επεξεργασίας: {language}",
1036
+ "fileProcessingResult": "✅ Επεξεργασμένο {file}: {translated}/{total} κλειδιά ({percentage}%)",
1037
+ "overallProgress": "📊 Συνολική πρόοδος: {translated}/{total} κλειδιά επεξεργασίας ({percentage}%)",
1038
+ "initializationSummaryTitle": "📋 Περίληψη αρχικοποίησης",
1039
+ "languageSummary": "{icon} {name} ({code}): {percentage}% ολοκληρωμένη",
1040
+ "languageFiles": "📄 Αρχεία: {count}",
1041
+ "languageKeys": "🔤 Κλειδιά: {translated}/{total}",
1042
+ "languageMissing": "⚠️ Λείπει: {count}",
1043
+ "initializationCompletedSuccessfully": "🎉 Η προετοιμασία του έργου ολοκληρώθηκε με επιτυχία!",
1044
+ "nextStepsTitle": "🚀 Επόμενα βήματα",
1045
+ "nextStep1": "1. Ελέγξτε τα αρχεία μετάφρασης που δημιουργούνται στις τοπικές ρυθμίσεις/κατάλογό σας",
1046
+ "nextStep2": "2. Προσθέστε μεταφράσεις για κάθε γλώσσα-στόχο",
1047
+ "nextStep3": "3. Εκτελέστε ξανά το 'npm run i18ntk' για να επικυρώσετε τις μεταφράσεις",
1048
+ "detectedFrameworks": "✅ Ανιχνευμένο πλαίσιο(α) i18n: {frameworks}",
1049
+ "setup": {
1050
+ "title": "Ρύθμιση",
1051
+ "question": "Ερώτηση ρύθμισης",
1052
+ "opt_single": "Εις μια σειρά",
1053
+ "opt_modular": "Modular",
1054
+ "opt_existing": "Υπάρχον",
1055
+ "choice_prompt": "Επιλέξτε μια επιλογή:",
1056
+ "opt_confirm": "Επιβεβαιώνω",
1057
+ "opt_cancel": "Ματαίωση",
1058
+ "apply_all_prompt": "Να εφαρμοστεί αυτή η δομή σε όλες τις γλώσσες; (y/N):",
1059
+ "per_language_intro": "Έχετε επιλέξει να διαμορφώσετε τις γλώσσες μεμονωμένα. Εδώ είναι οι διαθέσιμες γλώσσες:",
1060
+ "available_languages": "Διαθέσιμες γλώσσες: {languages}",
1061
+ "include_prompt": "Εισαγάγετε κωδικούς γλώσσας διαχωρισμένους με κόμματα που θα συμπεριληφθούν (π.χ. \"de,fr,es\"):"
1062
+ },
1063
+ "warnings": {
1064
+ "noPackageJson": "Δεν βρέθηκε πακέτο.json. Δεν είναι δυνατός ο αυτόματος εντοπισμός του πλαισίου i18n."
1065
+ },
1066
+ "errorsPackageJsonRead": "Σφάλμα κατά την ανάγνωση του package.json: {error}",
1067
+ "errorsNoFramework": "Δεν εντοπίστηκε πλαίσιο i18n. Εγκαταστήστε ένα ή καθορίστε μη αυτόματα.",
1068
+ "suggestions": {
1069
+ "noFramework": "Δεν εντοπίστηκε πλαίσιο i18n. Σκεφτείτε να χρησιμοποιήσετε ένα από τα ακόλουθα:",
1070
+ "installFramework": "Για να εγκαταστήσετε ένα πλαίσιο, εκτελέστε: npm install <package-name>"
1071
+ },
1072
+ "frameworks": {
1073
+ "react": "- React i18next (react-i18next)",
1074
+ "vue": "- Vue i18n (vue-i18n)",
1075
+ "i18next": "- i18next (i18next)",
1076
+ "nuxt": "- Nuxt i18n (@nuxtjs/i18n)",
1077
+ "svelte": "- Svelte i18n (svelte-i18n)"
1078
+ },
1079
+ "continueWithoutI18nPrompt": "Δεν εντοπίστηκε πλαίσιο i18n. Θέλετε να συνεχίσετε χωρίς ένα; (y/N):",
1080
+ "detectedI18nFramework": "Εντοπίστηκε πλαίσιο i18n: {frameworks}",
1081
+ "existingDirectoryItem": "{index}. {location}",
1082
+ "usingExistingStructure": "Χρησιμοποιώντας την υπάρχουσα δομή: {dir}",
1083
+ "creatingSourceDirectory": "Δημιουργία καταλόγου πηγής: {dir}",
1084
+ "creatingSourceLanguageDirectory": "Δημιουργία καταλόγου γλώσσας πηγής: {dir}",
1085
+ "errors": {
1086
+ "errorExecutingCommand": "Σφάλμα κατά την εκτέλεση της εντολής: {error}",
1087
+ "sourceDirectoryNotFound": "Ο κατάλογος πηγής δεν βρέθηκε: {dir}",
1088
+ "sourceLanguageDirectoryNotFound": "Ο κατάλογος γλώσσας πηγής δεν βρέθηκε: {dir}",
1089
+ "noJsonFilesInSourceDirectory": "Δεν βρέθηκαν αρχεία JSON στον κατάλογο προέλευσης: {dir}",
1090
+ "invalidFilePathDetected": "Εντοπίστηκε μη έγκυρη διαδρομή αρχείου",
1091
+ "initializationFailed": "Η προετοιμασία απέτυχε: {error}",
1092
+ "noFramework": "Δεν εντοπίστηκε πλαίσιο i18n. Συνεχίστε με τη γενική λειτουργία.",
1093
+ "packageJsonRead": "Σφάλμα κατά την ανάγνωση του πακέτου.json."
1094
+ },
1095
+ "processingFile": "Επεξεργασία {file} για {language}...",
1096
+ "fileAlreadyExistsMerging": "Αρχείο {file} υπάρχει ήδη. Συγχώνευση νέων κλειδιών.",
1097
+ "createdNewFile": "Δημιουργήθηκε νέο αρχείο: {file}",
1098
+ "updatedFile": "Ενημερωμένο αρχείο: {file}",
1099
+ "skippingExcludedFile": "Παράκαμψη {file} για {language} καθώς αποκλείεται.",
1100
+ "continuingWithoutAdminPin": "Συνέχεια χωρίς ρύθμιση PIN διαχειριστή.",
1101
+ "createdSourceLanguageDirectory": "Δημιουργήθηκε κατάλογος γλώσσας πηγής: {dir}",
1102
+ "errorSettingUpAdminPin": "Σφάλμα κατά τη ρύθμιση του PIN διαχειριστή: {error}",
1103
+ "noTargetLanguagesSpecified": "Δεν έχουν καθοριστεί γλώσσες-στόχοι.",
1104
+ "translationFilesCreatedWarning": "Τα αρχεία μετάφρασης δημιουργήθηκαν με σύμβολα κράτησης θέσης. επανεξέταση πριν από τη χρήση της παραγωγής.",
1105
+ "warningCannotReadSourceDir": "Προειδοποίηση: δεν είναι δυνατή η ανάγνωση του καταλόγου προέλευσης {dir}: {error}",
1106
+ "warningInvalidLanguageCodes": "Προειδοποίηση: αγνοήθηκαν μη έγκυροι κωδικοί γλώσσας: {languages}",
1107
+ "warningProceedingWithoutFramework": "Συνέχεια χωρίς ανιχνευμένο πλαίσιο i18n.",
1108
+ "backup": {
1109
+ "title": "Ρυθμίσεις δημιουργίας αντιγράφων ασφαλείας",
1110
+ "description": "Τα αντίγραφα ασφαλείας είναι απενεργοποιημένα από προεπιλογή για να αποφευχθεί η επανάληψη των αντιγράφων ασφαλείας και η ρύπανση των αποθεμάτων.",
1111
+ "enablePrompt": "Ενεργοποίηση αυτόματης δημιουργίας αντιγράφων ασφαλείας; (y/N):",
1112
+ "keepPrompt": "Πόσα αντίγραφα ασφαλείας θα πρέπει να διατηρηθούν αυτόματα (1-3, προεπιλογή 1):"
1113
+ },
1114
+ "completionSummaryTitle": "Περίληψη ολοκλήρωσης",
1115
+ "completionSummaryBasicTitle": "Περίληψη ολοκλήρωσης (Βασική)",
1116
+ "totalChanges": "Συνολικές αλλαγές: {count}",
1117
+ "languagesProcessed": "Γλώσσες που υποβλήθηκαν σε επεξεργασία: {count}",
1118
+ "missingKeysAdded": "Προστέθηκαν κλειδιά που λείπουν: {count}",
1119
+ "reportPrompt": "Θα θέλατε να δημιουργηθεί μια αναφορά; (Y/n):",
1120
+ "reportGenerated": "Δημιουργήθηκε αναφορά: {reportPath}",
1121
+ "reportFailed": "Αποτυχία δημιουργίας αναφοράς: {error}",
1122
+ "completionError": "Σφάλμα κατά την ολοκλήρωση: {error}",
1123
+ "optimize": {
1124
+ "title": "Βελτιστοποίηση μεγέθους συσκευασίας",
1125
+ "preview": "Εκτέλεση προεπισκόπησης βελτιστοποίησης τοπικών ρυθμίσεων...",
1126
+ "reduceTip": "Μπορείτε να μειώσετε το μέγεθος του πακέτου επιλέγοντας μόνο τις γλώσσες που χρειάζεστε.",
1127
+ "prompt": "Θέλετε να εκτελέσετε διαδραστική βελτιστοποίηση τώρα; (y/n):",
1128
+ "starting": "Έναρξη διαδραστικής βελτιστοποίησης τοπικών ρυθμίσεων...",
1129
+ "completed": "Ολοκληρώθηκε η βελτιστοποίηση του πακέτου.",
1130
+ "later": "Μπορείτε να εκτελέσετε τη βελτιστοποίηση τοπικών ρυθμίσεων αργότερα με:",
1131
+ "unavailable": "Δεν ήταν δυνατή η προσφορά βελτιστοποίησης τοπικών ρυθμίσεων: {error}"
1132
+ }
1133
+ },
1134
+ "language": {
1135
+ "title": "🌍 Αλλάξτε γλώσσα",
1136
+ "separator": "============================================================",
1137
+ "current": "Τρέχουσα γλώσσα: {language}",
1138
+ "available": "Διαθέσιμες γλώσσες:",
1139
+ "languageOption": "{index}. {displayName}{current}",
1140
+ "backToMainMenu": "Επιστροφή στο Κύριο Μενού",
1141
+ "prompt": "Επιλέξτε μια γλώσσα (0-8):",
1142
+ "cancelled": "Η αλλαγή γλώσσας ακυρώθηκε.",
1143
+ "invalid": "Μη έγκυρη επιλογή. Δοκιμάστε ξανά.",
1144
+ "changed": "Η γλώσσα άλλαξε σε: {language}",
1145
+ "changeFailed": "Αποτυχία αλλαγής γλώσσας: {error}",
1146
+ "pressEnterToContinue": "Πατήστε Enter για να συνεχίσετε..."
1147
+ },
1148
+ "maintainLanguagePurity": {
1149
+ "workflow_title": "🚀 Ροή εργασιών συντήρησης καθαρότητας γλώσσας",
1150
+ "step1_title": "📊 ΒΗΜΑ 1: Αρχική αξιολόγηση καθαρότητας γλώσσας",
1151
+ "step2_title": "🔧 ΒΗΜΑ 2: Εντοπισμός και αυτόματη διόρθωση ασυμφωνιών γλώσσας",
1152
+ "step3_title": "🌐 ΒΗΜΑ 3: Εφαρμόστε αυτόματες μεταφράσεις",
1153
+ "step4_title": "✅ ΒΗΜΑ 4: Τελική αξιολόγηση καθαρότητας γλώσσας",
1154
+ "workflow_error": "❌ Σφάλμα ροής εργασίας: {errorMessage}",
1155
+ "running_initial_validation": "Εκτέλεση αρχικής επικύρωσης καθαρότητας γλώσσας...",
1156
+ "initial_assessment_complete": "✅ Ολοκληρώθηκε η αρχική αξιολόγηση: {count} διαπιστώθηκαν παραβάσεις",
1157
+ "initial_assessment_warnings": "⚠️ Η αρχική αξιολόγηση ολοκληρώθηκε με προειδοποιήσεις",
1158
+ "detecting_fixing_mismatches": "Εντοπισμός και διόρθωση γλωσσικών αναντιστοιχιών...",
1159
+ "detection_complete_applying_fixes": "Ο εντοπισμός ολοκληρώθηκε. Εφαρμογή αυτόματων επιδιορθώσεων...",
1160
+ "mismatch_fixes_complete": "✅Ολοκληρώθηκαν οι διορθώσεις αναντιστοιχίας γλώσσας: {count} εφαρμόστηκαν διορθώσεις",
1161
+ "mismatch_fixes_warnings": "⚠️ Διορθώσεις αναντιστοιχίας γλώσσας ολοκληρώθηκαν με προειδοποιήσεις",
1162
+ "applying_automatic_translations": "Εφαρμογή αυτόματων μεταφράσεων...",
1163
+ "translation_preview_complete": "Η προεπισκόπηση της μετάφρασης ολοκληρώθηκε. Εφαρμογή μεταφράσεων..."
1164
+ },
1165
+ "menu": {
1166
+ "title": "🌐 ΜΕΝΟΥ ΔΙΑΧΕΙΡΙΣΗΣ I18NTK",
1167
+ "separator": "============================================================",
1168
+ "options": {
1169
+ "init": "🚀 Αρχικοποιήστε νέες γλώσσες",
1170
+ "analyze": "🔍 Αναλύστε μεταφράσεις",
1171
+ "validate": "✅ Επικύρωση μεταφράσεων",
1172
+ "usage": "📊 Ελέγξτε τη χρήση του κλειδιού",
1173
+ "complete": "🎯 Ολοκληρωμένες μεταφράσεις (100% κάλυψη)",
1174
+ "sizing": "📏 Ανάλυση μεγέθους",
1175
+ "fix": "🛠️ Διορθώστε τις μεταφράσεις κράτησης θέσης",
1176
+ "scanner": "🔍 Σάρωση για προβλήματα i18n",
1177
+ "translate": "🌐 Αυτόματη μετάφραση",
1178
+ "workflow": "🔄 Εκτελέστε πλήρη ροή εργασίας",
1179
+ "status": "📋 Εμφάνιση κατάστασης έργου",
1180
+ "delete": "🗑️ Διαγράψτε όλες τις αναφορές",
1181
+ "language": "🌍 Αλλάξτε τη γλώσσα διεπαφής χρήστη",
1182
+ "settings": "⚙️ Ρυθμίσεις",
1183
+ "help": "❓ Βοήθεια",
1184
+ "debug": "🔧 Εργαλεία εντοπισμού σφαλμάτων",
1185
+ "exit": "🚪 Έξοδος"
1186
+ },
1187
+ "update": "📦 Ενημέρωση πακέτου",
1188
+ "goodbye": "👋 Αντίο!",
1189
+ "invalidChoice": "Μη έγκυρη επιλογή. Επιλέξτε 0-15.",
1190
+ "returning": "Επιστροφή στο κύριο μενού...",
1191
+ "invalidOption": "Μη έγκυρη επιλογή. Δοκιμάστε ξανά.",
1192
+ "nonInteractiveModeWarning": "Εντοπίστηκε μη διαδραστική λειτουργία. Το μενού εμφανίζεται μόνο για αναφορά.",
1193
+ "useDirectExecution": "Χρήση: node main/manage/index.js --command=<command> για άμεση εκτέλεση.",
1194
+ "useHelpForCommands": "Χρήση: node main/manage/index.js --help για διαθέσιμες εντολές.",
1195
+ "returnToMainMenu": "Πατήστε Enter για να επιστρέψετε στο Κύριο Μενού.",
1196
+ "pressEnterToContinue": "Πατήστε Enter για να συνεχίσετε...",
1197
+ "selectOptionPrompt": "Επιλέξτε μια επιλογή:",
1198
+ "selectDebugToolPrompt": "Επιλέξτε ένα εργαλείο εντοπισμού σφαλμάτων:",
1199
+ "selectLogPrompt": "Επιλέξτε ένα αρχείο καταγραφής (1-{count}):",
1200
+ "autoDetectedI18nDirectory": "Αυτόματος εντοπισμένος κατάλογος i18n: {directory}",
1201
+ "executingCommand": "Εκτέλεση εντολής: {command}",
1202
+ "unknownCommand": "Άγνωστη εντολή: {command}",
1203
+ "languageOption": "{index}. {displayName}{current}",
1204
+ "debugTools": {
1205
+ "1": "Ανάλυση αρχείων καταγραφής",
1206
+ "2": "Ανάλυση χρήσης κλειδιού μετάφρασης",
1207
+ "3": "Ανάλυση πληρότητας μετάφρασης",
1208
+ "4": "Ανάλυση μορφής μετάφρασης",
1209
+ "5": "Ανάλυση τύπου μετάφρασης",
1210
+ "6": "Ανάλυση μεταφραστικής δομής"
1211
+ },
1212
+ "native_translations": {
1213
+ "exact_translation_found": "✅ {keyPath}: {value}",
1214
+ "no_exact_translation": "⚠️ Δεν υπάρχει ακριβής μετάφραση για το '{keyPath}', βρέθηκαν παρόμοια κλειδιά:",
1215
+ "similar_key": "- {key} ({similarity}% αντιστοίχισης)",
1216
+ "processing_language_files": "🔄 Επεξεργασία {count} αρχεία γλώσσας...",
1217
+ "file_not_found": "⚠️ Το αρχείο δεν βρέθηκε: {file}",
1218
+ "processing_translations": "🌍 Επεξεργασία {code} μεταφράσεις...",
1219
+ "backup_created": "📋 Δημιουργήθηκε αντίγραφο ασφαλείας: {filename}",
1220
+ "error_parsing_json": "❌ Σφάλμα ανάλυσης {code}.json: {errorMessage}",
1221
+ "existing_keys_found": "📊 {code}: Βρέθηκε {count} υπάρχοντα κλειδιά",
1222
+ "error_writing_json": "❌ Σφάλμα εγγραφής {code}.json: {errorMessage}",
1223
+ "translations_replaced": "📊 {code}: {count} οι μεταφράσεις αντικαταστάθηκαν",
1224
+ "translation_replacement_complete": "✅ Ολοκληρώθηκε η αντικατάσταση μετάφρασης!",
1225
+ "total_replacements": "📊 Συνολικές αντικαταστάσεις: {count}",
1226
+ "dry_run_mode": "⚠️ ΛΕΙΤΟΥΡΓΙΑ ΞΗΡΗΣ ΕΚΤΕΛΕΣΗΣ - Δεν τροποποιήθηκαν αρχεία",
1227
+ "tool_title": "🌍 Native Translation Replacer v1.9.1",
1228
+ "tool_separator": "======================================",
1229
+ "dry_run_warning": "⚠️ Εκτελείται σε λειτουργία DRY RUN - κανένα αρχείο δεν θα τροποποιηθεί",
1230
+ "error_during_replacement": "❌ Σφάλμα κατά την αντικατάσταση μετάφρασης:"
1231
+ }
1232
+ },
1233
+ "config": {
1234
+ "dirFallbackWarning": "⚠️ Κατάλογος {dir} δεν βρέθηκε. Χρησιμοποιώντας {fallback}.",
1235
+ "dirInvalidError": "❌ Μη έγκυρος κατάλογος: {dir}"
1236
+ },
1237
+ "operations": {
1238
+ "completed": "✅ Η λειτουργία ολοκληρώθηκε με επιτυχία!",
1239
+ "deleteReportsTitle": "🗑️ Διαγραφή αναφορών, αρχείων καταγραφής και προσωρινής μνήμης",
1240
+ "scanningForFiles": "🔍 Σάρωση για αρχεία προς διαγραφή...",
1241
+ "noFilesFoundToDelete": "✅ Δεν βρέθηκαν αρχεία προς διαγραφή.",
1242
+ "availableDirectories": "📁 Διαθέσιμοι κατάλογοι:",
1243
+ "allDirectories": "Όλοι οι κατάλογοι",
1244
+ "andMore": "και άλλα...",
1245
+ "cancelOption": "Ματαίωση",
1246
+ "cancelReportOption": "Ακύρωση / Επιστροφή στο Μενού",
1247
+ "invalidSelection": "❌ Μη έγκυρη επιλογή.",
1248
+ "foundFilesInSelectedDirectories": "📊 Βρέθηκε {count} αρχεία σε επιλεγμένους καταλόγους:",
1249
+ "deletionOptions": "🗑️ Επιλογές διαγραφής:",
1250
+ "deleteAllFiles": "Διαγράψτε όλα τα αρχεία",
1251
+ "keepLast3Files": "Διατήρηση των τελευταίων 3 αρχείων (κατά ημερομηνία)",
1252
+ "keepLast5Files": "Διατήρηση των τελευταίων 5 αρχείων (κατά ημερομηνία)",
1253
+ "noFilesToDelete": "✅ Δεν υπάρχουν αρχεία για διαγραφή.",
1254
+ "filesToDeleteCount": "📋 Αρχεία προς διαγραφή: {count}",
1255
+ "filesToKeepCount": "📋 Αρχεία προς διατήρηση: {count}",
1256
+ "confirmDeletion": "⚠️ Είστε βέβαιοι ότι θέλετε να διαγράψετε αυτά τα αρχεία; (y/N):",
1257
+ "deletedFile": "✅ Διαγράφηκε: {filename}",
1258
+ "failedToDeleteFile": "❌ Απέτυχε η διαγραφή {filename}: {error}",
1259
+ "cancelled": "❌ Η λειτουργία ακυρώθηκε.",
1260
+ "init": {
1261
+ "title": "🚀 Ξεκινήστε τη νέα γλώσσα"
1262
+ },
1263
+ "usage": {
1264
+ "title": "📊 Ελέγξτε τη χρήση του κλειδιού",
1265
+ "noUsedKeysHint": "Βρέθηκαν μεταφράσεις αλλά καμία χρήση στην πηγή. Ελέγξτε το --source-dir και τα μοτίβα μετάφρασης."
1266
+ },
1267
+ "analyze": {
1268
+ "title": "🔍 Ανάλυση μεταφράσεων"
1269
+ },
1270
+ "validate": {
1271
+ "title": "✅ Επικύρωση μεταφράσεων"
1272
+ },
1273
+ "settings": {
1274
+ "title": "⚙️ Διαχείριση ρυθμίσεων",
1275
+ "separator": "============================================================"
1276
+ },
1277
+ "complete": {
1278
+ "deletingOldReport": "🗑️ Διαγραφή παλιάς αναφοράς χρήσης για νέα ανάλυση",
1279
+ "generatingFreshAnalysis": "🔄 Δημιουργία νέας ανάλυσης χρήσης...",
1280
+ "couldNotGenerate": "⚠️ Δεν ήταν δυνατή η δημιουργία ανάλυσης χρήσης. Χρήση κοινών κλειδιών που λείπουν.",
1281
+ "reportNotFound": "⚠️ Η αναφορά χρήσης δεν βρέθηκε. Δημιουργία νέας ανάλυσης...",
1282
+ "foundMissingKeys": "🔍 Βρέθηκε {count} λείπουν κλειδιά από την ανάλυση χρήσης",
1283
+ "couldNotParse": "⚠️ Δεν ήταν δυνατή η ανάλυση της αναφοράς χρήσης. Χρήση κοινών κλειδιών που λείπουν.",
1284
+ "title": "🎯 ΣΥΜΠΛΗΡΩΣΗ ΜΕΤΑΦΡΑΣΕΩΝ",
1285
+ "separator": "============================================================",
1286
+ "sourceDir": "📁 Κατάλογος πηγής: {sourceDir}",
1287
+ "sourceLanguage": "🔤 Γλώσσα πηγής: {sourceLanguage}",
1288
+ "dryRunMode": "🧪 ΛΕΙΤΟΥΡΓΙΑ ΣΤΕΓΝΗΣ ΕΚΤΕΛΕΣΗΣ - Δεν θα τροποποιηθούν αρχεία",
1289
+ "languages": "🎯 Γλώσσες στόχευσης: {languages}",
1290
+ "addingMissingKeys": "➕ Προσθήκη κλειδιών που λείπουν στα αρχεία μετάφρασης...",
1291
+ "processing": "🔄 Επεξεργασία {language}...",
1292
+ "addedKeys": "✅ Προστέθηκε {count} κλειδιά",
1293
+ "changeDetails": "📝 {file}: {key}",
1294
+ "noChangesNeeded": "✅ Δεν χρειάζονται αλλαγές για {language}",
1295
+ "summaryTitle": "📊 ΣΥΝΟΨΗ ΟΛΟΚΛΗΡΩΣΗΣ",
1296
+ "totalChanges": "📝 Συνολικές αλλαγές: {totalChanges}",
1297
+ "languagesProcessed": "🌐 Γλώσσες που υποβλήθηκαν σε επεξεργασία: {languagesProcessed}",
1298
+ "missingKeysAdded": "➕ Προστέθηκαν κλειδιά που λείπουν: {missingKeysAdded}",
1299
+ "nextStepsTitle": "📋 NEXT STEPS",
1300
+ "nextStep1": "1. Εκτελέστε την ανάλυση χρήσης:",
1301
+ "nextStep2": "2. Επικύρωση μεταφράσεων:",
1302
+ "nextStep3": "3. Αναλύστε την πληρότητα:",
1303
+ "allKeysAvailable": "🎉 Όλα τα κλειδιά μετάφρασης είναι πλέον διαθέσιμα!",
1304
+ "runWithoutDryRun": "💡 Εκτελέστε χωρίς --dry-run για να εφαρμόσετε αλλαγές",
1305
+ "pressEnterToContinue": "Πατήστε Enter για να συνεχίσετε..."
1306
+ },
1307
+ "updatePackage": {
1308
+ "title": "📦 Ενημέρωση πακέτου i18n-toolkit",
1309
+ "description": "Αυτό θα ενημερώσει το πακέτο i18n-toolkit στην πιο πρόσφατη έκδοση που είναι διαθέσιμη στο npm.",
1310
+ "command": "Εντολή για τρέξιμο",
1311
+ "confirm": "Είστε βέβαιοι ότι θέλετε να συνεχίσετε με την ενημέρωση; (y/N):",
1312
+ "updating": "Ενημέρωση πακέτου... Αυτό μπορεί να διαρκέσει λίγο.",
1313
+ "success": "✅ Το i18n-toolkit ενημερώθηκε με επιτυχία!",
1314
+ "error": "❌ Απέτυχε η ενημέρωση του i18n-toolkit",
1315
+ "cancelled": "❌ Η ενημέρωση ακυρώθηκε."
1316
+ }
1317
+ },
1318
+ "security": {
1319
+ "pathValidationFailed": "path_validation_failed",
1320
+ "invalidInputType": "invalid_input_type",
1321
+ "pathTraversalAttempt": "path_traversal_ttempt",
1322
+ "pathValidated": "✅ Η διαδρομή επικυρώθηκε με επιτυχία",
1323
+ "pathValidationError": "path_validation_error",
1324
+ "fileTooLarge": "Ασφάλεια: Το αρχείο είναι πολύ μεγάλο: {filePath}",
1325
+ "fileReadError": "Ασφάλεια: Σφάλμα ανάγνωσης αρχείου: {errorMessage}",
1326
+ "contentTooLargeForFile": "Ασφάλεια: Το περιεχόμενο είναι πολύ μεγάλο για αρχείο: {filePath}",
1327
+ "fileWriteError": "Ασφάλεια: Σφάλμα εγγραφής αρχείου: {errorMessage}",
1328
+ "jsonStringTooLarge": "Ασφάλεια: Η συμβολοσειρά JSON είναι πολύ μεγάλη",
1329
+ "jsonParseError": "Ασφάλεια: Σφάλμα ανάλυσης JSON: {errorMessage}",
1330
+ "inputContainsDisallowedCharacters": "Ασφάλεια: Η είσοδος περιέχει μη επιτρεπόμενους χαρακτήρες",
1331
+ "unknownCommandArgument": "Ασφάλεια: Άγνωστο όρισμα εντολής: {key}",
1332
+ "unknown_command_argument": "Ασφάλεια: Άγνωστο όρισμα εντολής: {key}",
1333
+ "unknownConfigKey": "Ασφάλεια: Άγνωστο κλειδί διαμόρφωσης: {key}",
1334
+ "unknown_config_key": "Ασφάλεια: Άγνωστο κλειδί διαμόρφωσης: {key}",
1335
+ "securityAlert": "[ΕΙΔΟΠΟΙΗΣΗ ΑΣΦΑΛΕΙΑΣ] {timestamp}: {event}",
1336
+ "contentTooLarge": "Ασφάλεια: Το περιεχόμενο είναι πολύ μεγάλο για αρχείο: {validatedPath}",
1337
+ "inputDisallowedCharacters": "Ασφάλεια: Η είσοδος περιέχει μη επιτρεπόμενους χαρακτήρες",
1338
+ "unknownCommandArg": "Άγνωστο όρισμα εντολής",
1339
+ "logMessage": "[ΑΣΦΑΛΕΙΑ {level}] {timestamp}: {event}",
1340
+ "alertMessage": "[ΕΙΔΟΠΟΙΗΣΗ ΑΣΦΑΛΕΙΑΣ] {timestamp}: {event}",
1341
+ "securityWarning": "[ΠΡΟΕΙΔΟΠΟΙΗΣΗ ΑΣΦΑΛΕΙΑΣ] {timestamp}: {event}",
1342
+ "json_parse_error": "Ασφάλεια: Σφάλμα ανάλυσης JSON: {errorMessage}",
1343
+ "file_too_large": "Το αρχείο είναι πολύ μεγάλο",
1344
+ "file_read_error": "Σφάλμα ανάγνωσης αρχείου",
1345
+ "content_too_large_for_file": "Το περιεχόμενο είναι πολύ μεγάλο για αρχείο",
1346
+ "file_write_error": "Σφάλμα εγγραφής αρχείου",
1347
+ "json_string_too_large": "Η συμβολοσειρά Json είναι πολύ μεγάλη",
1348
+ "recursion_detected": "Εντοπίστηκε αναδρομή σε {operation}",
1349
+ "operation_timeout": "Λήξη χρονικού ορίου λειτουργίας: {operation}",
1350
+ "operation_error": "Σφάλμα λειτουργίας σε {operation}: {error}",
1351
+ "directory_read_error": "Σφάλμα ανάγνωσης καταλόγου: {errorMessage}",
1352
+ "security_alert": "Ειδοποίηση ασφαλείας"
1353
+ },
1354
+ "settings-cli": {
1355
+ "settings": {
1356
+ "mainMenu": {
1357
+ "title": "Κύριο μενού:",
1358
+ "uiSettings": "Ρυθμίσεις διεπαφής χρήστη",
1359
+ "uiSettingsDesc": "Επιλογές γλώσσας, θέματος και διεπαφής",
1360
+ "directorySettings": "Ρυθμίσεις καταλόγου",
1361
+ "directorySettingsDesc": "Διαδρομές καταλόγου πηγής και εξόδου",
1362
+ "scriptDirectorySettings": "Ρυθμίσεις καταλόγου σεναρίων",
1363
+ "scriptDirectorySettingsDesc": "Διαδρομές καταλόγου για μεμονωμένες λειτουργίες σεναρίου",
1364
+ "processingSettings": "Ρυθμίσεις επεξεργασίας",
1365
+ "processingSettingsDesc": "Μέγεθος παρτίδας, συγχρονισμός και απόδοση",
1366
+ "advancedSettings": "Προηγμένες ρυθμίσεις",
1367
+ "advancedSettingsDesc": "Επικύρωση, καταγραφή και επιλογές ειδικών",
1368
+ "viewAllSettings": "Προβολή όλων των ρυθμίσεων",
1369
+ "viewAllSettingsDesc": "Εμφάνιση τρέχουσας διαμόρφωσης",
1370
+ "importExport": "Εισαγωγή/Εξαγωγή",
1371
+ "importExportDesc": "Δημιουργία αντιγράφων ασφαλείας και επαναφορά ρυθμίσεων",
1372
+ "resetToDefaults": "Επαναφορά στις προεπιλογές",
1373
+ "resetToDefaultsDesc": "Επαναφορά εργοστασιακών ρυθμίσεων",
1374
+ "reportBug": "Αναφορά σφάλματος",
1375
+ "reportBugDesc": "Υποβάλετε μια αναφορά ζητήματος στο GitHub",
1376
+ "saveChanges": "Αποθήκευση αλλαγών",
1377
+ "saveChangesDesc": "Αποθηκεύστε τις τρέχουσες ρυθμίσεις στο αρχείο",
1378
+ "updatePackage": "Ενημέρωση πακέτου",
1379
+ "updatePackageDesc": "Ενημερώστε το πακέτο i18n-toolkit μέσω npm",
1380
+ "help": "Βοήθεια",
1381
+ "helpDesc": "Εμφάνιση λεπτομερών πληροφοριών βοήθειας",
1382
+ "quit": "Εγκαταλείπω",
1383
+ "quitDesc": "Έξοδος από τις ρυθμίσεις (με προτροπή αποθήκευσης εάν χρειάζεται)",
1384
+ "unsavedChangesWarning": "⚠️ Έχετε μη αποθηκευμένες αλλαγές",
1385
+ "saveChangesBeforeQuit": "Θέλετε να αποθηκεύσετε τις αλλαγές πριν σταματήσετε; (y/N):",
1386
+ "selectOption": "Επιλέξτε μια επιλογή:",
1387
+ "goodbyeMessage": "Σας ευχαριστούμε που χρησιμοποιείτε τον διαχειριστή ρυθμίσεων i18n!"
1388
+ },
1389
+ "goodbyeMessage": "Σας ευχαριστούμε που χρησιμοποιείτε τον διαχειριστή ρυθμίσεων i18n!",
1390
+ "relativePathHint": "Χρησιμοποιήστε σχετικές διαδρομές από αυτόν τον κατάλογο (π.χ. ./src/i18n/locales)",
1391
+ "currentDirectory": "Κατάλογος τρέχοντος έργου"
1392
+ },
1393
+ "settings_manager": {
1394
+ "error_loading_settings": "❌ Σφάλμα κατά τη φόρτωση ρυθμίσεων:",
1395
+ "error_saving_settings": "❌ Σφάλμα αποθήκευσης ρυθμίσεων:",
1396
+ "error_setting_value": "❌ Σφάλμα τιμής ρύθμισης:",
1397
+ "missing_required_setting": "❌ Λείπει η απαιτούμενη ρύθμιση: {prop}",
1398
+ "invalid_language": "❌ Μη έγκυρη γλώσσα: {language}",
1399
+ "invalid_source_language": "❌ Μη έγκυρη γλώσσα πηγής: {sourceLanguage}",
1400
+ "default_languages_must_be_array": "❌ Οι προεπιλεγμένες γλώσσες πρέπει να είναι πίνακας",
1401
+ "invalid_date_format": "❌ Μη έγκυρη μορφή ημερομηνίας: {dateFormat}. Έγκυρες μορφές: {validFormats}",
1402
+ "invalid_time_format": "❌ Μη έγκυρη μορφή ώρας: {timeFormat}. Έγκυρες μορφές: {validFormats}",
1403
+ "notifications_types_must_be_object": "❌ Οι ειδοποιήσεις.τύποι πρέπει να είναι αντικείμενο",
1404
+ "exclude_files_must_be_array": "❌ Τα excludeFiles πρέπει να είναι πίνακας",
1405
+ "exclude_dirs_must_be_array": "❌ Τα excludeDirs πρέπει να είναι πίνακας",
1406
+ "include_extensions_must_be_array": "❌ Οι επεκτάσεις περιλαμβάνουν πρέπει να είναι πίνακας",
1407
+ "invalid_batch_size": "❌ Μη έγκυρο μέγεθος παρτίδας. Πρέπει να είναι θετικός αριθμός",
1408
+ "invalid_max_concurrent_files": "❌ Μη έγκυρα μέγ. ταυτόχρονα αρχεία. Πρέπει να είναι θετικός αριθμός",
1409
+ "invalid_sizing_threshold": "❌ Μη έγκυρο όριο μεγέθους. Πρέπει να είναι θετικός αριθμός",
1410
+ "invalid_timeout": "❌ Μη έγκυρο χρονικό όριο. Πρέπει να είναι τουλάχιστον 1000ms",
1411
+ "invalid_sizing_format": "❌ Μη έγκυρη μορφή μεγέθους: {sizingFormat}. Έγκυρες μορφές: {validFormats}",
1412
+ "error_validating_settings": "❌ Σφάλμα επικύρωσης ρυθμίσεων:",
1413
+ "backup_created": "📋 Δημιουργήθηκε αντίγραφο ασφαλείας: {backupPath}",
1414
+ "error_creating_backup": "❌ Σφάλμα δημιουργίας αντιγράφου ασφαλείας:",
1415
+ "language_not_supported": "Γλώσσα'{language}' δεν υποστηρίζεται. Διαθέσιμος: {availableLanguages}",
1416
+ "ui_language_set": "🌍 Η γλώσσα διεπαφής χρήστη έχει οριστεί σε: {language}"
1417
+ }
1418
+ },
1419
+ "settings": {
1420
+ "title": "⚙️ Διαχείριση ρυθμίσεων",
1421
+ "separator": "============================================================",
1422
+ "goodbyeMessage": "Σας ευχαριστούμε που χρησιμοποιείτε τον διαχειριστή ρυθμίσεων i18ntk!",
1423
+ "relativePathHint": "Χρησιμοποιήστε σχετικές διαδρομές από αυτόν τον κατάλογο (π.χ. ./src/i18n/locales)",
1424
+ "currentDirectory": "Κατάλογος τρέχοντος έργου",
1425
+ "startingSettings": "Έναρξη ρυθμίσεων:",
1426
+ "pin": "PIN:",
1427
+ "reportBug": {
1428
+ "title": "Αναφορά σφάλματος",
1429
+ "description": "Αναφέρετε τυχόν προβλήματα ή σφάλματα που αντιμετωπίζετε",
1430
+ "guidance": "Για να αναφέρετε προβλήματα αποτελεσματικά:",
1431
+ "checkLogs": "1. Ελέγξτε τα αρχεία καταγραφής εντοπισμού σφαλμάτων στον κατάλογο του έργου σας",
1432
+ "documentIssue": "2. Τεκμηριώστε το ζήτημα με βήματα για αναπαραγωγή",
1433
+ "contactSupport": "3. Επικοινωνήστε με τον διαχειριστή του συστήματός σας ή την ομάδα υποστήριξης",
1434
+ "completed": "Εμφανίζεται η καθοδήγηση αναφοράς σφαλμάτων",
1435
+ "instructions": "Ακολουθήστε τις παραπάνω οδηγίες για να αναφέρετε το σφάλμα."
1436
+ },
1437
+ "mainMenu": {
1438
+ "title": "Κύριο μενού:",
1439
+ "uiSettings": "Ρυθμίσεις διεπαφής χρήστη",
1440
+ "uiSettingsDesc": "Επιλογές γλώσσας, θέματος και διεπαφής",
1441
+ "directorySettings": "Ρυθμίσεις καταλόγου",
1442
+ "directorySettingsDesc": "Διαδρομές καταλόγου πηγής και εξόδου",
1443
+ "processingSettings": "Ρυθμίσεις επεξεργασίας",
1444
+ "processingSettingsDesc": "Μέγεθος παρτίδας, συγχρονισμός και απόδοση",
1445
+ "advancedSettings": "Προηγμένες ρυθμίσεις",
1446
+ "advancedSettingsDesc": "Επικύρωση, καταγραφή και επιλογές ειδικών",
1447
+ "viewAllSettings": "Προβολή όλων των ρυθμίσεων",
1448
+ "viewAllSettingsDesc": "Εμφάνιση τρέχουσας διαμόρφωσης",
1449
+ "importExport": "Εισαγωγή/Εξαγωγή",
1450
+ "updatePackage": "Ενημέρωση πακέτου",
1451
+ "updatePackageDesc": "Ενημερώστε το πακέτο i18n-toolkit μέσω npm",
1452
+ "importExportDesc": "Δημιουργία αντιγράφων ασφαλείας και επαναφορά ρυθμίσεων",
1453
+ "resetToDefaults": "Επαναφορά στις προεπιλογές",
1454
+ "resetToDefaultsDesc": "Επαναφορά εργοστασιακών ρυθμίσεων",
1455
+ "reportBug": "Αναφορά σφάλματος",
1456
+ "reportBugDesc": "Υποβάλετε μια αναφορά ζητήματος στο GitHub",
1457
+ "saveChanges": "Αποθήκευση αλλαγών",
1458
+ "saveChangesDesc": "Αποθηκεύστε τις τρέχουσες ρυθμίσεις στο αρχείο",
1459
+ "help": "Βοήθεια",
1460
+ "helpDesc": "Εμφάνιση λεπτομερών πληροφοριών βοήθειας",
1461
+ "quit": "Εγκαταλείπω",
1462
+ "quitDesc": "Έξοδος από τις ρυθμίσεις (με προτροπή αποθήκευσης εάν χρειάζεται)",
1463
+ "unsavedChangesWarning": "⚠️ Έχετε μη αποθηκευμένες αλλαγές",
1464
+ "saveChangesBeforeQuit": "Θέλετε να αποθηκεύσετε τις αλλαγές πριν σταματήσετε; (y/N):",
1465
+ "selectOption": "Επιλέξτε μια επιλογή:",
1466
+ "goodbyeMessage": "Σας ευχαριστούμε που χρησιμοποιείτε τον διαχειριστή ρυθμίσεων i18n!",
1467
+ "selectSettingPrompt": "Επιλέξτε μια ρύθμιση για επεξεργασία (ή 'b' για επιστροφή):",
1468
+ "enterNewValue": "Εισαγάγετε νέα τιμή:",
1469
+ "updatedSuccessfully": "{setting} ενημερώθηκε με επιτυχία!",
1470
+ "scriptDirectorySettings": "Ρυθμίσεις καταλόγου σεναρίων",
1471
+ "scriptDirectoryDesc": "Καθορίστε προσαρμοσμένους καταλόγους για κάθε σενάριο",
1472
+ "scriptDirectorySettingsDesc": "Μπορείτε να ορίσετε προσαρμοσμένους καταλόγους για κάθε σενάριο. Εάν δεν οριστεί, θα χρησιμοποιηθούν καθολικές ρυθμίσεις.",
1473
+ "currentDirectory": "Κατάλογος τρέχοντος έργου",
1474
+ "securitySettings": "Ρυθμίσεις ασφαλείας",
1475
+ "securitySettingsDesc": "PIN διαχειριστή και άλλες επιλογές ασφαλείας",
1476
+ "backupSettings": "Ρυθμίσεις δημιουργίας αντιγράφων ασφαλείας",
1477
+ "backupSettingsDesc": "Δημιουργία αντιγράφων ασφαλείας και επαναφορά των ρυθμίσεων διαμόρφωσης",
1478
+ "autoTranslate": "Αυτόματη μετάφραση",
1479
+ "autoTranslateDesc": "Συντονίστε το χειρισμό του placeholder, τη συγχρονικότητα, τη ομαδοποίηση και τις αναφορές"
1480
+ },
1481
+ "updatePackage": {
1482
+ "title": "Ενημέρωση πακέτου",
1483
+ "description": "Ενημερώστε το πακέτο i18n-toolkit μέσω npm",
1484
+ "command": "npm ενημέρωση i18ntk -g",
1485
+ "success": "Η ενημέρωση ολοκληρώθηκε με επιτυχία.",
1486
+ "failed": "Η ενημέρωση απέτυχε.",
1487
+ "prompt": "Θέλετε να ενημερώσετε το πακέτο τώρα; (y/N):",
1488
+ "promptDesc": "Σημείωση: Αυτό θα ενημερώσει το πακέτο i18ntk στην πιο πρόσφατη έκδοση.",
1489
+ "confirm": "y",
1490
+ "cancelled": "Η ενημέρωση ακυρώθηκε.",
1491
+ "error": "Η ενημέρωση του πακέτου απέτυχε",
1492
+ "updating": "Ενημέρωση πακέτου..."
1493
+ },
1494
+ "admin": {
1495
+ "selectOption": "Επιλέξτε επιλογή:",
1496
+ "updateSuccess": "Το PIN διαχειριστή ενημερώθηκε με επιτυχία!",
1497
+ "updateFailed": "Η ενημέρωση του PIN διαχειριστή απέτυχε.",
1498
+ "protectionRemoved": "Καταργήθηκε η προστασία PIN διαχειριστή.",
1499
+ "configSuccess": "Το PIN διαχειριστή διαμορφώθηκε με επιτυχία!",
1500
+ "configFailed": "Απέτυχε η διαμόρφωση του PIN διαχειριστή.",
1501
+ "setupPinPrompt": "Θέλετε να ρυθμίσετε ένα PIN διαχειριστή; (y/N):",
1502
+ "pinUpdatedSuccess": "Το PIN διαχειριστή ενημερώθηκε με επιτυχία!",
1503
+ "pinUpdatedFailed": "Η ενημέρωση του PIN διαχειριστή απέτυχε.",
1504
+ "pinRemoved": "Καταργήθηκε η προστασία PIN διαχειριστή.",
1505
+ "pinConfiguredSuccess": "Το PIN διαχειριστή διαμορφώθηκε με επιτυχία!",
1506
+ "pinConfiguredFailed": "Απέτυχε η διαμόρφωση του PIN διαχειριστή.",
1507
+ "accessDenied": "❌ Δεν επιτρέπεται η πρόσβαση. Επιστροφή στο μενού.",
1508
+ "setupPin": "🔐 Ρύθμιση του PIN διαχειριστή...",
1509
+ "setupFailed": "❌ Αποτυχία ρύθμισης του PIN διαχειριστή. Η ρύθμιση δεν άλλαξε.",
1510
+ "pinConfigured": "📌 Το PIN διαχειριστή έχει διαμορφωθεί αυτήν τη στιγμή.",
1511
+ "options": "Επιλογές:",
1512
+ "changePin": "1) Αλλάξτε το υπάρχον PIN",
1513
+ "removePin": "2) Αφαιρέστε την προστασία PIN",
1514
+ "cancel": "3) Ακύρωση",
1515
+ "verifyCurrentPin": "🔐 Επαληθεύστε πρώτα το τρέχον PIN:",
1516
+ "settingNewPin": "🔄 Ρύθμιση νέου PIN...",
1517
+ "verifyToRemove": "🔐 Επαληθεύστε το τρέχον PIN για να καταργήσετε την προστασία:",
1518
+ "noPinConfigured": "🔓 Δεν έχει διαμορφωθεί κανένα PIN διαχειριστή αυτήν τη στιγμή.",
1519
+ "pinBenefits": "Η ρύθμιση του PIN διαχειριστή θα προσθέσει ασφάλεια για:",
1520
+ "benefitSecurity": "• Αλλαγή ρυθμίσεων ασφαλείας",
1521
+ "benefitAdvanced": "• Τροποποίηση προηγμένων διαμορφώσεων",
1522
+ "benefitDebug": "• Πρόσβαση σε εργαλεία εντοπισμού σφαλμάτων",
1523
+ "benefitReset": "• Επαναφορά ρυθμίσεων",
1524
+ "setupCancelled": "⏭️ Η ρύθμιση PIN διαχειριστή ακυρώθηκε.",
1525
+ "operationCancelled": "❌ Η λειτουργία ακυρώθηκε.",
1526
+ "startingSettings": "🎛️ Έναρξη ρυθμίσεων CLI...",
1527
+ "authRequired": "🔒 Απαιτείται έλεγχος ταυτότητας διαχειριστή για: {label}",
1528
+ "pinSetupTitle": "Ρύθμιση PIN διαχειριστή",
1529
+ "browserOpenFailed": "Δεν ήταν δυνατό το αυτόματο άνοιγμα του προγράμματος περιήγησης.",
1530
+ "manualVisit": "Επισκεφτείτε χειροκίνητα: {url}",
1531
+ "browserOpened": "✅ Το πρόγραμμα περιήγησης άνοιξε με επιτυχία!"
1532
+ },
1533
+ "importExport": {
1534
+ "title": "Ρυθμίσεις εισαγωγής/εξαγωγής",
1535
+ "export": "Εξαγωγή ρυθμίσεων",
1536
+ "import": "Εισαγωγή ρυθμίσεων",
1537
+ "backup": "Δημιουργία αντιγράφων ασφαλείας",
1538
+ "enterFilename": "Εισαγάγετε όνομα αρχείου (ή πατήστε Enter για προεπιλογή):",
1539
+ "exportSuccess": "Εξαγωγή ρυθμίσεων σε {file}",
1540
+ "exportFailed": "Αποτυχία εξαγωγής ρυθμίσεων: {error}",
1541
+ "importFilename": "Εισαγάγετε όνομα αρχείου για εισαγωγή:",
1542
+ "fileNotFound": "Το αρχείο δεν βρέθηκε.",
1543
+ "invalidFormat": "Μη έγκυρη μορφή αρχείου ρυθμίσεων.",
1544
+ "confirmImport": "Αυτό θα αντικαταστήσει όλες τις τρέχουσες ρυθμίσεις. Συνεχίζω; (y/N):",
1545
+ "importSuccess": "Οι ρυθμίσεις εισήχθησαν με επιτυχία.",
1546
+ "importFailed": "Αποτυχία εισαγωγής ρυθμίσεων: {error}",
1547
+ "backupSuccess": "Δημιουργήθηκε αντίγραφο ασφαλείας: {file}",
1548
+ "backupFailed": "Αποτυχία δημιουργίας αντιγράφου ασφαλείας: {error}",
1549
+ "exportFilenamePrompt": "Εισαγάγετε το όνομα αρχείου εξαγωγής:",
1550
+ "importConfirm": "Εισαγωγή αυτού του αρχείου ρυθμίσεων; (y/N):",
1551
+ "importFilenamePrompt": "Εισαγάγετε όνομα αρχείου εισαγωγής:",
1552
+ "manageBackups": "Διαχείριση αντιγράφων ασφαλείας",
1553
+ "restore": "Επαναφορά ρυθμίσεων"
1554
+ },
1555
+ "selectOption": "Επιλέξτε μια επιλογή:",
1556
+ "resetToDefaultsTitle": "Επαναφέρετε τις ρυθμίσεις στις προεπιλογές",
1557
+ "resetWarning1": "⚠️ Αυτό θα επαναφέρει ΟΛΕΣ τις ρυθμίσεις στις προεπιλεγμένες τους τιμές.",
1558
+ "resetWarning2": "Αυτή η ενέργεια δεν μπορεί να αναιρεθεί.",
1559
+ "resetConfirm": "Είστε βέβαιοι ότι θέλετε να συνεχίσετε; (y/N):",
1560
+ "resetSuccess": "Οι ρυθμίσεις επαναφέρθηκαν με επιτυχία στις προεπιλογές.",
1561
+ "resetFailed": "Αποτυχία επαναφοράς ρυθμίσεων: {error}",
1562
+ "resetDone": "Οι ρυθμίσεις επαναφέρθηκαν με επιτυχία στις προεπιλογές.",
1563
+ "resetScriptDirsDone": "Οι κατάλογοι σεναρίων επαναφέρονται με επιτυχία στις προεπιλογές του συστήματος.",
1564
+ "saveSuccess": "Οι ρυθμίσεις αποθηκεύτηκαν με επιτυχία.",
1565
+ "saveFailed": "Αποτυχία αποθήκευσης ρυθμίσεων.",
1566
+ "saveError": "Παρέχονται μη έγκυρες ρυθμίσεις",
1567
+ "pressEnter": "Πατήστε Enter για να συνεχίσετε...",
1568
+ "initFailed": "Απέτυχε η προετοιμασία των ρυθμίσεων: {error}",
1569
+ "invalidValueFormat": "Μη έγκυρη μορφή τιμής.",
1570
+ "help": {
1571
+ "title": "Βοήθεια ρυθμίσεων",
1572
+ "navigationTitle": "Πλοήγηση",
1573
+ "navigation1": "1. Γενικές ρυθμίσεις - Διαμορφώστε τη γλώσσα, το θέμα και τις βασικές προτιμήσεις διεπαφής χρήστη",
1574
+ "navigation2": "2. Ρυθμίσεις καταλόγου - Ορισμός καταλόγων προέλευσης και εξόδου για αρχεία μετάφρασης",
1575
+ "navigation3": "3. Ρυθμίσεις επεξεργασίας - Διαμορφώστε το μέγεθος παρτίδας, τη συγχρονικότητα και τις επιλογές απόδοσης",
1576
+ "navigation4": "4. Προηγμένες ρυθμίσεις - Πρόσβαση σε επιλογές επικύρωσης, καταγραφής και διαμόρφωσης ειδικών",
1577
+ "categoriesTitle": "Κατηγορίες ρυθμίσεων",
1578
+ "categoryUI": "• Ρυθμίσεις διεπαφής χρήστη: Γλώσσα διεπαφής, θέμα χρώματος και προτιμήσεις οθόνης",
1579
+ "categoryDirectory": "• Ρυθμίσεις καταλόγου: Τοποθεσία αρχείων προέλευσης και κατάλογοι αναφοράς εξόδου",
1580
+ "categoryProcessing": "• Ρυθμίσεις επεξεργασίας: Μαζική επεξεργασία, όρια αρχείων και ρύθμιση απόδοσης",
1581
+ "categoryAdvanced": "• Προηγμένες ρυθμίσεις: Λειτουργία εντοπισμού σφαλμάτων, καταγραφή ελέγχου και επιλογές ασφαλείας",
1582
+ "envVarsTitle": "Μεταβλητές Περιβάλλοντος",
1583
+ "envVar1": "• I18N_SOURCE_DIR: Παράκαμψη της προεπιλεγμένης διαδρομής καταλόγου προέλευσης",
1584
+ "envVar2": "• I18N_OUTPUT_DIR: Παράκαμψη της προεπιλεγμένης διαδρομής καταλόγου εξόδου",
1585
+ "envVar3": "• I18N_DEBUG: Ενεργοποίηση λειτουργίας εντοπισμού σφαλμάτων (true/false)",
1586
+ "cliUsageTitle": "Παραδείγματα χρήσης CLI",
1587
+ "cliUsage1": "• npx i18ntk --settings: Ανοίξτε το διαδραστικό μενού ρυθμίσεων",
1588
+ "cliUsage2": "• npx i18ntk --settings --lang de: Άνοιγμα ρυθμίσεων στα Γερμανικά",
1589
+ "cliUsage3": "• npx i18ntk --reset-settings: Επαναφέρετε όλες τις ρυθμίσεις στις προεπιλογές",
1590
+ "navigation": "Χρησιμοποιήστε τα αριθμητικά πλήκτρα για να επιλέξετε επιλογές, το 'b' για να επιστρέψετε",
1591
+ "editing": "Εισαγάγετε νέες τιμές όταν σας ζητηθεί ή πατήστε Enter για να διατηρήσετε την τρέχουσα κατάσταση",
1592
+ "saving": "Χρησιμοποιήστε το 's' για να αποθηκεύσετε τις αλλαγές πριν σταματήσετε",
1593
+ "reset": "Χρησιμοποιήστε την επιλογή 7 για να επαναφέρετε όλες τις ρυθμίσεις στις προεπιλογές"
1594
+ },
1595
+ "categories": {
1596
+ "uiSettings": "Ρυθμίσεις διεπαφής χρήστη",
1597
+ "directorySettings": "Ρυθμίσεις καταλόγου",
1598
+ "processingSettings": "Ρυθμίσεις επεξεργασίας",
1599
+ "advancedSettings": "Προηγμένες ρυθμίσεις",
1600
+ "scriptDirectorySettings": "Ρυθμίσεις καταλόγου σεναρίων",
1601
+ "securitySettings": "Ρυθμίσεις ασφαλείας",
1602
+ "autoTranslate": "Ρυθμίσεις αυτόματης μετάφρασης"
1603
+ },
1604
+ "security": {
1605
+ "title": "🔐 Ρυθμίσεις ασφαλείας",
1606
+ "description": "Διαμόρφωση επιλογών προστασίας PIN και ασφάλειας διαχειριστή",
1607
+ "currentPin": "Τρέχον PIN:",
1608
+ "pinConfigured": "✅ Διαμορφώθηκε",
1609
+ "pinNotConfigured": "❌ Δεν έχει διαμορφωθεί",
1610
+ "pinDisplay": "Εμφάνιση PIN:",
1611
+ "menu": {
1612
+ "enableDisable": "1) Ενεργοποίηση/απενεργοποίηση του PIN διαχειριστή",
1613
+ "setupChange": "2) Ρύθμιση/Αλλαγή PIN διαχειριστή",
1614
+ "sessionTimeout": "3) Χρόνος λήξης περιόδου λειτουργίας",
1615
+ "maxAttempts": "4) Μέγιστες αποτυχημένες προσπάθειες",
1616
+ "lockoutDuration": "5) Διάρκεια κλειδώματος",
1617
+ "back": "β) Επιστροφή στο Κύριο Μενού"
1618
+ },
1619
+ "prompts": {
1620
+ "enablePin": "Ενεργοποίηση προστασίας PIN διαχειριστή; (y/N):",
1621
+ "disablePin": "Απενεργοποίηση προστασίας PIN διαχειριστή; (y/N):",
1622
+ "enterTimeout": "Εισαγωγή χρονικού ορίου λήξης περιόδου σύνδεσης (λεπτά):",
1623
+ "enterMaxAttempts": "Εισαγάγετε μέγιστες αποτυχημένες προσπάθειες:",
1624
+ "enterLockoutDuration": "Εισαγάγετε τη διάρκεια κλειδώματος (λεπτά):"
1625
+ },
1626
+ "messages": {
1627
+ "pinEnabled": "Ενεργοποιήθηκε η προστασία PIN διαχειριστή",
1628
+ "pinDisabled": "Η προστασία PIN διαχειριστή είναι απενεργοποιημένη",
1629
+ "timeoutUpdated": "Το χρονικό όριο λήξης περιόδου λειτουργίας ενημερώθηκε σε {minutes} πρακτικά",
1630
+ "maxAttemptsUpdated": "Οι μέγιστες αποτυχημένες προσπάθειες ενημερώθηκαν σε {attempts}",
1631
+ "lockoutDurationUpdated": "Η διάρκεια του αποκλεισμού ενημερώθηκε σε {minutes} πρακτικά"
1632
+ }
1633
+ },
1634
+ "fields": {
1635
+ "backup.enabled": {
1636
+ "label": "Enable Backup",
1637
+ "description": "Enable automatic backup of settings",
1638
+ "help": "Enable/disable backup feature"
1639
+ },
1640
+ "backup.singleFileMode": {
1641
+ "label": "Single File Mode",
1642
+ "description": "Use single file for backups",
1643
+ "help": "Backup settings in a single file"
1644
+ },
1645
+ "backup.singleBackupFile": {
1646
+ "label": "Backup File Path",
1647
+ "description": "Path to the backup file",
1648
+ "help": "Path to the single backup file"
1649
+ },
1650
+ "backup.retentionDays": {
1651
+ "label": "Retention Period",
1652
+ "description": "Days to keep backup files",
1653
+ "help": "Number of days to retain old backup files"
1654
+ },
1655
+ "backup.maxBackups": {
1656
+ "label": "Maximum Backups",
1657
+ "description": "Maximum backup files to keep",
1658
+ "help": "Maximum number of backup files to keep"
1659
+ },
1660
+ "backup.confirm": {
1661
+ "label": "Confirm Backup",
1662
+ "description": "Require confirmation for backup operations",
1663
+ "help": "Confirm backup operation"
1664
+ },
1665
+ "i18nDir": {
1666
+ "label": "Κατάλογος I18n",
1667
+ "description": "Κατάλογος που περιέχει αρχεία μετάφρασης",
1668
+ "current": "Ρεύμα: {value}",
1669
+ "help": "Διαδρομή στον κατάλογο με αρχεία μετάφρασης"
1670
+ },
1671
+ "projectRoot": {
1672
+ "label": "Project Root",
1673
+ "description": "Ο ριζικός κατάλογος του έργου",
1674
+ "current": "Ρεύμα: {value}",
1675
+ "help": "Διαδρομή στον ριζικό κατάλογο του έργου"
1676
+ },
1677
+ "checkUsage": {
1678
+ "usage_analysis_failed": "Η ανάλυση χρήσης απέτυχε",
1679
+ "usage_analysis_success": "Επιτυχής ανάλυση χρήσης",
1680
+ "usage_analysis_complete": "Η ανάλυση χρήσης ολοκληρώθηκε",
1681
+ "usage_analysis_in_progress": "Ανάλυση χρήσης σε εξέλιξη",
1682
+ "usage_analysis_started": "Η ανάλυση χρήσης ξεκίνησε",
1683
+ "usage_analysis_skipped": "Η ανάλυση χρήσης παραβλέφθηκε"
1684
+ },
1685
+ "language": {
1686
+ "label": "Γλώσσα διεπαφής",
1687
+ "description": "Γλώσσα για τη διεπαφή χρήστη",
1688
+ "current": "Ρεύμα: {value}",
1689
+ "help": "Επιλέξτε τη γλώσσα διεπαφής που προτιμάτε"
1690
+ },
1691
+ "scriptDirectories": {
1692
+ "analyzeLabel": "Αναλύστε καταλόγους σεναρίων",
1693
+ "analyzeHelp": "Αναλύστε τους καταλόγους σεναρίων για ζητήματα",
1694
+ "completeLabel": "Ολοκληρώστε τους καταλόγους εγκατάστασης",
1695
+ "initLabel": "Αρχικοποίηση καταλόγων σεναρίων",
1696
+ "manageLabel": "Διαχείριση καταλόγων σεναρίων",
1697
+ "sizingLabel": "Κατάλογοι σεναρίων μεγεθών",
1698
+ "summaryLabel": "Κατάλογοι συνοπτικών αναφορών",
1699
+ "usageLabel": "Κατάλογοι αναφορών χρήσης",
1700
+ "validateLabel": "Επικύρωση καταλόγων σεναρίων"
1701
+ },
1702
+ "theme": {
1703
+ "label": "Χρώμα θέμα",
1704
+ "description": "Προτίμηση θέματος διεπαφής χρήστη",
1705
+ "current": "Ρεύμα: {value}",
1706
+ "help": "Επιλέξτε ανάμεσα σε ανοιχτόχρωμα και σκοτεινά θέματα"
1707
+ },
1708
+ "dateFormat": {
1709
+ "label": "Μορφή ημερομηνίας",
1710
+ "description": "Μορφή για εμφάνιση ημερομηνιών",
1711
+ "current": "Ρεύμα: {value}",
1712
+ "help": "Επιλέξτε πώς θα εμφανίζονται οι ημερομηνίες στις αναφορές"
1713
+ },
1714
+ "notifications": {
1715
+ "enabled": {
1716
+ "label": "Ενεργοποίηση Ειδοποιήσεων",
1717
+ "description": "Εμφάνιση ειδοποιήσεων επιφάνειας εργασίας",
1718
+ "current": "Ρεύμα: {value}",
1719
+ "help": "Ενεργοποίηση ειδοποιήσεων επιφάνειας εργασίας για ολοκληρωμένες λειτουργίες"
1720
+ }
1721
+ },
1722
+ "sourceDir": {
1723
+ "label": "Κατάλογος πηγών",
1724
+ "description": "Κατάλογος που περιέχει αρχεία μετάφρασης",
1725
+ "current": "Ρεύμα: {value}",
1726
+ "help": "Διαδρομή στον κατάλογο με αρχεία μετάφρασης πηγής"
1727
+ },
1728
+ "sourceLanguage": {
1729
+ "label": "Γλώσσα πηγής",
1730
+ "description": "Βασική γλώσσα για μεταφράσεις",
1731
+ "current": "Ρεύμα: {value}",
1732
+ "help": "Η κύρια γλώσσα που χρησιμοποιείται ως πηγή για τις μεταφράσεις"
1733
+ },
1734
+ "outputDir": {
1735
+ "label": "Κατάλογος εξόδου",
1736
+ "description": "Κατάλογος για αναφορές που δημιουργούνται",
1737
+ "current": "Ρεύμα: {value}",
1738
+ "help": "Όπου θα αποθηκευτούν οι αναφορές και τα επεξεργασμένα αρχεία"
1739
+ },
1740
+ "batchSize": {
1741
+ "label": "Μέγεθος παρτίδας",
1742
+ "description": "Αριθμός ειδών που υποβάλλονται σε επεξεργασία ανά παρτίδα",
1743
+ "current": "Ρεύμα: {value}",
1744
+ "help": "Πόσα αρχεία να επεξεργαστείτε σε κάθε παρτίδα"
1745
+ },
1746
+ "maxConcurrentFiles": {
1747
+ "label": "Μέγιστα ταυτόχρονα αρχεία",
1748
+ "description": "Μέγιστη επεξεργασία αρχείων ταυτόχρονα",
1749
+ "current": "Ρεύμα: {value}",
1750
+ "help": "Μέγιστος αριθμός αρχείων προς επεξεργασία ταυτόχρονα"
1751
+ },
1752
+ "sizingThreshold": {
1753
+ "label": "Όριο μεγέθους (%)",
1754
+ "description": "Κατώφλι για προειδοποιήσεις μεταβολής μεγέθους",
1755
+ "current": "Ρεύμα: {value}%",
1756
+ "help": "Ποσοστό όριο για τον εντοπισμό αναντιστοιχιών μεγέθους"
1757
+ },
1758
+ "strictMode": {
1759
+ "label": "Λειτουργία αυστηρής επικύρωσης",
1760
+ "description": "Ενεργοποιήστε τη λειτουργία αυστηρής επικύρωσης",
1761
+ "current": "Ρεύμα: {value}",
1762
+ "help": "Ενεργοποίηση αυστηρής επικύρωσης για αρχεία μετάφρασης"
1763
+ },
1764
+ "enableAuditLog": {
1765
+ "label": "Ενεργοποίηση καταγραφής ελέγχου",
1766
+ "description": "Παρακολούθηση όλων των αλλαγών στη μετάφραση",
1767
+ "current": "Ρεύμα: {value}",
1768
+ "help": "Καταγραφή όλων των αλλαγών που έγιναν στα αρχεία μετάφρασης"
1769
+ },
1770
+ "backupBeforeChanges": {
1771
+ "label": "Αυτόματη δημιουργία αντιγράφων ασφαλείας",
1772
+ "description": "Δημιουργήστε αντίγραφα ασφαλείας πριν από τις τροποποιήσεις",
1773
+ "current": "Ρεύμα: {value}",
1774
+ "help": "Δημιουργήστε αυτόματα αντίγραφα ασφαλείας πριν κάνετε αλλαγές"
1775
+ },
1776
+ "advanced_maxConcurrentFiles": {
1777
+ "label": "Μέγιστα ταυτόχρονα αρχεία",
1778
+ "description": "Μέγιστη επεξεργασία αρχείων ταυτόχρονα",
1779
+ "current": "Ρεύμα: {value}",
1780
+ "help": "Μέγιστος αριθμός αρχείων προς επεξεργασία ταυτόχρονα"
1781
+ },
1782
+ "advanced_strictMode": {
1783
+ "label": "Λειτουργία αυστηρής επικύρωσης",
1784
+ "description": "Ενεργοποιήστε τη λειτουργία αυστηρής επικύρωσης",
1785
+ "current": "Ρεύμα: {value}",
1786
+ "help": "Ενεργοποίηση αυστηρής επικύρωσης για αρχεία μετάφρασης"
1787
+ },
1788
+ "adminPinEnabled": {
1789
+ "label": "Προστασία PIN διαχειριστή",
1790
+ "description": "Ενεργοποιήστε τον έλεγχο ταυτότητας PIN διαχειριστή για ευαίσθητες ρυθμίσεις",
1791
+ "current": "Ρεύμα: {value}",
1792
+ "help": "Απαιτείται κωδικός PIN διαχειριστή για αλλαγή ρυθμίσεων ασφαλείας και προηγμένων ρυθμίσεων"
1793
+ },
1794
+ "sessionTimeout": {
1795
+ "label": "Χρονικό όριο περιόδου λειτουργίας",
1796
+ "description": "Λήξη χρονικού ορίου περιόδου λειτουργίας διαχειριστή σε λεπτά",
1797
+ "current": "Ρεύμα: {value} πρακτικά",
1798
+ "help": "Για πόσο καιρό οι περίοδοι λειτουργίας διαχειριστή παραμένουν ενεργές πριν απαιτηθεί εκ νέου έλεγχος ταυτότητας"
1799
+ },
1800
+ "maxFailedAttempts": {
1801
+ "label": "Μέγιστες αποτυχημένες προσπάθειες",
1802
+ "description": "Μέγιστες αποτυχημένες προσπάθειες PIN πριν από το κλείδωμα",
1803
+ "current": "Ρεύμα: {value} προσπάθειες",
1804
+ "help": "Αριθμός αποτυχημένων προσπαθειών PIN που επιτρέπονται πριν από το προσωρινό κλείδωμα"
1805
+ },
1806
+ "lockoutDuration": {
1807
+ "label": "Διάρκεια κλειδώματος",
1808
+ "description": "Διάρκεια κλειδώματος μετά από αποτυχημένες προσπάθειες",
1809
+ "current": "Ρεύμα: {value} πρακτικά",
1810
+ "help": "Πόσο καιρό το σύστημα παραμένει κλειδωμένο μετά από μέγιστες αποτυχημένες προσπάθειες"
1811
+ },
1812
+ "scriptDirectories_analyze": {
1813
+ "label": "Αναλύστε καταλόγους σεναρίων",
1814
+ "description": "Προσαρμοσμένοι κατάλογοι για ανάλυση σεναρίου",
1815
+ "current": "Ρεύμα: {value}",
1816
+ "help": "Καθορίστε τον προσαρμοσμένο κατάλογο προέλευσης για το σενάριο ανάλυσης. Αφήστε κενό για να χρησιμοποιήσετε την καθολική ρύθμιση."
1817
+ },
1818
+ "scriptDirectories_complete": {
1819
+ "label": "Ολοκληρώστε τους καταλόγους εγκατάστασης",
1820
+ "description": "Προσαρμοσμένοι κατάλογοι για πλήρες σενάριο εγκατάστασης",
1821
+ "current": "Ρεύμα: {value}",
1822
+ "help": "Καθορίστε τον προσαρμοσμένο κατάλογο προέλευσης για το πλήρες σενάριο εγκατάστασης. Αφήστε κενό για να χρησιμοποιήσετε την καθολική ρύθμιση."
1823
+ },
1824
+ "scriptDirectories_init": {
1825
+ "label": "Αρχικοποίηση καταλόγων σεναρίων",
1826
+ "description": "Προσαρμοσμένοι κατάλογοι για αρχικοποίηση σεναρίου",
1827
+ "current": "Ρεύμα: {value}",
1828
+ "help": "Καθορίστε τον προσαρμοσμένο κατάλογο προέλευσης για το σενάριο προετοιμασίας. Αφήστε κενό για να χρησιμοποιήσετε την καθολική ρύθμιση."
1829
+ },
1830
+ "scriptDirectories_manage": {
1831
+ "label": "Διαχείριση καταλόγων σεναρίων",
1832
+ "description": "Προσαρμοσμένοι κατάλογοι για διαχείριση σεναρίων",
1833
+ "current": "Ρεύμα: {value}",
1834
+ "help": "Καθορίστε τον προσαρμοσμένο κατάλογο προέλευσης για το σενάριο διαχείρισης. Αφήστε κενό για να χρησιμοποιήσετε την καθολική ρύθμιση."
1835
+ },
1836
+ "scriptDirectories_sizing": {
1837
+ "label": "Κατάλογοι σεναρίων μεγεθών",
1838
+ "description": "Προσαρμοσμένοι κατάλογοι για σενάριο ταξινόμησης μεγέθους",
1839
+ "current": "Ρεύμα: {value}",
1840
+ "help": "Καθορίστε τον προσαρμοσμένο κατάλογο προέλευσης για το σενάριο ταξινόμησης μεγέθους. Αφήστε κενό για να χρησιμοποιήσετε την καθολική ρύθμιση."
1841
+ },
1842
+ "scriptDirectories_summary": {
1843
+ "label": "Κατάλογοι συνοπτικών αναφορών",
1844
+ "description": "Προσαρμοσμένοι κατάλογοι για σενάριο σύνοψης αναφοράς",
1845
+ "current": "Ρεύμα: {value}",
1846
+ "help": "Καθορίστε τον προσαρμοσμένο κατάλογο προέλευσης για το σενάριο αναφοράς σύνοψης. Αφήστε κενό για να χρησιμοποιήσετε την καθολική ρύθμιση."
1847
+ },
1848
+ "scriptDirectories_usage": {
1849
+ "label": "Κατάλογοι αναφορών χρήσης",
1850
+ "description": "Προσαρμοσμένοι κατάλογοι για σενάριο αναφοράς χρήσης",
1851
+ "current": "Ρεύμα: {value}",
1852
+ "help": "Καθορίστε τον προσαρμοσμένο κατάλογο προέλευσης για το σενάριο αναφοράς χρήσης. Αφήστε κενό για να χρησιμοποιήσετε την καθολική ρύθμιση."
1853
+ },
1854
+ "scriptDirectories_validate": {
1855
+ "label": "Επικύρωση καταλόγων σεναρίων",
1856
+ "description": "Προσαρμοσμένοι κατάλογοι για επικύρωση σεναρίου",
1857
+ "current": "Ρεύμα: {value}",
1858
+ "help": "Καθορίστε τον προσαρμοσμένο κατάλογο προέλευσης για το σενάριο επικύρωσης. Αφήστε κενό για να χρησιμοποιήσετε την καθολική ρύθμιση."
1859
+ },
1860
+ "security_adminPinEnabled": {
1861
+ "label": "Προστασία PIN διαχειριστή",
1862
+ "description": "Ενεργοποιήστε τον έλεγχο ταυτότητας PIN διαχειριστή για ευαίσθητες ρυθμίσεις",
1863
+ "current": "Ρεύμα: {value}",
1864
+ "help": "Απαιτείται κωδικός PIN διαχειριστή για αλλαγή ρυθμίσεων ασφαλείας και προηγμένων ρυθμίσεων"
1865
+ },
1866
+ "fields": {
1867
+ "adminPinEnabled": {
1868
+ "label": "Προστασία PIN διαχειριστή",
1869
+ "description": "Ενεργοποιήστε τον έλεγχο ταυτότητας PIN διαχειριστή για ευαίσθητες ρυθμίσεις",
1870
+ "help": "Απαιτείται κωδικός PIN διαχειριστή για αλλαγή ρυθμίσεων ασφαλείας και προηγμένων ρυθμίσεων"
1871
+ }
1872
+ },
1873
+ "security_pinProtection_enabled": {
1874
+ "label": "Προστασία PIN",
1875
+ "description": "Ενεργοποιήστε την προστασία PIN για ευαίσθητες ρυθμίσεις",
1876
+ "current": "Ρεύμα: {value}",
1877
+ "help": "Απαιτείται PIN για αλλαγή ρυθμίσεων ασφαλείας και προηγμένων ρυθμίσεων"
1878
+ },
1879
+ "pinProtection_configure": {
1880
+ "label": "Διαμόρφωση σεναρίων με προστασία PIN",
1881
+ "description": "Διαμορφώστε ποια σενάρια απαιτούν προστασία PIN",
1882
+ "help": "Επιλέξτε μεμονωμένα σενάρια που απαιτούν έλεγχο ταυτότητας PIN"
1883
+ },
1884
+ "pinProtection_debugMenu": {
1885
+ "label": "Μενού εργαλείων εντοπισμού σφαλμάτων",
1886
+ "description": "Απαίτηση PIN για το μενού εργαλείων εντοπισμού σφαλμάτων",
1887
+ "current": "Ρεύμα: {value}",
1888
+ "help": "Ενεργοποιήστε την προστασία PIN για πρόσβαση στα εργαλεία εντοπισμού σφαλμάτων"
1889
+ },
1890
+ "pinProtection_deleteReports": {
1891
+ "label": "Διαγραφή Αναφορών",
1892
+ "description": "Απαιτείται PIN για Διαγραφή Αναφορών",
1893
+ "current": "Ρεύμα: {value}",
1894
+ "help": "Ενεργοποιήστε την προστασία PIN για τη διαγραφή αναφορών"
1895
+ },
1896
+ "pinProtection_summaryReports": {
1897
+ "label": "Συνοπτικές Εκθέσεις",
1898
+ "description": "Απαιτείται PIN για συνοπτικές αναφορές",
1899
+ "current": "Ρεύμα: {value}",
1900
+ "help": "Ενεργοποιήστε την προστασία PIN για τη δημιουργία συνοπτικών αναφορών"
1901
+ },
1902
+ "pinProtection_settingsMenu": {
1903
+ "label": "Μενού ρυθμίσεων",
1904
+ "description": "Απαίτηση PIN για το μενού ρυθμίσεων",
1905
+ "current": "Ρεύμα: {value}",
1906
+ "help": "Ενεργοποιήστε την προστασία PIN για πρόσβαση στις ρυθμίσεις"
1907
+ },
1908
+ "pinProtection_initScript": {
1909
+ "label": "Αρχικοποίηση σεναρίου",
1910
+ "description": "Απαίτηση PIN για την προετοιμασία σεναρίου",
1911
+ "current": "Ρεύμα: {value}",
1912
+ "help": "Ενεργοποιήστε την προστασία PIN για την εκτέλεση του σεναρίου προετοιμασίας"
1913
+ },
1914
+ "pinProtection_resetDefaults": {
1915
+ "label": "Επαναφορά προστασίας PIN",
1916
+ "description": "Επαναφέρετε όλες τις ρυθμίσεις προστασίας PIN στις προεπιλογές",
1917
+ "help": "Επαναφέρετε όλες τις μεμονωμένες προστασίες PIN σεναρίου στις προεπιλεγμένες τιμές"
1918
+ },
1919
+ "removeUiLanguages": {
1920
+ "label": "Καταργήστε τις γλώσσες διεπαφής χρήστη",
1921
+ "description": "Καταργήστε τις γλώσσες διεπαφής χρήστη που δεν είναι εγκατεστημένες",
1922
+ "help": "Καταργήστε τις γλώσσες διεπαφής χρήστη που δεν είναι εγκατεστημένες στο σύστημα"
1923
+ },
1924
+ "${helperKey}": {
1925
+ "help": "Βοήθεια"
1926
+ },
1927
+ "reports_format": {
1928
+ "label": "Μορφή αναφοράς",
1929
+ "help": "Επιλέξτε markdown για αναγνώσιμες αναφορές, json για αυτοματοποίηση ή κείμενο για απλά αρχεία καταγραφής."
1930
+ },
1931
+ "autoTranslate_placeholderMode": {
1932
+ "label": "Λειτουργία χειρισμού placeholder",
1933
+ "help": "Πώς αντιμετωπίζονται οι συμβολοσειρές που φέρουν κράτη μέλη κατά την αυτόματη μετάφραση."
1934
+ },
1935
+ "autoTranslate_concurrency": {
1936
+ "label": "Ταυτόχρονα αιτήματα μετάφρασης",
1937
+ "help": "Μέγιστα ταυτόχρονα αιτήματα παρόχου. Η Google υποστηρίζει έως και 100 σε i18ntk. Το DeepL και το LibreTranslate καλύπτονται χαμηλότερα."
1938
+ },
1939
+ "autoTranslate_batchSize": {
1940
+ "label": "Τμήματα κειμένου ανά παρτίδα",
1941
+ "help": "Αριθμός τμημάτων κειμένου που έχουν προγραμματιστεί ανά παρτίδα."
1942
+ },
1943
+ "autoTranslate_progressInterval": {
1944
+ "label": "Διάστημα ενημέρωσης προόδου",
1945
+ "help": "Ολοκληρωμένα τμήματα κειμένου μεταξύ των ενημερώσεων προόδου."
1946
+ },
1947
+ "autoTranslate_retryCount": {
1948
+ "label": "Επανάληψη μέτρησης",
1949
+ "help": "Μέγιστες επαναλήψεις ανά αποτυχημένο αίτημα."
1950
+ },
1951
+ "autoTranslate_retryDelay": {
1952
+ "label": "Καθυστέρηση επανάληψης (ms)",
1953
+ "help": "Βασική καθυστέρηση επανάληψης σε χιλιοστά του δευτερολέπτου."
1954
+ },
1955
+ "autoTranslate_timeout": {
1956
+ "label": "Λήξη χρονικού ορίου αιτήματος (ms)",
1957
+ "help": "Λήξη χρονικού ορίου αιτήματος παρόχου μετάφρασης."
1958
+ },
1959
+ "autoTranslate_dryRunFirst": {
1960
+ "label": "Πρώτα προεπισκόπηση ξηρής λειτουργίας",
1961
+ "help": "Κάντε προεπισκόπηση του τι θα μεταφραστεί πριν γράψετε αρχεία."
1962
+ },
1963
+ "autoTranslate_onlyMissingOrEnglish": {
1964
+ "label": "Λείπουν μόνο ή αγγλικά κλειδιά",
1965
+ "help": "Διατηρήστε τις υπάρχουσες μεταφρασμένες τιμές-στόχους και μεταφράστε μόνο τιμές που λείπουν, δείκτης, πηγή-αντίγραφο ή πιθανές αγγλικές τιμές."
1966
+ },
1967
+ "autoTranslate_reportStdout": {
1968
+ "label": "Εκτύπωση αναφοράς στο τερματικό",
1969
+ "help": "Εκτυπώστε την αναφορά μετά τη μετάφραση στο stdout."
1970
+ },
1971
+ "autoTranslate_bom": {
1972
+ "label": "Γράψτε UTF-8 BOM",
1973
+ "help": "Γράψτε μεταφρασμένα αρχεία JSON με ένα UTF-8 BOM."
1974
+ },
1975
+ "autoTranslate_protectionEnabled": {
1976
+ "label": "Προστατέψτε τους όρους της επωνυμίας, τα κλειδιά, τις αξίες",
1977
+ "help": "Ενεργοποιήστε προστατευμένους όρους, κλειδιά, τιμές και μοτίβα με δυνατότητα επεξεργασίας από τον χρήστη."
1978
+ },
1979
+ "autoTranslate_protectionFile": {
1980
+ "label": "Προστασία αρχείου JSON",
1981
+ "help": "Το αρχείο JSON έργου που περιέχει κανόνες προστασίας αυτόματης μετάφρασης."
1982
+ },
1983
+ "autoTranslate_promptProtectionSetup": {
1984
+ "label": "Ζητήστε να δημιουργήσετε αρχείο προστασίας",
1985
+ "help": "Ζητήστε να δημιουργήσετε το αρχείο προστασίας όταν εκτελείται για πρώτη φορά η Αυτόματη μετάφραση."
1986
+ },
1987
+ "autoTranslate_promptProtectionUpdate": {
1988
+ "label": "Ζητήστε να ενημερώσετε τους κανόνες προστασίας",
1989
+ "help": "Ρωτήστε εάν θα ενημερώσετε τους κανόνες προστασίας πριν από τις μεταφράσεις του διαχειριστή."
1990
+ },
1991
+ "backup": {
1992
+ "enabled": {
1993
+ "label": "Ενεργοποίηση δημιουργίας αντιγράφων ασφαλείας",
1994
+ "description": "Ενεργοποίηση αυτόματης δημιουργίας αντιγράφων ασφαλείας των ρυθμίσεων",
1995
+ "help": "Ενεργοποίηση/απενεργοποίηση της δυνατότητας δημιουργίας αντιγράφων ασφαλείας"
1996
+ },
1997
+ "singleFileMode": {
1998
+ "label": "Λειτουργία μεμονωμένου αρχείου",
1999
+ "description": "Χρησιμοποιήστε ένα μόνο αρχείο για αντίγραφα ασφαλείας",
2000
+ "help": "Δημιουργία αντιγράφων ασφαλείας ρυθμίσεων σε ένα μόνο αρχείο"
2001
+ },
2002
+ "singleBackupFile": {
2003
+ "label": "Διαδρομή αρχείου αντιγράφων ασφαλείας",
2004
+ "description": "Διαδρομή προς το αρχείο αντιγράφου ασφαλείας",
2005
+ "help": "Διαδρομή προς το μοναδικό αρχείο αντιγράφου ασφαλείας"
2006
+ },
2007
+ "retentionDays": {
2008
+ "label": "Περίοδος Διατήρησης",
2009
+ "description": "Μέρες για τη διατήρηση αρχείων αντιγράφων ασφαλείας",
2010
+ "help": "Αριθμός ημερών για τη διατήρηση παλαιών αντιγράφων ασφαλείας"
2011
+ },
2012
+ "maxBackups": {
2013
+ "label": "Μέγιστα αντίγραφα ασφαλείας",
2014
+ "description": "Μέγιστα αρχεία αντιγράφων ασφαλείας προς διατήρηση",
2015
+ "help": "Μέγιστος αριθμός αντιγράφων ασφαλείας προς διατήρηση"
2016
+ },
2017
+ "confirm": {
2018
+ "label": "Επιβεβαίωση δημιουργίας αντιγράφων ασφαλείας",
2019
+ "description": "Απαιτείται επιβεβαίωση για λειτουργίες δημιουργίας αντιγράφων ασφαλείας",
2020
+ "help": "Επιβεβαιώστε τη λειτουργία δημιουργίας αντιγράφων ασφαλείας"
2021
+ }
2022
+ }
2023
+ },
2024
+ "actions": {
2025
+ "editSetting": "Εκδίδω {setting}:",
2026
+ "settingUpdated": "✅ {setting} ενημερώθηκε με επιτυχία!",
2027
+ "invalidValue": "❌ Μη έγκυρη τιμή. Δοκιμάστε ξανά.",
2028
+ "pressEnter": "Πατήστε Enter για να συνεχίσετε...",
2029
+ "backToMenu": "Επιστροφή στο κύριο μενού",
2030
+ "saveSuccess": "✅ Οι ρυθμίσεις αποθηκεύτηκαν με επιτυχία!",
2031
+ "saveFailed": "❌ Αποτυχία αποθήκευσης ρυθμίσεων: {error}",
2032
+ "resetConfirm": "Είστε βέβαιοι ότι θέλετε να επαναφέρετε όλες τις ρυθμίσεις στις προεπιλογές; (y/N):",
2033
+ "resetSuccess": "✅ Οι ρυθμίσεις επαναφέρθηκαν με επιτυχία στις προεπιλογές!",
2034
+ "importSuccess": "✅ Οι ρυθμίσεις εισήχθησαν με επιτυχία!",
2035
+ "exportSuccess": "✅ Οι ρυθμίσεις εξήχθησαν με επιτυχία!",
2036
+ "fileNotFound": "❌ Το αρχείο δεν βρέθηκε: {path}",
2037
+ "invalidFormat": "❌ Μη έγκυρη μορφή αρχείου ρυθμίσεων",
2038
+ "pinProtectionUpdated": "✅ Προστασία PIN για {script} ενημερώθηκε με επιτυχία!",
2039
+ "pinProtectionReset": "✅ Όλες οι ρυθμίσεις προστασίας PIN επανέρχονται στις προεπιλογές!",
2040
+ "pinProtectionConfigure": "Διαμόρφωση προστασίας PIN για μεμονωμένα σενάρια",
2041
+ "pinProtectionSelectScript": "Επιλέξτε ένα σενάριο για εναλλαγή προστασίας PIN:",
2042
+ "pinProtectionCurrentStatus": "Τρέχουσα κατάσταση: {status}",
2043
+ "pinProtectionEnabled": "Ενεργοποιημένο",
2044
+ "pinProtectionDisabled": "Ανάπηρος",
2045
+ "pinProtectionToggle": "Εναλλαγή προστασίας PIN",
2046
+ "pinProtectionResetAll": "Επαναφορά όλων στις προεπιλογές",
2047
+ "pinProtectionBack": "Επιστροφή στις Ρυθμίσεις ασφαλείας"
2048
+ },
2049
+ "themes": {
2050
+ "light": "Φως",
2051
+ "dark": "Σκοτάδι",
2052
+ "system": "Σύστημα"
2053
+ },
2054
+ "languages": {
2055
+ "en": "αγγλικός",
2056
+ "de": "Γερμανός",
2057
+ "es": "ισπανικά",
2058
+ "fr": "Γάλλος",
2059
+ "ru": "ρωσικός",
2060
+ "ja": "Ιαπωνικά",
2061
+ "zh": "κινέζικα",
2062
+ "it": "Ιταλικά",
2063
+ "pt": "Πορτογαλικά",
2064
+ "nl": "Ολλανδικά",
2065
+ "pl": "Πολωνικά",
2066
+ "sv": "Σουηδικά",
2067
+ "uk": "Ουκρανικά",
2068
+ "cs": "Τσεχικά",
2069
+ "tr": "Τουρκικά",
2070
+ "ko": "Κορεατικά",
2071
+ "ar": "Αραβικά",
2072
+ "hi": "Χίντι",
2073
+ "th": "Ταϊλανδικά",
2074
+ "vi": "Βιετναμέζικα",
2075
+ "he": "Εβραϊκά",
2076
+ "el": "Ελληνικά",
2077
+ "hu": "Ουγγρικά"
2078
+ },
2079
+ "viewAll": {
2080
+ "title": "Προβολή όλων των ρυθμίσεων"
2081
+ },
2082
+ "current": "Ρεύμα",
2083
+ "back": "Επιστροφή στο κύριο μενού",
2084
+ "selectSettingPrompt": "Επιλέξτε ρύθμιση για επεξεργασία (ή b για πίσω, r για επαναφορά):",
2085
+ "invalidOption": "Μη έγκυρη επιλογή.",
2086
+ "editing": "Επεξεργασία",
2087
+ "enterNewValue": "Εισαγάγετε νέα τιμή (ή πατήστε Enter για να διατηρηθεί η τρέχουσα, πληκτρολογήστε \"προεπιλογή\" για να χρησιμοποιήσετε την προεπιλογή συστήματος):",
2088
+ "validOptions": "Έγκυρες επιλογές",
2089
+ "updatedSuccessfully": "ενημερώθηκε με επιτυχία!",
2090
+ "noHelp": "Δεν υπάρχει διαθέσιμη βοήθεια για αυτήν τη ρύθμιση",
2091
+ "resetScriptDirectories": "Επαναφορά στις προεπιλεγμένες τιμές",
2092
+ "resetScriptDirectoriesTitle": "Επαναφορά καταλόγων σεναρίων σε προεπιλογές",
2093
+ "resetScriptDirectoriesWarning1": "Αυτό θα επαναφέρει όλες τις διαμορφώσεις καταλόγου σεναρίων στις προεπιλογές του συστήματός τους.",
2094
+ "resetScriptDirectoriesWarning2": "Όλες οι προσαρμοσμένες διαδρομές καταλόγου θα διαγραφούν. Αυτή η ενέργεια δεν μπορεί να αναιρεθεί.",
2095
+ "resetScriptDirectoriesConfirm": "Είστε βέβαιοι ότι θέλετε να επαναφέρετε όλους τους καταλόγους σεναρίων στις προεπιλογές; (y/N):",
2096
+ "backup": {
2097
+ "title": "Ρυθμίσεις δημιουργίας αντιγράφων ασφαλείας",
2098
+ "description": "Δημιουργία αντιγράφων ασφαλείας των τρεχουσών ρυθμίσεων σε ένα αρχείο",
2099
+ "confirm": "Είστε βέβαιοι ότι θέλετε να δημιουργήσετε αντίγραφα ασφαλείας των τρεχουσών ρυθμίσεων; (y/N):",
2100
+ "success": "✅ Οι ρυθμίσεις δημιουργήθηκαν με επιτυχία σε {backupFile}",
2101
+ "failed": "❌ Αποτυχία δημιουργίας αντιγράφων ασφαλείας ρυθμίσεων: {error}",
2102
+ "enabled": "Ενεργοποίηση δημιουργίας αντιγράφων ασφαλείας",
2103
+ "enabledHelp": "Ενεργοποίηση/απενεργοποίηση της δυνατότητας δημιουργίας αντιγράφων ασφαλείας",
2104
+ "singleFileMode": "Λειτουργία μεμονωμένου αρχείου",
2105
+ "singleFileModeHelp": "Δημιουργία αντιγράφων ασφαλείας ρυθμίσεων σε ένα μόνο αρχείο",
2106
+ "singleBackupFile": "Ενιαίο αρχείο αντιγράφου ασφαλείας",
2107
+ "singleBackupFileHelp": "Διαδρομή προς το μοναδικό αρχείο αντιγράφου ασφαλείας",
2108
+ "retentionDays": "Ημέρες διατήρησης",
2109
+ "retentionDaysHelp": "Αριθμός ημερών για τη διατήρηση παλαιών αντιγράφων ασφαλείας",
2110
+ "maxBackups": "Μέγιστα αντίγραφα ασφαλείας",
2111
+ "maxBackupsHelp": "Μέγιστος αριθμός αντιγράφων ασφαλείας προς διατήρηση",
2112
+ "confirmHelp": "Επιβεβαιώστε τη λειτουργία δημιουργίας αντιγράφων ασφαλείας",
2113
+ "confirmYes": "Ναί",
2114
+ "confirmNo": "Οχι"
2115
+ },
2116
+ "validation": {
2117
+ "valid": "Εγκυρος",
2118
+ "validatingPaths": "Επικύρωση διαμορφωμένων διαδρομών...",
2119
+ "validationComplete": "Ολοκληρώθηκε η επικύρωση διαδρομής: {valid}/{total} έγκυρος."
2120
+ }
2121
+ },
2122
+ "summary": {
2123
+ "separator": "============================================================",
2124
+ "configurationTitle": "🔧 Διαμόρφωση:",
2125
+ "sourceLanguage": "Γλώσσα πηγής: {sourceLanguage}",
2126
+ "supportedExtensions": "Υποστηριζόμενες επεκτάσεις: {extensions}",
2127
+ "excludedFiles": "Εξαιρούμενα αρχεία: {files}",
2128
+ "reportContent": "{report}",
2129
+ "fatalError": "❌ Θανατηφόρο σφάλμα: {error}",
2130
+ "helpTitle": "📊 ΓΕΝΝΗΤΡΙΑ ΣΥΝΟΠΤΙΚΗΣ ΑΝΑΦΟΡΑΣ I18NTK",
2131
+ "helpDescription": "Αναλύει τη δομή του φακέλου i18n και δημιουργεί μια περιεκτική συνοπτική αναφορά που περιλαμβάνει βασικά στατιστικά στοιχεία, ανάλυση δομής αρχείων και ελέγχους επικύρωσης.",
2132
+ "helpUsage": "Χρήση: node i18ntk-summary.js [επιλογές]",
2133
+ "helpOptions": "--πηγή-σκην <dir> Κατάλογος πηγής για ανάλυση",
2134
+ "helpSourceDir": "--πηγή-σκην <dir> Κατάλογος πηγής για ανάλυση",
2135
+ "helpOutput": "--παραγωγή <file> Αρχείο εξόδου για την αναφορά",
2136
+ "helpVerbose": "--περιεκτική, -v Εμφάνιση λεπτομερών πληροφοριών",
2137
+ "helpKeepReports": "--keep-reports Διατηρήστε τις υπάρχουσες αναφορές",
2138
+ "helpDeleteReports": "--delete-reports Διαγραφή υπαρχουσών αναφορών",
2139
+ "helpHelp": "--help, -h Εμφάνιση αυτής της βοήθειας",
2140
+ "helpExamples": "Παραδείγματα:",
2141
+ "helpExample1": "κόμβος i18ntk-summary.js",
2142
+ "helpExample2": "κόμβος i18ntk-summary.js --source-dir ./locales",
2143
+ "helpExample3": "κόμβος i18ntk-summary.js --output summary-report.txt",
2144
+ "helpExample4": "κόμβος i18ntk-summary.js --verbose",
2145
+ "helpExample5": "κόμβος i18ntk-summary.js --source-dir ./locales --output report.json",
2146
+ "couldNotReadFile": "⚠️ Δεν ήταν δυνατή η ανάγνωση του αρχείου: {filePath}",
2147
+ "couldNotParseJSFile": "⚠️ Δεν ήταν δυνατή η ανάλυση του αρχείου JS/TS: {filePath}",
2148
+ "errorReadingFile": "⚠️ Σφάλμα κατά την ανάγνωση του αρχείου {filePath}: {error}",
2149
+ "analyzingFolder": "🔍 Ανάλυση δομής φακέλου...",
2150
+ "noLanguageDirectoriesFound": "❌ Δεν βρέθηκαν κατάλογοι γλωσσών στον καθορισμένο κατάλογο προέλευσης.",
2151
+ "foundLanguages": "✅ Βρέθηκε {count} γλώσσες: {languages}",
2152
+ "referenceLanguageFiles": "📁 Γλώσσα αναφοράς '{language}'έχει {count} αρχεία",
2153
+ "analyzingLanguage": "🌍 Γλώσσα ανάλυσης: {language}",
2154
+ "keysInFiles": "📊 Βρέθηκε {keys} κλειδιά απέναντι {files} αρχεία",
2155
+ "checkingInconsistentKeys": "🔍 Έλεγχος για ασυνεπή κλειδιά σε όλες τις γλώσσες...",
2156
+ "generatingSummaryReport": "📝 Δημιουργία συνοπτικής αναφοράς...",
2157
+ "reportTitle": "📊 I18NTK SUMMARY REPORT",
2158
+ "generated": "Δημιουργήθηκε: {timestamp}",
2159
+ "sourceDirectory": "Κατάλογος πηγής: {dir}",
2160
+ "overview": "📈 OVERVIEW",
2161
+ "languagesCount": "Γλώσσες: {count}",
2162
+ "totalFiles": "Σύνολο αρχείων: {count}",
2163
+ "totalKeys": "Σύνολο κλειδιών: {count}",
2164
+ "avgKeysPerLanguage": "Μέσος όρος κλειδιών ανά γλώσσα: {count}",
2165
+ "languagesBreakdown": "🌍 ΚΑΤΑΣΚΕΥΗ ΓΛΩΣΣΩΝ",
2166
+ "languageBreakdown": "{language}: {files} αρχεία, {keys} κλειδιά",
2167
+ "fileStructure": "📁 ΔΟΜΗ ΑΡΧΕΙΟΥ",
2168
+ "fileKeys": "{file}: {keys} κλειδιά",
2169
+ "missingInLanguages": "⚠️ Λείπει σε: {languages}",
2170
+ "issuesFound": "❌ ISSUES FOUND",
2171
+ "missingFiles": "📁 Αρχεία που λείπουν:",
2172
+ "emptyFiles": "📄 Κενά αρχεία:",
2173
+ "malformedFiles": "⚠️ Αρχεία με κακή μορφή:",
2174
+ "duplicateKeys": "🔑 Διπλότυπα κλειδιά:",
2175
+ "inconsistentKeys": "🔍 Ασυνεπή πλήκτρα:",
2176
+ "missingKeys": "Απών: {keys}{more}",
2177
+ "extraKeys": "Επιπλέον: {keys}{more}",
2178
+ "noIssuesFound": "✅ NO ISSUES FOUND",
2179
+ "allFilesConsistent": "Όλα τα αρχεία μετάφρασης είναι συνεπή σε όλες τις γλώσσες.",
2180
+ "recommendations": "💡 ΠΡΟΤΑΣΕΙΣ",
2181
+ "createMissingFiles": "• Δημιουργήστε αρχεία μετάφρασης που λείπουν",
2182
+ "addContentToEmptyFiles": "• Προσθέστε περιεχόμενο σε άδεια αρχεία μετάφρασης",
2183
+ "fixMalformedFiles": "• Διορθώστε αρχεία JSON/JS με κακή μορφή",
2184
+ "removeDuplicateKeys": "• Αφαιρέστε τα διπλά κλειδιά από τα αρχεία",
2185
+ "synchronizeKeys": "• Συγχρονισμός πλήκτρων σε όλες τις γλώσσες",
2186
+ "splitLargeFiles": "• Εξετάστε το ενδεχόμενο να χωρίσετε μεγάλα αρχεία σε μικρότερους χώρους ονομάτων",
2187
+ "addMoreLanguages": "• Εξετάστε το ενδεχόμενο να προσθέσετε περισσότερες γλώσσες",
2188
+ "nextSteps": "🎯 NEXT STEPS",
2189
+ "nextStep1": "1. Διορθώστε τυχόν προβλήματα που προσδιορίστηκαν παραπάνω",
2190
+ "nextStep2": "2. Εκτελέστε την επικύρωση για να εξασφαλίσετε συνέπεια",
2191
+ "nextStep3": "3. Εξετάστε το ενδεχόμενο να χρησιμοποιήσετε το i18ntk-validate για λεπτομερή επικύρωση",
2192
+ "nextStep4": "4. Συνιστάται τακτική παρακολούθηση",
2193
+ "couldNotFindI18nDirectory": "❌ Δεν ήταν δυνατή η εύρεση του καταλόγου i18n. Παρακαλώ προσδιορίστε --source-dir.",
2194
+ "sourceDirectoryDoesNotExist": "❌ Ο κατάλογος πηγής δεν υπάρχει: {dir}",
2195
+ "i18nSummaryReportGenerator": "📊 Γεννήτρια συνοπτικής αναφοράς I18N",
2196
+ "analysisComplete": "✅ Ολοκληρώθηκε η ανάλυση",
2197
+ "analyzedLanguages": "📊 Γλώσσες που αναλύθηκαν: {count}",
2198
+ "processedFiles": "📁 Επεξεργασμένα αρχεία: {count}",
2199
+ "foundTranslationKeys": "🔑 Βρέθηκαν κλειδιά μετάφρασης: {count}",
2200
+ "foundIssues": "❌ Βρέθηκε {count} ζητήματα",
2201
+ "noIssuesConsole": "✅ Δεν βρέθηκαν προβλήματα - όλα τα αρχεία είναι συνεπή!",
2202
+ "errorDuringAnalysis": "❌ Σφάλμα κατά την ανάλυση: {error}",
2203
+ "usageReportTitle": "📊 I18NTK USAGE REPORT",
2204
+ "usageReportGenerated": "Δημιουργήθηκε: {timestamp}",
2205
+ "usageReportSourceDir": "Κατάλογος πηγής: {sourceDir}",
2206
+ "usageReportI18nDir": "Κατάλογος I18n: {i18nDir}",
2207
+ "usageReportSummary": "📈 SUMMARY",
2208
+ "usageReportSourceFilesScanned": "Τα αρχεία πηγής σαρώθηκαν: {count}",
2209
+ "usageReportTranslationFilesFound": "Βρέθηκαν αρχεία μετάφρασης: {count}",
2210
+ "usageReportAvailableKeys": "Διαθέσιμα κλειδιά μετάφρασης: {count}",
2211
+ "usageReportUsedKeys": "Χρησιμοποιημένα κλειδιά μετάφρασης: {count}",
2212
+ "usageReportDynamicKeys": "Δυναμικά κλειδιά μετάφρασης: {count}",
2213
+ "usageReportUnusedKeys": "Μη χρησιμοποιημένα κλειδιά μετάφρασης: {count}",
2214
+ "usageReportMissingKeys": "Λείπουν κλειδιά μετάφρασης: {count}",
2215
+ "usageReportNotTranslatedKeys": "Μη μεταφρασμένα κλειδιά: {count}",
2216
+ "usageReportTranslationCompleteness": "🌍 ΠΛΗΡΕΣΗ ΜΕΤΑΦΡΑΣΗΣ",
2217
+ "usageReportLanguageCompleteness": "{language}: {completeness}% ({translated}/{total})",
2218
+ "usageReportNotTranslatedInLanguage": "Μη μεταφρασμένο: {count} κλειδιά",
2219
+ "usageReportTranslationFilesDiscovered": "📁 ΑΡΧΕΙΑ ΜΕΤΑΦΡΑΣΗΣ",
2220
+ "usageReportFileInfo": "{relativePath} (χώρος ονόματος: {namespace}, τύπος: {type})",
2221
+ "usageReportUnusedTranslationKeys": "🗑️ ΑΧΡΗΣΙΜΟΠΟΙΗΤΑ ΚΛΕΙΔΙΑ ΜΕΤΑΦΡΑΣΗΣ",
2222
+ "usageReportUnusedKeysDescription": "Αυτά τα κλειδιά υπάρχουν σε αρχεία μετάφρασης αλλά δεν χρησιμοποιούνται στον πηγαίο κώδικα:",
2223
+ "usageReportUnusedKey": "• {key}",
2224
+ "usageReportMoreUnusedKeys": "... και {count} περισσότερα αχρησιμοποίητα κλειδιά",
2225
+ "usageReportMissingTranslationKeys": "❌ ΛΕΙΠΟΝΤΑΙ ΚΛΕΙΔΙΑ ΜΕΤΑΦΡΑΣΗΣ",
2226
+ "usageReportMissingKeysDescription": "Αυτά τα κλειδιά χρησιμοποιούνται στον πηγαίο κώδικα αλλά λείπουν από τα αρχεία μετάφρασης:",
2227
+ "usageReportMissingKey": "• {key}",
2228
+ "usageReportUsedIn": "Χρησιμοποιείται σε: {filePath}",
2229
+ "usageReportMoreFiles": "... και {count} περισσότερα αρχεία",
2230
+ "usageReportDynamicTranslationKeys": "⚡ ΚΛΕΙΔΙΑ ΔΥΝΑΜΙΚΗΣ ΜΕΤΑΦΡΑΣΗΣ",
2231
+ "usageReportDynamicKeysDescription": "Αυτά τα κλειδιά χρησιμοποιούνται δυναμικά (κατασκευάζονται κατά το χρόνο εκτέλεσης):",
2232
+ "usageReportDynamicKey": "• {key}",
2233
+ "usageReportFileUsageBreakdown": "📊 ΑΝΑΛΥΣΗ ΧΡΗΣΗΣ ΑΡΧΕΙΟΥ",
2234
+ "usageReportFileUsage": "{filePath}: {count} κλειδιά",
2235
+ "status": {
2236
+ "generating": "⏳ Δημιουργία...",
2237
+ "completed": "✅ Ολοκληρώθηκε"
2238
+ },
2239
+ "help": {
2240
+ "usage": "Χρήση: node main/manage/index.js [επιλογές]",
2241
+ "interactiveMode": "💡 Χρήση: node main/manage/index.js --command=<command> για άμεση εκτέλεση",
2242
+ "initProject": "🚀 Αρχικοποιήστε νέες γλώσσες",
2243
+ "analyzeTranslations": "🔍 Αναλύστε μεταφράσεις",
2244
+ "validateTranslations": "✅ Επικύρωση μεταφράσεων",
2245
+ "checkUsage": "📊 Ελέγξτε τη χρήση του κλειδιού",
2246
+ "showHelp": "📖 Χρησιμοποιήστε: node main/manage/index.js --help για διαθέσιμες εντολές",
2247
+ "availableCommands": "📖 Διαθέσιμες εντολές:",
2248
+ "initCommand": "init - Εκκίνηση νέων γλωσσών",
2249
+ "analyzeCommand": "ανάλυση - Ανάλυση μεταφράσεων",
2250
+ "validateCommand": "επικύρωση - Επικύρωση μεταφράσεων",
2251
+ "usageCommand": "χρήση - Ελέγξτε τη χρήση του κλειδιού",
2252
+ "sizingCommand": "sizing - Αναλύστε το μέγεθος",
2253
+ "completeCommand": "ολοκληρωμένες - Ολοκληρωμένες μεταφράσεις (100% κάλυψη)",
2254
+ "summaryCommand": "περίληψη - Εμφάνιση κατάστασης έργου",
2255
+ "scannerCommand": "σαρωτής - Σάρωση για προβλήματα i18n",
2256
+ "translateCommand": "μετάφραση - Αυτόματη μετάφραση αρχείων τοπικής ρύθμισης",
2257
+ "debugCommand": "εντοπισμός σφαλμάτων - Εντοπισμός προβλημάτων μετάφρασης"
2258
+ },
2259
+ "test_complete_system": {
2260
+ "starting_test": "🧪 Έναρξη πλήρους δοκιμής συστήματος",
2261
+ "separator": "=",
2262
+ "testing_ui_translations": "📝 Δοκιμή μεταφράσεων διεπαφής χρήστη...",
2263
+ "testing_settings_manager": "⚙️ Διαχείριση ρυθμίσεων δοκιμής...",
2264
+ "testing_main_scripts": "🔧 Δοκιμή βασικών σεναρίων...",
2265
+ "checking_translation_consistency": "🌐 Έλεγχος συνέπειας μετάφρασης...",
2266
+ "non_critical_missing_keys": "ℹ️ {file}: {count} μη κρίσιμα κλειδιά που λείπουν",
2267
+ "extra_keys": "ℹ️ {file}: {count} επιπλέον κλειδιά",
2268
+ "generating_report": "📊 Δημιουργία αναφοράς...",
2269
+ "final_test_report_title": "📋 FINAL TEST REPORT",
2270
+ "passed": "✅ Πέρασε: {passed}",
2271
+ "failed": "❌ Απέτυχε: {failed}",
2272
+ "warnings": "⚠️ Προειδοποιήσεις: {warnings}",
2273
+ "missing_translations_title": "🔍 Λείπουν μεταφράσεις ({count}):",
2274
+ "missing_translation_key": "- {key}",
2275
+ "missing_translations_more": "... και {count} περισσότερο",
2276
+ "errors_title": "❌ Σφάλματα:",
2277
+ "error_message": "- {error}",
2278
+ "overall_status": "📊 Συνολική κατάσταση: {status}",
2279
+ "success_message": "✅ {message}",
2280
+ "failure_message": "❌ {message}",
2281
+ "failure_error_message": "{errorMessage}",
2282
+ "warning_message": "⚠️ {message}",
2283
+ "test_runner_failed": "❌ Ο δοκιμαστικός δρομέας απέτυχε:",
2284
+ "recommendations": {
2285
+ "add_missing_translation_keys": "Προσθέστε κλειδιά μετάφρασης που λείπουν για να διατηρήσετε τη συνέπεια",
2286
+ "fix_failing_scripts": "Διορθώστε τα σενάρια που αποτυγχάνουν πριν από την ανάπτυξη",
2287
+ "review_warning_messages": "Ελέγξτε και διευθυνθείτε προειδοποιητικά μηνύματα",
2288
+ "system_ready_for_deployment": "Το σύστημα είναι έτοιμο για ανάπτυξη"
2289
+ },
2290
+ "hardcodedTexts": {
2291
+ "addMissingTranslationKeys": "Προσθέστε κλειδιά μετάφρασης που λείπουν για να διατηρήσετε τη συνέπεια",
2292
+ "fixFailingScripts": "Διορθώστε τα σενάρια που αποτυγχάνουν πριν από την ανάπτυξη",
2293
+ "reviewWarningMessages": "Ελέγξτε και διευθυνθείτε προειδοποιητικά μηνύματα",
2294
+ "systemReadyForDeployment": "Το σύστημα είναι έτοιμο για ανάπτυξη"
2295
+ }
2296
+ },
2297
+ "testConsoleI18n": {
2298
+ "found_target_file": "Βρέθηκε αρχείο προορισμού: {fileName}",
2299
+ "scanning_files_for_console_statements": "Σάρωση αρχείων για δηλώσεις κονσόλας...",
2300
+ "found_javascript_files": "Θεμελιώ {count} Αρχεία JavaScript.",
2301
+ "console_i18n_analysis_results": "Αποτελέσματα ανάλυσης κονσόλας I18n",
2302
+ "total_console_statements": "Σύνολο δηλώσεων κονσόλας: {count}",
2303
+ "translated_statements": "Μεταφρασμένες δηλώσεις: {count}",
2304
+ "hardcoded_statements": "Κωδικοποιημένες δηλώσεις: {count}",
2305
+ "translation_coverage": "Κάλυψη μετάφρασης: {percentage}%",
2306
+ "coverage_by_file": "Κάλυψη ανά αρχείο:",
2307
+ "file_coverage_stats": "{emoji} {fileName}: {coverage}% ({translated}/{total})",
2308
+ "hardcoded_console_statements": "Εντυπωμένες δηλώσεις κονσόλας:",
2309
+ "file_header": "Αρχείο: {file}",
2310
+ "line_statement": "Γραμμή {line}: {statement}",
2311
+ "suggested_key": "Προτεινόμενο κλειδί: {key}",
2312
+ "suggested_replacement": "Προτεινόμενη αντικατάσταση: {replacement}",
2313
+ "recommendations": "Συστάσεις:",
2314
+ "recommendation_1": "1. Αντικαταστήστε τις συμβολοσειρές με σκληρό κώδικα με κλήσεις i18n.t().",
2315
+ "recommendation_2": "2. Προσθέστε νέα κλειδιά στα σχετικά αρχεία JSON μετάφρασης.",
2316
+ "recommendation_3": "3. Βεβαιωθείτε ότι όλα τα μηνύματα της κονσόλας είναι προς το χρήστη και απαιτούν μετάφραση.",
2317
+ "recommendation_4": "4. Χρησιμοποιήστε γράμματα προτύπων ή συνένωση συμβολοσειρών για δυναμικά μηνύματα, περνώντας μεταβλητές στο i18n.t().",
2318
+ "translation_keys_to_add": "Προτεινόμενα κλειδιά μετάφρασης για προσθήκη:",
2319
+ "add_keys_instruction": "Αντιγράψτε την ακόλουθη δομή JSON στα μεταφραστικά σας αρχεία:",
2320
+ "perfect_translation_coverage": "Τέλεια Μεταφραστική Κάλυψη!",
2321
+ "all_statements_using_translation": "Όλες οι δηλώσεις κονσόλας χρησιμοποιούν το σύστημα μετάφρασης.",
2322
+ "i18n_console_translation_checker": "Έλεγχος μετάφρασης κονσόλας I18n",
2323
+ "script_description_line1": "Αυτό το σενάριο σαρώνει όλα τα αρχεία JavaScript για δηλώσεις κονσόλας",
2324
+ "script_description_line2": "και ελέγχει αν χρησιμοποιούν το σύστημα μετάφρασης.",
2325
+ "analysis_completed_in_duration": "Η ανάλυση ολοκληρώθηκε σε {duration} δευτερόλεπτα.",
2326
+ "report_saved_to_path": "Η αναφορά αποθηκεύτηκε σε: {path}",
2327
+ "found_hardcoded_messages": "Θεμελιώ {count} σκληρά κωδικοποιημένα μηνύματα. Έξοδος με κωδικό σφάλματος 1.",
2328
+ "all_console_messages_use_translation": "Όλα τα μηνύματα της κονσόλας χρησιμοποιούν μετάφραση. Έξοδος με κωδικό 0.",
2329
+ "consoleTranslationsCheck": "Έλεγχος μεταφράσεων κονσόλας"
2330
+ },
2331
+ "translate_mismatches": {
2332
+ "title": "🌐 Βοηθός μετάφρασης {dryRun}",
2333
+ "separator": "=====================================",
2334
+ "processing_file": "📄 Επεξεργασία {language}.json...",
2335
+ "translation_summary_title": "📊 Περίληψη μετάφρασης:",
2336
+ "total_translations_applied": "Σύνολο μεταφράσεων που εφαρμόστηκαν: {totalTranslations}",
2337
+ "run_with_apply_instruction": "💡 Εκτελέστε με --εφαρμογή για να εφαρμόσετε αυτές τις μεταφράσεις",
2338
+ "no_translation_mappings": "⚠️ Δεν υπάρχουν διαθέσιμες αντιστοιχίσεις μετάφρασης για {language}",
2339
+ "translation_applied": "✅ {key}: \"{oldValue}\" → \"{newValue}\"",
2340
+ "saved_translations": "💾 Αποθηκεύτηκε {count} μεταφράσεις σε {filename}",
2341
+ "found_translatable_items": "🔍 Βρέθηκε {count} μεταφράσιμα στοιχεία",
2342
+ "no_automatic_translations": "✨ Δεν υπάρχουν διαθέσιμες αυτόματες μεταφράσεις",
2343
+ "error_processing_file": "❌ Σφάλμα επεξεργασίας {filename}: {errorMessage}",
2344
+ "coverage_report_title": "📊 Έκθεση κάλυψης μετάφρασης",
2345
+ "coverage_report_separator": "===============================",
2346
+ "file_header": "📄 {filename}:",
2347
+ "total_keys": "Σύνολο κλειδιών: {total}",
2348
+ "translated_keys": "Μεταφρασμένο: {translated}",
2349
+ "untranslated_markers": "Μη μεταφρασμένοι δείκτες: {untranslated}",
2350
+ "contains_english": "Περιέχει αγγλικά: {hasEnglish}",
2351
+ "coverage_percentage": "Κάλυψη: {coverage}%",
2352
+ "error_general": "❌ Σφάλμα:",
2353
+ "use_help": "Χρησιμοποιήστε τη --help για πληροφορίες χρήσης"
2354
+ },
2355
+ "cleaningUpReportFiles": "Εκκαθάριση παλαιών αρχείων αναφοράς...",
2356
+ "couldNotDelete": "Δεν ήταν δυνατή η διαγραφή {file}: {error}",
2357
+ "deletedOldReportFiles": "Διαγράφηκε {count} παλιό αρχείο(α) αναφοράς.",
2358
+ "errorCleaningUpReports": "Σφάλμα κατά την εκκαθάριση των αναφορών: {error}",
2359
+ "noOldReportFilesToDelete": "Δεν υπάρχουν παλιά αρχεία αναφοράς για διαγραφή.",
2360
+ "reportFilesPreserved": "Τα αρχεία αναφοράς διατηρήθηκαν.",
2361
+ "reportSaveFailed": "Αποτυχία αποθήκευσης αναφοράς σε: {reportPath}",
2362
+ "reportSaved": "Η αναφορά αποθηκεύτηκε σε: {reportPath}"
2363
+ },
2364
+ "ui": {
2365
+ "autoDetectedI18nDirectory": "Αυτόματος εντοπισμένος κατάλογος i18n: {path}",
2366
+ "executingCommand": "Εκτέλεση εντολής: {command}",
2367
+ "unknownCommand": "Άγνωστη εντολή: {command}",
2368
+ "errorExecutingCommand": "Σφάλμα κατά την εκτέλεση της εντολής: {error}",
2369
+ "errorLoadingTranslationFile": "Σφάλμα κατά τη φόρτωση του αρχείου μετάφρασης για το '{language}': {error}",
2370
+ "errorSavingLanguagePreference": "Σφάλμα κατά την αποθήκευση της προτίμησης γλώσσας: {error}",
2371
+ "noActiveReadlineInterface": "Δεν υπάρχει διαθέσιμη διεπαφή ενεργής γραμμής ανάγνωσης",
2372
+ "uiLanguageUpdated": "Η γλώσσα διεπαφής χρήστη ενημερώθηκε σε: {language}",
2373
+ "selectOptionPrompt": "Επιλέξτε μια επιλογή:",
2374
+ "pressEnterToReturn": "Πατήστε Enter για να επιστρέψετε στο κύριο μενού...",
2375
+ "detectedSourceDirectory": "Εντοπίστηκε κατάλογος πηγής: {sourceDir}",
2376
+ "detectedI18nDirectory": "Εντοπίστηκε κατάλογος i18n: {directory}",
2377
+ "toolkitTitle": "i18ntk - Enterprise i18n Management Toolkit",
2378
+ "versionInfo": "Εκδοχή: {version}",
2379
+ "releaseDate": "Ημερομηνία κυκλοφορίας: {date}",
2380
+ "maintainer": "Συντηρητής: {maintainer}",
2381
+ "nodeVersion": "Node.js: {version}",
2382
+ "license": "Αδεια: {license}",
2383
+ "whatsNew": "✨ Τι νέο υπάρχει στο v{version}:",
2384
+ "changeItem": "{change}",
2385
+ "documentation": "📚 Τεκμηρίωση: {url}",
2386
+ "issues": "🐛 Θέματα: {url}",
2387
+ "versionInfoUnavailable": "Οι πληροφορίες έκδοσης i18ntk δεν είναι διαθέσιμες",
2388
+ "versionInfoError": "Σφάλμα: {error}"
2389
+ },
2390
+ "validateLanguagePurity": {
2391
+ "phrase_debug_tools": "εργαλεία εντοπισμού σφαλμάτων",
2392
+ "phrase_settings": "ρυθμίσεις",
2393
+ "phrase_configuration": "διαμόρφωση",
2394
+ "phrase_invalid_choice": "άκυρη επιλογή",
2395
+ "phrase_please_select": "παρακαλώ επιλέξτε",
2396
+ "phrase_back_to_main_menu": "επιστροφή στο κύριο μενού",
2397
+ "phrase_error": "σφάλμα",
2398
+ "phrase_warning": "προειδοποίηση",
2399
+ "phrase_success": "επιτυχία",
2400
+ "phrase_failed": "αποτυχημένος",
2401
+ "phrase_loading": "φόρτωση",
2402
+ "phrase_saving": "οικονομία",
2403
+ "phrase_full_system_debug": "πλήρης εντοπισμός σφαλμάτων συστήματος",
2404
+ "phrase_configuration_debug": "εντοπισμός σφαλμάτων διαμόρφωσης",
2405
+ "phrase_translation_debug": "εντοπισμός σφαλμάτων μετάφρασης",
2406
+ "phrase_performance_debug": "εντοπισμός σφαλμάτων απόδοσης",
2407
+ "phrase_admin_pin_setup": "ρύθμιση pin admin",
2408
+ "phrase_enter_admin_pin": "εισαγάγετε την καρφίτσα διαχειριστή",
2409
+ "phrase_confirm_admin_pin": "επιβεβαιώστε την καρφίτσα διαχειριστή",
2410
+ "phrase_authentication_failed": "ο έλεγχος ταυτότητας απέτυχε",
2411
+ "phrase_access_denied": "Δεν επιτρέπεται η πρόσβαση",
2412
+ "phrase_security_log": "ημερολόγιο ασφαλείας",
2413
+ "language_german": "Γερμανός",
2414
+ "language_french": "Γάλλος",
2415
+ "language_spanish": "ισπανικά",
2416
+ "language_russian": "ρωσικός",
2417
+ "language_japanese": "Ιαπωνικά",
2418
+ "language_chinese": "κινέζικα",
2419
+ "validator_title": "🔍 Επαληθευτής καθαρότητας γλώσσας",
2420
+ "validating_file": "📄 Επικύρωση {language}.json ({name})...",
2421
+ "valid_file_message": "✅ Ισχύει - Χωρίς παραβιάσεις της καθαρότητας της γλώσσας",
2422
+ "invalid_file_message": "❌ Μη έγκυρο - {count} παραβίαση(εις) που εντοπίστηκαν",
2423
+ "no_validation_rules": "Δεν έχουν οριστεί κανόνες επικύρωσης για τη γλώσσα: {language}",
2424
+ "error_reading_file": "Σφάλμα κατά την ανάγνωση του αρχείου: {errorMessage}",
2425
+ "issue_forbidden_marker": "Περιέχει απαγορευμένο δείκτη: {marker}",
2426
+ "issue_english_phrase": "Περιέχει αγγλική φράση: \"{phrase}\"",
2427
+ "issue_english_words": "Περιέχει αγγλικές λέξεις: {words}",
2428
+ "issue_missing_cyrillic": "Το μεγάλο κείμενο πρέπει να περιέχει κυριλλικούς χαρακτήρες για τα ρωσικά",
2429
+ "issue_missing_japanese": "Το μεγάλο κείμενο πρέπει να περιέχει ιαπωνικούς χαρακτήρες",
2430
+ "issue_missing_chinese": "Το εκτενές κείμενο θα πρέπει να περιέχει κινεζικούς χαρακτήρες",
2431
+ "summary_title": "📊 ΣΥΝΟΨΗ ΕΠΙΚΥΡΩΣΗΣ",
2432
+ "overall_results_header": "📋 Συνολικά αποτελέσματα:",
2433
+ "total_files_validated": "Σύνολο επικυρωμένων αρχείων: {count}",
2434
+ "valid_files": "Έγκυρα αρχεία: {count}",
2435
+ "invalid_files": "Μη έγκυρα αρχεία: {count}",
2436
+ "total_violations": "Συνολικές παραβάσεις: {count}",
2437
+ "violations_by_file_header": "❌ ΠΑΡΑΒΑΣΕΙΣ ΑΠΟ ΑΡΧΕΙΟ:"
2438
+ },
2439
+ "workflow": {
2440
+ "title": "Διαχείριση ροής εργασιών",
2441
+ "description": "Διαχειριστείτε τις ροές εργασίας i18n.",
2442
+ "select_workflow_file": "Επιλέξτε ένα αρχείο ροής εργασίας για εκτέλεση:",
2443
+ "no_workflow_files": "Δεν βρέθηκαν αρχεία ροής εργασίας στον κατάλογο ροών εργασιών.",
2444
+ "invalid_selection": "Μη έγκυρη επιλογή. Εισαγάγετε έναν αριθμό που αντιστοιχεί σε ένα αρχείο ροής εργασίας.",
2445
+ "workflow_execution_started": "Έναρξη ροής εργασιών: {workflowName}",
2446
+ "workflow_execution_completed": "Ολοκληρώθηκε η ροή εργασιών: {workflowName}",
2447
+ "workflow_execution_failed": "Η ροή εργασίας απέτυχε: {workflowName} - {error}",
2448
+ "workflow_cancelled": "Η εκτέλεση της ροής εργασίας ακυρώθηκε.",
2449
+ "press_enter_to_continue": "Πατήστε Enter για να συνεχίσετε!",
2450
+ "starting": "🚀 Έναρξη ροής εργασιών...",
2451
+ "completed": "✅ Η ροή εργασίας ολοκληρώθηκε με επιτυχία!",
2452
+ "checkReports": "📄 Ελέγξτε τις αναφορές για λεπτομέρειες.",
2453
+ "exitingCompleted": "📝 Η ροή εργασιών ολοκληρώθηκε. Έξοδος...",
2454
+ "summary": {
2455
+ "title": "📋 WORKFLOW SUMMARY",
2456
+ "separator": "===================",
2457
+ "completedAt": "🕐 Η ροή εργασίας ολοκληρώθηκε στη διεύθυνση: {timestamp}",
2458
+ "initialViolations": "📊 Αρχικές παραβάσεις: {count}",
2459
+ "finalViolations": "📉 Τελικές παραβάσεις: {count}",
2460
+ "totalFixes": "🔧 Συνολικές διορθώσεις που εφαρμόστηκαν: {count}",
2461
+ "improvement": "📈 Βελτίωση: {percentage}%",
2462
+ "stepResults": "📝 STEP RESULTS:",
2463
+ "stepDetail": "{number}. {status} {stepName}",
2464
+ "violations": "Παραβιάσεις: {count}",
2465
+ "fixesApplied": "Διορθώσεις που εφαρμόστηκαν: {count}",
2466
+ "nextSteps": "💡 NEXT STEPS:",
2467
+ "congratulations": "🎉 Συγχαρητήρια! Όλα τα τοπικά αρχεία έχουν πλέον τέλεια καθαρότητα γλώσσας!",
2468
+ "cicdIntegration": "✅ Εξετάστε το ενδεχόμενο να ενσωματώσετε τον επικυρωτή στη διοχέτευση CI/CD",
2469
+ "automatedChecks": "✅ Ρύθμιση αυτοματοποιημένων ελέγχων για νέες μεταφράσεις",
2470
+ "greatProgress": "🎯 Μεγάλη πρόοδος! Τα περισσότερα ζητήματα έχουν λυθεί.",
2471
+ "manualReview": "🔍 Ελέγξτε τις υπόλοιπες παραβιάσεις με μη αυτόματο τρόπο",
2472
+ "addMappings": "🌐 Εξετάστε το ενδεχόμενο να προσθέσετε περισσότερες μεταφραστικές αντιστοιχίσεις για περιβλήματα άκρων",
2473
+ "goodProgress": "📈 Έχει σημειωθεί καλή πρόοδος, αλλά χρειάζεται περισσότερη δουλειά.",
2474
+ "expandMappings": "🔧 Επεκτείνετε τις αντιστοιχίσεις αυτόματης μετάφρασης",
2475
+ "professionalReview": "👥 Εξετάστε το ενδεχόμενο μη αυτόματης αναθεώρησης περίπλοκων μεταφράσεων",
2476
+ "runAgain": "🔄 Εκτελέστε ξανά τη ροή εργασίας αφού προσθέσετε περισσότερες αντιστοιχίσεις",
2477
+ "limitedProgress": "⚠️ Περιορισμένη πρόοδος. Μπορεί να χρειαστεί χειροκίνητη παρέμβαση.",
2478
+ "reviewMappings": "🔍 Ελέγξτε τις αντιστοιχίσεις μετάφρασης και προσθέστε αυτές που λείπουν",
2479
+ "professionalServices": "👥 Σκεφτείτε τις επαγγελματικές μεταφραστικές υπηρεσίες",
2480
+ "checkIssues": "🔧 Ελέγξτε για συστηματικά ζητήματα στα αρχεία τοπικών ρυθμίσεων",
2481
+ "success": "✅",
2482
+ "warning": "⚠️"
2483
+ }
2484
+ },
2485
+ "consoleI18nTester": {
2486
+ "found_target_file": "Βρέθηκε αρχείο προορισμού",
2487
+ "scanning_files_for_console_statements": "Σάρωση αρχείων για δηλώσεις κονσόλας",
2488
+ "found_javascript_files": "Βρέθηκαν αρχεία javascript",
2489
+ "console_i18n_analysis_results": "Αποτελέσματα ανάλυσης κονσόλας i18n",
2490
+ "total_console_statements": "Σύνολο δηλώσεων κονσόλας",
2491
+ "translated_statements": "Μεταφρασμένες δηλώσεις",
2492
+ "hardcoded_statements": "Κωδικοποιημένες δηλώσεις",
2493
+ "translation_coverage": "Μεταφραστική κάλυψη",
2494
+ "coverage_by_file": "Κάλυψη κατά αρχείο",
2495
+ "file_coverage_stats": "Στατιστικά κάλυψης αρχείων",
2496
+ "hardcoded_console_statements": "Εντυπωμένες δηλώσεις κονσόλας",
2497
+ "file_header": "Κεφαλίδα αρχείου",
2498
+ "line_statement": "Δήλωση γραμμής",
2499
+ "suggested_key": "Προτεινόμενο κλειδί",
2500
+ "suggested_replacement": "Προτεινόμενη αντικατάσταση",
2501
+ "recommendations": "συστάσεις",
2502
+ "recommendation_1": "Σύσταση 1",
2503
+ "recommendation_2": "Σύσταση 2",
2504
+ "recommendation_3": "Σύσταση 3",
2505
+ "recommendation_4": "Σύσταση 4",
2506
+ "translation_keys_to_add": "Κλειδιά μετάφρασης για προσθήκη",
2507
+ "add_keys_instruction": "Οδηγίες προσθήκης κλειδιών",
2508
+ "perfect_translation_coverage": "Τέλεια μεταφραστική κάλυψη",
2509
+ "all_statements_using_translation": "Όλες οι δηλώσεις που χρησιμοποιούν μετάφραση",
2510
+ "i18n_console_translation_checker": "Έλεγχος μετάφρασης κονσόλας I18n",
2511
+ "script_description_line1": "Γραμμή περιγραφής σεναρίου 1",
2512
+ "script_description_line2": "Γραμμή περιγραφής σεναρίου 2",
2513
+ "analysis_completed_in_duration": "Η ανάλυση ολοκληρώθηκε σε διάρκεια",
2514
+ "report_saved_to_path": "Η αναφορά αποθηκεύτηκε στη διαδρομή",
2515
+ "found_hardcoded_messages": "Βρέθηκαν σκληρά κωδικοποιημένα μηνύματα",
2516
+ "all_console_messages_use_translation": "Όλα τα μηνύματα της κονσόλας χρησιμοποιούν μετάφραση"
2517
+ },
2518
+ "exportTranslations": {
2519
+ "createdDirectory": "Δημιουργήθηκε κατάλογος",
2520
+ "foundFiles": "Βρέθηκαν αρχεία",
2521
+ "createdTemplate": "Δημιουργήθηκε πρότυπο",
2522
+ "skippedExisting": "Παράβλεψη υπάρχοντος",
2523
+ "title": "Τίτλος",
2524
+ "creatingTemplates": "Δημιουργία προτύπων",
2525
+ "summary": "Περίληψη",
2526
+ "summaryLanguages": "Περίληψη Γλώσσες",
2527
+ "summaryFilesPerLanguage": "Σύνοψη αρχείων ανά γλώσσα",
2528
+ "summaryTotalFiles": "Σύνοψη Σύνολο αρχείων",
2529
+ "success": "Επιτυχία",
2530
+ "location": "Τοποθεσία",
2531
+ "nextSteps": "Επόμενα Βήματα"
2532
+ },
2533
+ "dashboard": {
2534
+ "title": "Τίτλος",
2535
+ "overview": "Επισκόπηση"
2536
+ },
2537
+ "auth": {
2538
+ "title": "Τίτλος",
2539
+ "email": "E-mail",
2540
+ "password": "Σύνθημα",
2541
+ "signIn": "Είσοδος",
2542
+ "forgotPassword": "Ξέχασα τον κωδικό πρόσβασης",
2543
+ "signUp": "Εγγραφείτε"
2544
+ },
2545
+ "checkUsage": {
2546
+ "usage_analysis_failed": "Η ανάλυση χρήσης απέτυχε."
2547
+ },
2548
+ "completeTranslations": {
2549
+ "warning_could_not_parse_filepa": "Προειδοποίηση: δεν ήταν δυνατή η ανάλυση της διαδρομής αρχείου: {filePath}"
2550
+ },
2551
+ "pressEnterToContinue": "Πατήστε Enter για να συνεχίσετε...",
2552
+ "status": {
2553
+ "exitingCompleted": "Η ροή εργασίας ολοκληρώθηκε. Έξοδος..."
2554
+ },
2555
+ "prompt": {
2556
+ "yesTokens": [
2557
+ "y",
2558
+ "Ναί"
2559
+ ],
2560
+ "noTokens": [
2561
+ "n",
2562
+ "Όχι"
2563
+ ]
2564
+ },
2565
+ "translate": {
2566
+ "title": "Αυτόματη μετάφραση",
2567
+ "sourceDirectory": {
2568
+ "title": "Κατάλογος τοπικών ρυθμίσεων πηγής",
2569
+ "currentProject": "Τρέχον έργο: {dir}",
2570
+ "accepted": "Αποδεκτό: μια απόλυτη διαδρομή ή μια διαδρομή σε σχέση με το τρέχον έργο.",
2571
+ "localeRootExample": "./locales (μετά επιλέξτε γλώσσα πηγής: en)",
2572
+ "folderHint": "Ο φάκελος μπορεί να περιέχει αρχεία JSON απευθείας ή φακέλους γλωσσών όπως ./locales/en.",
2573
+ "defaultNotFound": "Δεν βρέθηκε ο προεπιλεγμένος κατάλογος: {dir}",
2574
+ "enterExisting": "Εισαγάγετε έναν υπάρχοντα κατάλογο με αρχεία τοπικής ρύθμισης JSON.",
2575
+ "directoryNotFound": "Ο κατάλογος δεν βρέθηκε: {dir}",
2576
+ "enterFolderExample": "Εισαγάγετε έναν υπάρχοντα φάκελο, για παράδειγμα ./locales/en.",
2577
+ "notDirectory": "Όχι κατάλογος: {dir}",
2578
+ "using": "Χρήση καταλόγου πηγής: {dir}"
2579
+ },
2580
+ "targetLanguages": {
2581
+ "title": "Γλώσσες-στόχοι",
2582
+ "allConfigured": "α) Όλες οι διαμορφωμένες γλώσσες-στόχοι: {languages}",
2583
+ "noneConfigured": "α) Όλες οι διαμορφωμένες γλώσσες προορισμού: καμία δεν έχει ρυθμιστεί",
2584
+ "enterCodes": "Ή πληκτρολογήστε έναν ή περισσότερους κωδικούς γλώσσας διαχωρισμένους με κόμμα/κενό.",
2585
+ "sourceExcluded": "Γλώσσα πηγής \"{lang}\" θα αποκλειστεί αυτόματα.",
2586
+ "noneSelected": "Δεν έχουν επιλεγεί έγκυρες γλώσσες-στόχοι. Ακύρωση.",
2587
+ "configureHint": "Διαμορφώστε τις προεπιλεγμένες γλώσσες σε .i18ntk-config ή εισαγάγετε τους κωδικούς προορισμού με μη αυτόματο τρόπο.",
2588
+ "selected": "Γλώσσες στόχου: {languages}"
2589
+ },
2590
+ "protection": {
2591
+ "title": "Προστατευμένοι όροι και κλειδιά"
2592
+ },
2593
+ "common": {
2594
+ "default": "Αθέτηση: {value}",
2595
+ "examples": "Παραδείγματα:",
2596
+ "exampleValue": "Παράδειγμα: {value}",
2597
+ "examplesInline": "Παραδείγματα: {examples}",
2598
+ "pressEnterDefault": "Πατήστε Enter για να χρησιμοποιήσετε την προεπιλογή.",
2599
+ "usingDefault": "Χρήση προεπιλογής: {value}"
2600
+ },
2601
+ "sourceLanguage": {
2602
+ "title": "Κώδικας γλώσσας πηγής",
2603
+ "hint": "Αυτό θα πρέπει να ταιριάζει με τη γλώσσα των τιμών JSON πηγής.",
2604
+ "using": "Χρήση γλώσσας πηγής: {lang}",
2605
+ "invalid": "Μη έγκυρος κωδικός γλώσσας. Χρησιμοποιήστε 2+ χαρακτήρες (π.χ. en, de, fr)."
2606
+ },
2607
+ "files": {
2608
+ "title": "Ποια αρχεία να μεταφραστούν;",
2609
+ "all": "α) Όλα τα αρχεία JSON ({count}: {files})",
2610
+ "choicePrompt": "Επιλογή [a/all or file number]:",
2611
+ "invalidChoice": "Μη έγκυρη επιλογή. Ακύρωση."
2612
+ },
2613
+ "dryRun": {
2614
+ "previewFor": "Προεπισκόπηση ξηρής λειτουργίας για \"{lang}\"..."
2615
+ },
2616
+ "confirm": {
2617
+ "proceed": "Συνέχεια με την πραγματική μετάφραση;",
2618
+ "yesNoPrompt": "[y]es / [n]o:",
2619
+ "cancelled": "Η μετάφραση ακυρώθηκε."
2620
+ },
2621
+ "run": {
2622
+ "translatingTo": "Μετάφραση σε \"{lang}\"...",
2623
+ "failedFor": "Απέτυχε για \"{lang}\": {error}"
2624
+ },
2625
+ "summary": {
2626
+ "title": "Περίληψη:",
2627
+ "complete": "Η μετάφραση ολοκληρώθηκε!"
2628
+ },
2629
+ "nonInteractive": {
2630
+ "useDirect": "Μη διαδραστική λειτουργία. Χρησιμοποιήστε αντ' αυτού άμεσο CLI:"
2631
+ },
2632
+ "errors": {
2633
+ "sourceDirectoryNotFound": "Ο κατάλογος τοπικών ρυθμίσεων πηγής δεν βρέθηκε: {dir}"
2634
+ }
2635
+ }
2636
+ }