i18ntk 1.10.2 → 2.0.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 (108) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +141 -1191
  3. package/main/i18ntk-analyze.js +65 -84
  4. package/main/i18ntk-backup-class.js +420 -0
  5. package/main/i18ntk-backup.js +3 -3
  6. package/main/i18ntk-complete.js +90 -65
  7. package/main/i18ntk-doctor.js +123 -103
  8. package/main/i18ntk-fixer.js +61 -725
  9. package/main/i18ntk-go.js +14 -15
  10. package/main/i18ntk-init.js +77 -26
  11. package/main/i18ntk-java.js +27 -32
  12. package/main/i18ntk-js.js +70 -68
  13. package/main/i18ntk-manage.js +129 -30
  14. package/main/i18ntk-php.js +75 -75
  15. package/main/i18ntk-py.js +55 -56
  16. package/main/i18ntk-scanner.js +59 -57
  17. package/main/i18ntk-setup.js +9 -404
  18. package/main/i18ntk-sizing.js +6 -6
  19. package/main/i18ntk-summary.js +21 -18
  20. package/main/i18ntk-ui.js +11 -10
  21. package/main/i18ntk-usage.js +54 -18
  22. package/main/i18ntk-validate.js +13 -13
  23. package/main/manage/commands/AnalyzeCommand.js +1124 -0
  24. package/main/manage/commands/BackupCommand.js +62 -0
  25. package/main/manage/commands/CommandRouter.js +295 -0
  26. package/main/manage/commands/CompleteCommand.js +61 -0
  27. package/main/manage/commands/DoctorCommand.js +60 -0
  28. package/main/manage/commands/FixerCommand.js +624 -0
  29. package/main/manage/commands/InitCommand.js +62 -0
  30. package/main/manage/commands/ScannerCommand.js +654 -0
  31. package/main/manage/commands/SizingCommand.js +60 -0
  32. package/main/manage/commands/SummaryCommand.js +61 -0
  33. package/main/manage/commands/UsageCommand.js +60 -0
  34. package/main/manage/commands/ValidateCommand.js +978 -0
  35. package/main/manage/index-fixed.js +1447 -0
  36. package/main/manage/index.js +1462 -0
  37. package/main/manage/managers/DebugMenu.js +140 -0
  38. package/main/manage/managers/InteractiveMenu.js +177 -0
  39. package/main/manage/managers/LanguageMenu.js +62 -0
  40. package/main/manage/managers/SettingsMenu.js +53 -0
  41. package/main/manage/services/AuthenticationService.js +263 -0
  42. package/main/manage/services/ConfigurationService-fixed.js +449 -0
  43. package/main/manage/services/ConfigurationService.js +449 -0
  44. package/main/manage/services/FileManagementService.js +368 -0
  45. package/main/manage/services/FrameworkDetectionService.js +458 -0
  46. package/main/manage/services/InitService.js +1051 -0
  47. package/main/manage/services/SetupService.js +462 -0
  48. package/main/manage/services/SummaryService.js +450 -0
  49. package/main/manage/services/UsageService.js +1502 -0
  50. package/package.json +32 -29
  51. package/runtime/enhanced.d.ts +221 -221
  52. package/runtime/index.d.ts +29 -29
  53. package/runtime/index.full.d.ts +331 -331
  54. package/runtime/index.js +7 -6
  55. package/scripts/build-lite.js +17 -17
  56. package/scripts/deprecate-versions.js +23 -6
  57. package/scripts/export-translations.js +5 -5
  58. package/scripts/fix-all-i18n.js +3 -3
  59. package/scripts/fix-and-purify-i18n.js +3 -2
  60. package/scripts/fix-locale-control-chars.js +110 -0
  61. package/scripts/lint-locales.js +80 -0
  62. package/scripts/locale-optimizer.js +8 -8
  63. package/scripts/prepublish.js +21 -21
  64. package/scripts/security-check.js +117 -117
  65. package/scripts/sync-translations.js +4 -4
  66. package/scripts/sync-ui-locales.js +9 -8
  67. package/scripts/validate-all-translations.js +8 -7
  68. package/scripts/verify-deprecations.js +157 -161
  69. package/scripts/verify-translations.js +6 -5
  70. package/settings/i18ntk-config.json +282 -282
  71. package/settings/language-config.json +5 -5
  72. package/settings/settings-cli.js +9 -9
  73. package/settings/settings-manager.js +18 -18
  74. package/ui-locales/de.json +2417 -2348
  75. package/ui-locales/en.json +2415 -2352
  76. package/ui-locales/es.json +2425 -2353
  77. package/ui-locales/fr.json +2418 -2348
  78. package/ui-locales/ja.json +2463 -2361
  79. package/ui-locales/ru.json +2463 -2359
  80. package/ui-locales/zh.json +2418 -2351
  81. package/utils/admin-auth.js +2 -2
  82. package/utils/admin-cli.js +297 -297
  83. package/utils/admin-pin.js +9 -9
  84. package/utils/cli-helper.js +9 -9
  85. package/utils/config-helper.js +73 -104
  86. package/utils/config-manager.js +204 -171
  87. package/utils/config.js +5 -4
  88. package/utils/env-manager.js +249 -263
  89. package/utils/framework-detector.js +27 -24
  90. package/utils/i18n-helper.js +85 -41
  91. package/utils/init-helper.js +152 -94
  92. package/utils/json-output.js +98 -98
  93. package/utils/mini-commander.js +179 -0
  94. package/utils/missing-key-validator.js +5 -5
  95. package/utils/plugin-loader.js +40 -29
  96. package/utils/prompt.js +14 -44
  97. package/utils/safe-json.js +40 -0
  98. package/utils/secure-errors.js +3 -3
  99. package/utils/security-check-improved.js +390 -0
  100. package/utils/security-config.js +5 -5
  101. package/utils/security-fixed.js +607 -0
  102. package/utils/security.js +652 -602
  103. package/utils/setup-enforcer.js +136 -44
  104. package/utils/setup-validator.js +33 -32
  105. package/utils/ultra-performance-optimizer.js +11 -9
  106. package/utils/watch-locales.js +2 -1
  107. package/utils/prompt-fixed.js +0 -55
  108. package/utils/security-check.js +0 -454
@@ -0,0 +1,60 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * I18NTK SIZING COMMAND
5
+ *
6
+ * Handles translation sizing analysis functionality.
7
+ */
8
+ class SizingCommand {
9
+ constructor(config = {}, ui = null) {
10
+ this.config = config;
11
+ this.ui = ui;
12
+ this.prompt = null;
13
+ this.isNonInteractiveMode = false;
14
+ this.safeClose = null;
15
+ }
16
+
17
+ /**
18
+ * Set runtime dependencies for interactive operations
19
+ */
20
+ setRuntimeDependencies(prompt, isNonInteractiveMode, safeClose) {
21
+ this.prompt = prompt;
22
+ this.isNonInteractiveMode = isNonInteractiveMode;
23
+ this.safeClose = safeClose;
24
+ }
25
+
26
+ /**
27
+ * Execute the sizing command
28
+ */
29
+ async execute(options = {}) {
30
+ try {
31
+ const I18nSizingAnalyzer = require('../../i18ntk-sizing');
32
+ const sizingAnalyzer = new I18nSizingAnalyzer();
33
+ await sizingAnalyzer.run(options);
34
+ return { success: true, command: 'sizing' };
35
+ } catch (error) {
36
+ console.error(`Sizing command failed: ${error.message}`);
37
+ throw error;
38
+ }
39
+ }
40
+
41
+ /**
42
+ * Get command metadata
43
+ */
44
+ getMetadata() {
45
+ return {
46
+ name: 'sizing',
47
+ description: 'Analyze translation file sizes and content metrics',
48
+ category: 'analysis',
49
+ aliases: [],
50
+ usage: 'sizing [options]',
51
+ examples: [
52
+ 'sizing',
53
+ 'sizing --source-dir=./src/locales',
54
+ 'sizing --output-dir=./reports'
55
+ ]
56
+ };
57
+ }
58
+ }
59
+
60
+ module.exports = SizingCommand;
@@ -0,0 +1,61 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * I18NTK SUMMARY COMMAND
5
+ *
6
+ * Handles summary and status reporting functionality.
7
+ */
8
+
9
+ class SummaryCommand {
10
+ constructor(config = {}, ui = null) {
11
+ this.config = config;
12
+ this.ui = ui;
13
+ this.prompt = null;
14
+ this.isNonInteractiveMode = false;
15
+ this.safeClose = null;
16
+ }
17
+
18
+ /**
19
+ * Set runtime dependencies for interactive operations
20
+ */
21
+ setRuntimeDependencies(prompt, isNonInteractiveMode, safeClose) {
22
+ this.prompt = prompt;
23
+ this.isNonInteractiveMode = isNonInteractiveMode;
24
+ this.safeClose = safeClose;
25
+ }
26
+
27
+ /**
28
+ * Execute the summary command
29
+ */
30
+ async execute(options = {}) {
31
+ try {
32
+ const summaryTool = require('../../i18ntk-summary');
33
+ const summary = new summaryTool();
34
+ await summary.run(options);
35
+ return { success: true, command: 'summary' };
36
+ } catch (error) {
37
+ console.error(`Summary command failed: ${error.message}`);
38
+ throw error;
39
+ }
40
+ }
41
+
42
+ /**
43
+ * Get command metadata
44
+ */
45
+ getMetadata() {
46
+ return {
47
+ name: 'summary',
48
+ description: 'Generate summary report of translation status',
49
+ category: 'reporting',
50
+ aliases: ['status'],
51
+ usage: 'summary [options]',
52
+ examples: [
53
+ 'summary',
54
+ 'summary --output-dir=./reports',
55
+ 'summary --format=json'
56
+ ]
57
+ };
58
+ }
59
+ }
60
+
61
+ module.exports = SummaryCommand;
@@ -0,0 +1,60 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * I18NTK USAGE COMMAND
5
+ *
6
+ * Handles usage analysis functionality.
7
+ */
8
+ class UsageCommand {
9
+ constructor(config = {}, ui = null) {
10
+ this.config = config;
11
+ this.ui = ui;
12
+ this.prompt = null;
13
+ this.isNonInteractiveMode = false;
14
+ this.safeClose = null;
15
+ }
16
+
17
+ /**
18
+ * Set runtime dependencies for interactive operations
19
+ */
20
+ setRuntimeDependencies(prompt, isNonInteractiveMode, safeClose) {
21
+ this.prompt = prompt;
22
+ this.isNonInteractiveMode = isNonInteractiveMode;
23
+ this.safeClose = safeClose;
24
+ }
25
+
26
+ /**
27
+ * Execute the usage command
28
+ */
29
+ async execute(options = {}) {
30
+ try {
31
+ const I18nUsageAnalyzer = require('../../i18ntk-usage');
32
+ const usageAnalyzer = new I18nUsageAnalyzer();
33
+ await usageAnalyzer.run(options);
34
+ return { success: true, command: 'usage' };
35
+ } catch (error) {
36
+ console.error(`Usage command failed: ${error.message}`);
37
+ throw error;
38
+ }
39
+ }
40
+
41
+ /**
42
+ * Get command metadata
43
+ */
44
+ getMetadata() {
45
+ return {
46
+ name: 'usage',
47
+ description: 'Check translation usage in code',
48
+ category: 'analysis',
49
+ aliases: [],
50
+ usage: 'usage [options]',
51
+ examples: [
52
+ 'usage',
53
+ 'usage --source-dir=./src',
54
+ 'usage --output-dir=./reports'
55
+ ]
56
+ };
57
+ }
58
+ }
59
+
60
+ module.exports = UsageCommand;