@robotical/martyblocksjr 3.4.3 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/editions/free/src/app.bundle.js +1 -1
  2. package/editions/free/src/app.bundle.js.map +1 -1
  3. package/editions/free/src/inapp/blocks.html +3 -3
  4. package/editions/free/src/localizations/README.md +91 -0
  5. package/editions/free/src/localizations/ca.json +1040 -412
  6. package/editions/free/src/localizations/csv-to-localizations.js +43 -0
  7. package/editions/free/src/localizations/cy.json +1040 -412
  8. package/editions/free/src/localizations/da.json +1040 -412
  9. package/editions/free/src/localizations/de.json +1040 -412
  10. package/editions/free/src/localizations/el.json +1040 -412
  11. package/editions/free/src/localizations/en.json +486 -7
  12. package/editions/free/src/localizations/es.json +1040 -412
  13. package/editions/free/src/localizations/fr.json +1040 -412
  14. package/editions/free/src/localizations/it.json +1040 -412
  15. package/editions/free/src/localizations/ja.json +1040 -412
  16. package/editions/free/src/localizations/ko.json +1040 -412
  17. package/editions/free/src/localizations/localizations-to-csv.js +49 -0
  18. package/editions/free/src/localizations/nl.json +1040 -412
  19. package/editions/free/src/localizations/no.json +1040 -412
  20. package/editions/free/src/localizations/pl.json +1040 -412
  21. package/editions/free/src/localizations/pt-br.json +1040 -412
  22. package/editions/free/src/localizations/pt.json +1040 -412
  23. package/editions/free/src/localizations/sv.json +1040 -412
  24. package/editions/free/src/localizations/th.json +1040 -412
  25. package/editions/free/src/localizations/tr.json +1040 -412
  26. package/editions/free/src/localizations/uk.json +1040 -412
  27. package/editions/free/src/localizations/zh-cn.json +1040 -412
  28. package/editions/free/src/localizations/zh-tw.json +1040 -412
  29. package/editions/free/src/settings.json +20 -1
  30. package/package.json +2 -1
  31. package/editions/free/src/inapp/images/clearcolours copy.png +0 -0
@@ -0,0 +1,49 @@
1
+ const fs = require('fs');
2
+ const path = require('path');
3
+
4
+ // Directory containing the localization files
5
+ const dir = __dirname;
6
+
7
+ // Find all .json files in the directory
8
+ const files = fs.readdirSync(dir).filter(f => f.endsWith('.json'));
9
+ if (!files.includes('en.json')) {
10
+ console.error('en.json not found in the directory.');
11
+ process.exit(1);
12
+ }
13
+
14
+ // Load all language files
15
+ const languages = files.map(f => ({
16
+ code: path.basename(f, '.json'),
17
+ data: JSON.parse(fs.readFileSync(path.join(dir, f), 'utf8'))
18
+ }));
19
+
20
+ // Use en.json as the master key list
21
+ const en = languages.find(l => l.code === 'en');
22
+ const keys = Object.keys(en.data);
23
+
24
+ // Prepare CSV header
25
+ const header = ['key', ...languages.map(l => l.code)];
26
+ const rows = [header];
27
+
28
+ // Prepare each row
29
+ for (const key of keys) {
30
+ const row = [key];
31
+ for (const lang of languages) {
32
+ row.push(lang.data[key] !== undefined ? lang.data[key] : '');
33
+ }
34
+ rows.push(row);
35
+ }
36
+
37
+ // Escape CSV values
38
+ function escapeCsv(val) {
39
+ if (typeof val !== 'string') val = String(val);
40
+ if (val.includes('"') || val.includes(',') || val.includes('\n')) {
41
+ return '"' + val.replace(/"/g, '""') + '"';
42
+ }
43
+ return val;
44
+ }
45
+
46
+ // Write CSV
47
+ const csv = rows.map(row => row.map(escapeCsv).join(',')).join('\n');
48
+ fs.writeFileSync(path.join(dir, 'localizations.csv'), csv, 'utf8');
49
+ console.log('localizations.csv generated successfully.');