@wp-blocks/make-pot 0.2.2 → 1.0.1

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 (91) hide show
  1. package/.github/workflows/node.js.yml +33 -0
  2. package/.github/workflows/tsDoc.yml +52 -0
  3. package/README.md +53 -34
  4. package/lib/assets/package-i18n.json +13 -0
  5. package/lib/assets/wp-plugin-i18n.json +14 -0
  6. package/lib/assets/wp-theme-i18n.json +13 -0
  7. package/lib/cli/index.d.ts +1 -0
  8. package/lib/cli/index.js +114 -0
  9. package/lib/cli/index.js.map +1 -0
  10. package/lib/cli/parseCli.d.ts +3 -0
  11. package/lib/cli/parseCli.js +111 -0
  12. package/lib/cli/parseCli.js.map +1 -0
  13. package/lib/cliArgs.js +36 -4
  14. package/lib/cliArgs.js.map +1 -1
  15. package/lib/const.d.ts +114 -0
  16. package/lib/const.js +40 -3
  17. package/lib/const.js.map +1 -1
  18. package/lib/extractors/css.js +13 -2
  19. package/lib/extractors/css.js.map +1 -1
  20. package/lib/extractors/headers.d.ts +3 -5
  21. package/lib/extractors/headers.js +19 -13
  22. package/lib/extractors/headers.js.map +1 -1
  23. package/lib/extractors/index.d.ts +1 -2
  24. package/lib/extractors/index.js +9 -44
  25. package/lib/extractors/index.js.map +1 -1
  26. package/lib/extractors/json.d.ts +5 -3
  27. package/lib/extractors/json.js +48 -4
  28. package/lib/extractors/json.js.map +1 -1
  29. package/lib/extractors/php.js +8 -15
  30. package/lib/extractors/php.js.map +1 -1
  31. package/lib/extractors/schema.js +5 -1
  32. package/lib/extractors/schema.js.map +1 -1
  33. package/lib/extractors/text.js +2 -6
  34. package/lib/extractors/text.js.map +1 -1
  35. package/lib/extractors/utils.d.ts +3 -3
  36. package/lib/extractors/utils.js +34 -25
  37. package/lib/extractors/utils.js.map +1 -1
  38. package/lib/fs/glob.d.ts +13 -0
  39. package/lib/fs/glob.js +95 -0
  40. package/lib/fs/glob.js.map +1 -0
  41. package/lib/fs/index.d.ts +2 -0
  42. package/lib/fs/index.js +69 -0
  43. package/lib/fs/index.js.map +1 -0
  44. package/lib/fs.d.ts +2 -1
  45. package/lib/fs.js +15 -8
  46. package/lib/fs.js.map +1 -1
  47. package/lib/index.js +5 -5
  48. package/lib/index.js.map +1 -1
  49. package/lib/makePot.d.ts +1 -1
  50. package/lib/makePot.js +20 -13
  51. package/lib/makePot.js.map +1 -1
  52. package/lib/maps.d.ts +1 -3
  53. package/lib/maps.js +12 -3
  54. package/lib/maps.js.map +1 -1
  55. package/lib/parser/consolidate.d.ts +2 -0
  56. package/lib/parser/consolidate.js +37 -0
  57. package/lib/parser/consolidate.js.map +1 -0
  58. package/lib/parser/exec.d.ts +3 -0
  59. package/lib/parser/exec.js +71 -0
  60. package/lib/parser/exec.js.map +1 -0
  61. package/lib/parser/index.d.ts +2 -0
  62. package/lib/parser/index.js +24 -0
  63. package/lib/parser/index.js.map +1 -0
  64. package/lib/parser/makePot.d.ts +2 -0
  65. package/lib/parser/makePot.js +33 -0
  66. package/lib/parser/makePot.js.map +1 -0
  67. package/lib/parser/patterns.d.ts +2 -0
  68. package/lib/parser/patterns.js +34 -0
  69. package/lib/parser/patterns.js.map +1 -0
  70. package/lib/parser/process.d.ts +5 -0
  71. package/lib/parser/process.js +70 -0
  72. package/lib/parser/process.js.map +1 -0
  73. package/lib/parser/tree.d.ts +2 -0
  74. package/lib/parser/tree.js +87 -0
  75. package/lib/parser/tree.js.map +1 -0
  76. package/lib/parser.d.ts +2 -2
  77. package/lib/parser.js +58 -57
  78. package/lib/parser.js.map +1 -1
  79. package/lib/types.d.ts +4 -3
  80. package/lib/utils/index.d.ts +8 -0
  81. package/lib/utils/index.js +78 -0
  82. package/lib/utils/index.js.map +1 -0
  83. package/lib/utils.d.ts +1 -1
  84. package/lib/utils.js +1 -1
  85. package/lib/utils.js.map +1 -1
  86. package/package.json +1 -1
  87. package/tests/consolidate.test.ts +1 -1
  88. package/tests/extract-2.test.ts +1 -1
  89. package/tests/{extract.old.ts → extract.test.ts} +20 -18
  90. package/tests/getFiles.old.ts +1 -1
  91. package/tests/getStrings.old.ts +1 -1
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.makePot = void 0;
16
+ const headers_1 = require("../extractors/headers");
17
+ const fs_1 = require("../fs");
18
+ const path_1 = __importDefault(require("path"));
19
+ const json_1 = require("../extractors/json");
20
+ const exec_1 = require("./exec");
21
+ function makePot(args) {
22
+ var _a;
23
+ return __awaiter(this, void 0, void 0, function* () {
24
+ const pkgData = (0, json_1.extractPackageJson)(args);
25
+ const metadata = (0, headers_1.extractMainFileData)(args);
26
+ args.headers = Object.assign(Object.assign(Object.assign({}, args.headers), pkgData), metadata);
27
+ const jsonTranslations = yield (0, exec_1.exec)(args);
28
+ (0, fs_1.writeFile)(jsonTranslations, path_1.default.join(process.cwd(), args.paths.out, `${args === null || args === void 0 ? void 0 : args.slug}.${((_a = args.options) === null || _a === void 0 ? void 0 : _a.json) ? 'json' : 'pot'}`));
29
+ return jsonTranslations;
30
+ });
31
+ }
32
+ exports.makePot = makePot;
33
+ //# sourceMappingURL=makePot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"makePot.js","sourceRoot":"","sources":["../../src/parser/makePot.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,mDAA2D;AAC3D,8BAAiC;AACjC,gDAAuB;AACvB,6CAAuD;AACvD,iCAA6B;AAQ7B,SAAsB,OAAO,CAAC,IAAU;;;QAEvC,MAAM,OAAO,GAAG,IAAA,yBAAkB,EAAC,IAAI,CAAC,CAAA;QAGxC,MAAM,QAAQ,GAAG,IAAA,6BAAmB,EAAC,IAAI,CAAC,CAAA;QAG1C,IAAI,CAAC,OAAO,GAAG,8CACX,IAAI,CAAC,OAAO,GACZ,OAAO,GACP,QAAQ,CACQ,CAAA;QAGpB,MAAM,gBAAgB,GAAG,MAAM,IAAA,WAAI,EAAC,IAAI,CAAC,CAAA;QAEzC,IAAA,cAAS,EACR,gBAAgB,EAChB,cAAI,CAAC,IAAI,CACR,OAAO,CAAC,GAAG,EAAE,EACb,IAAI,CAAC,KAAK,CAAC,GAAG,EACd,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,EAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,CACtD,CACD,CAAA;QAED,OAAO,gBAAgB,CAAA;;CACvB;AA3BD,0BA2BC"}
@@ -0,0 +1,2 @@
1
+ import type { Args, Patterns } from '../types';
2
+ export declare function getPatterns(args: Args): Patterns;
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPatterns = void 0;
4
+ function getPatterns(args) {
5
+ var _a, _b, _c, _d, _e, _f;
6
+ const pattern = {
7
+ include: args.patterns.include || [],
8
+ exclude: args.patterns.exclude || [],
9
+ mergePaths: args.patterns.mergePaths,
10
+ subtractPaths: args.patterns.subtractPaths,
11
+ subtractAndMerge: args.patterns.subtractAndMerge,
12
+ };
13
+ if (((_a = args.options) === null || _a === void 0 ? void 0 : _a.skip.php) !== undefined ||
14
+ ((_b = args.options) === null || _b === void 0 ? void 0 : _b.skip.blade) !== undefined) {
15
+ if (((_c = args.options) === null || _c === void 0 ? void 0 : _c.skip.blade) !== undefined) {
16
+ pattern.include.push('**/*.php');
17
+ }
18
+ else {
19
+ pattern.include.push('**/*.php', '!**/blade.php');
20
+ }
21
+ }
22
+ if (((_d = args.options) === null || _d === void 0 ? void 0 : _d.skip.js) !== undefined) {
23
+ pattern.include.push('**/*.{js,jsx,ts,tsx,mjs,cjs}');
24
+ }
25
+ if (((_e = args.options) === null || _e === void 0 ? void 0 : _e.skip.blockJson) !== undefined) {
26
+ pattern.include.push('block.json');
27
+ }
28
+ if (((_f = args.options) === null || _f === void 0 ? void 0 : _f.skip.themeJson) !== undefined) {
29
+ pattern.include.push('theme.json');
30
+ }
31
+ return pattern;
32
+ }
33
+ exports.getPatterns = getPatterns;
34
+ //# sourceMappingURL=patterns.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patterns.js","sourceRoot":"","sources":["../../src/parser/patterns.ts"],"names":[],"mappings":";;;AAOA,SAAgB,WAAW,CAAC,IAAU;;IACrC,MAAM,OAAO,GAAG;QACf,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE;QACpC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE;QACpC,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU;QACpC,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa;QAC1C,gBAAgB,EAAE,IAAI,CAAC,QAAQ,CAAC,gBAAgB;KACpC,CAAA;IAIb,IACC,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,GAAG,MAAK,SAAS;QACpC,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,KAAK,MAAK,SAAS,EACrC,CAAC;QACF,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,KAAK,MAAK,SAAS,EAAE,CAAC;YAE5C,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QACjC,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,CAAC,CAAA;QAClD,CAAC;IACF,CAAC;IAGD,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,EAAE,MAAK,SAAS,EAAE,CAAC;QACzC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAA;IACrD,CAAC;IAED,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,SAAS,MAAK,SAAS,EAAE,CAAC;QAChD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IACnC,CAAC;IAED,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,SAAS,MAAK,SAAS,EAAE,CAAC;QAChD,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IACnC,CAAC;IAED,OAAO,OAAO,CAAA;AACf,CAAC;AArCD,kCAqCC"}
@@ -0,0 +1,5 @@
1
+ import type { Args, TranslationStrings } from '../types';
2
+ import { Glob } from 'glob';
3
+ export declare function getStrings(args: Args, files: Glob<{
4
+ cwd: string;
5
+ }>): Promise<TranslationStrings[]>;
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.getStrings = void 0;
16
+ const cli_progress_1 = __importDefault(require("cli-progress"));
17
+ const const_1 = require("../const");
18
+ const extractors_1 = require("../extractors");
19
+ function initProgress(args, filesCount) {
20
+ var _a;
21
+ if ((_a = args.options) === null || _a === void 0 ? void 0 : _a.silent)
22
+ return undefined;
23
+ const progressBar = new cli_progress_1.default.SingleBar({
24
+ clearOnComplete: true,
25
+ etaBuffer: 1000,
26
+ hideCursor: true,
27
+ format: ' {bar} {percentage}% | ETA: {eta}s | {filename} | {value}/{total}',
28
+ }, cli_progress_1.default.Presets.shades_classic);
29
+ progressBar.start(filesCount, 0);
30
+ return progressBar;
31
+ }
32
+ function processFiles(files, args, progressBar) {
33
+ const tasks = [];
34
+ for (const file of files) {
35
+ const ext = file.split('.').pop() || undefined;
36
+ if (!ext || !const_1.allowedFiles.includes(ext)) {
37
+ if (progressBar) {
38
+ progressBar.increment(1, {
39
+ filename: `Skipping ${ext} file: ${file}`,
40
+ });
41
+ }
42
+ continue;
43
+ }
44
+ const task = (0, extractors_1.parseFile)(file, args.paths.cwd).finally(() => {
45
+ if (progressBar) {
46
+ progressBar.increment(1, {
47
+ filename: file,
48
+ });
49
+ }
50
+ });
51
+ if (task !== null) {
52
+ tasks.push(task);
53
+ }
54
+ }
55
+ return tasks;
56
+ }
57
+ function getStrings(args, files) {
58
+ var _a;
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ let progressBar = undefined;
61
+ progressBar =
62
+ (_a = initProgress(args, Array.from(files.iterateSync()).length)) !== null && _a !== void 0 ? _a : undefined;
63
+ const strings = yield Promise.all(processFiles(files, args, progressBar));
64
+ if (progressBar)
65
+ progressBar.stop();
66
+ return strings;
67
+ });
68
+ }
69
+ exports.getStrings = getStrings;
70
+ //# sourceMappingURL=process.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process.js","sourceRoot":"","sources":["../../src/parser/process.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,gEAAqD;AAErD,oCAAuC;AACvC,8CAAyC;AASzC,SAAS,YAAY,CAAC,IAAU,EAAE,UAAkB;;IACnD,IAAI,MAAA,IAAI,CAAC,OAAO,0CAAE,MAAM;QAAE,OAAO,SAAS,CAAA;IAE1C,MAAM,WAAW,GAAG,IAAI,sBAAW,CAAC,SAAS,CAC5C;QACC,eAAe,EAAE,IAAI;QACrB,SAAS,EAAE,IAAI;QACf,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,mEAAmE;KAC3E,EACD,sBAAW,CAAC,OAAO,CAAC,cAAc,CAClC,CAAA;IAED,WAAW,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,CAAA;IAGhC,OAAO,WAAW,CAAA;AACnB,CAAC;AAUD,SAAS,YAAY,CACpB,KAA4B,EAC5B,IAAU,EACV,WAAuB;IAEvB,MAAM,KAAK,GAAkC,EAAE,CAAA;IAG/C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAE1B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,SAAS,CAAA;QAG9C,IAAI,CAAC,GAAG,IAAI,CAAC,oBAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAEzC,IAAI,WAAW,EAAE,CAAC;gBACjB,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE;oBACxB,QAAQ,EAAE,YAAY,GAAG,UAAU,IAAI,EAAE;iBACzC,CAAC,CAAA;YACH,CAAC;YACD,SAAQ;QACT,CAAC;QAED,MAAM,IAAI,GAAG,IAAA,sBAAS,EAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;YACzD,IAAI,WAAW,EAAE,CAAC;gBACjB,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE;oBACxB,QAAQ,EAAE,IAAI;iBACd,CAAC,CAAA;YACH,CAAC;QACF,CAAC,CAAC,CAAA;QAGF,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACnB,KAAK,CAAC,IAAI,CAAC,IAAmC,CAAC,CAAA;QAChD,CAAC;IACF,CAAC;IAED,OAAO,KAAK,CAAA;AACb,CAAC;AASD,SAAsB,UAAU,CAAC,IAAU,EAAE,KAA4B;;;QAIxE,IAAI,WAAW,GAA0B,SAAS,CAAA;QAClD,WAAW;YACV,MAAA,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,mCAAI,SAAS,CAAA;QAExE,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAA;QAEzE,IAAI,WAAW;YAAE,WAAW,CAAC,IAAI,EAAE,CAAA;QAEnC,OAAO,OAAO,CAAA;;CACd;AAbD,gCAaC"}
@@ -0,0 +1,2 @@
1
+ import { type TranslationStrings } from '../types';
2
+ export declare function doTree(sourceCode: string, filepath: string): TranslationStrings;
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.doTree = void 0;
7
+ const tree_sitter_1 = __importDefault(require("tree-sitter"));
8
+ const const_1 = require("../const");
9
+ const glob_1 = require("../fs/glob");
10
+ const utils_1 = require("../utils");
11
+ function collectComments(node) {
12
+ var _a, _b;
13
+ let currentNode = node;
14
+ let depth = 0;
15
+ while (currentNode && depth < 6) {
16
+ if (((_a = currentNode === null || currentNode === void 0 ? void 0 : currentNode.previousSibling) === null || _a === void 0 ? void 0 : _a.type) === 'comment' &&
17
+ ((_b = currentNode === null || currentNode === void 0 ? void 0 : currentNode.previousSibling) === null || _b === void 0 ? void 0 : _b.text.toLowerCase().includes('translators'))) {
18
+ return (0, utils_1.stripTranslationMarkup)(currentNode === null || currentNode === void 0 ? void 0 : currentNode.previousSibling.text);
19
+ }
20
+ depth++;
21
+ currentNode = currentNode.parent;
22
+ }
23
+ }
24
+ function doTree(sourceCode, filepath) {
25
+ var _a;
26
+ const parser = new tree_sitter_1.default();
27
+ parser.setLanguage((0, glob_1.getParser)(filepath));
28
+ const tree = parser.parse(sourceCode);
29
+ const gettextTranslations = {};
30
+ const typeToMatch = ((_a = filepath.split('.').pop()) === null || _a === void 0 ? void 0 : _a.toLowerCase()) !== 'php'
31
+ ? 'call_expression'
32
+ : 'function_call_expression';
33
+ function traverse(node) {
34
+ var _a, _b, _c, _d, _e, _f, _g, _h;
35
+ if (node === null || node === void 0 ? void 0 : node.children.length)
36
+ for (const child of node.children) {
37
+ traverse(child);
38
+ }
39
+ if ((node === null || node === void 0 ? void 0 : node.type) === typeToMatch) {
40
+ const functionName = (_b = (_a = node.firstChild) === null || _a === void 0 ? void 0 : _a.text) !== null && _b !== void 0 ? _b : null;
41
+ if (functionName === null ||
42
+ !Object.keys(const_1.i18nFunctions).includes(functionName)) {
43
+ return;
44
+ }
45
+ const argsNode = node.lastChild;
46
+ if (argsNode === null ||
47
+ argsNode.childCount === 0 ||
48
+ argsNode.type !== 'arguments') {
49
+ return;
50
+ }
51
+ const [_fn, raw] = node.children;
52
+ const translation = {};
53
+ const translationKeys = const_1.i18nFunctions[functionName];
54
+ const children = raw.children.slice(1, -1);
55
+ let translationKeyIndex = 0;
56
+ for (const child of children) {
57
+ let node = child;
58
+ if (child.type === "argument") {
59
+ if (child.children.length === 0)
60
+ continue;
61
+ node = child.children[0];
62
+ }
63
+ if (node.type !== "string")
64
+ continue;
65
+ const currentKey = translationKeys[translationKeyIndex];
66
+ translation[currentKey] =
67
+ child.text.slice(1, -1);
68
+ translationKeyIndex += 1;
69
+ }
70
+ const gettext = {
71
+ msgctxt: (_c = translation.msgctxt) !== null && _c !== void 0 ? _c : '',
72
+ msgid: (_d = translation.msgid) !== null && _d !== void 0 ? _d : '',
73
+ msgid_plural: (_e = translation.msgid_plural) !== null && _e !== void 0 ? _e : '',
74
+ msgstr: translation.msgid_plural ? ['', ''] : [''],
75
+ comments: {
76
+ translator: (_f = collectComments(node)) !== null && _f !== void 0 ? _f : '',
77
+ reference: `${filepath}:${node.startPosition.row + 1}`,
78
+ },
79
+ };
80
+ gettextTranslations[(_g = gettext.msgctxt) !== null && _g !== void 0 ? _g : ''] = Object.assign(Object.assign({}, (gettextTranslations[(_h = gettext.msgctxt) !== null && _h !== void 0 ? _h : ''] || {})), { [gettext.msgid]: gettext });
81
+ }
82
+ }
83
+ traverse(tree.rootNode);
84
+ return gettextTranslations;
85
+ }
86
+ exports.doTree = doTree;
87
+ //# sourceMappingURL=tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../src/parser/tree.ts"],"names":[],"mappings":"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"}
package/lib/parser.d.ts CHANGED
@@ -2,5 +2,5 @@ import type { Args, TranslationStrings } from './types';
2
2
  import { Glob } from 'glob';
3
3
  export declare function getStrings(args: Args, files: Glob<{
4
4
  cwd: string;
5
- }>): Promise<TranslationStrings>;
6
- export declare function runExtract(args: Args): Promise<TranslationStrings>;
5
+ }>): Promise<TranslationStrings[]>;
6
+ export declare function runExtract(args: Args): Promise<TranslationStrings[]>;
package/lib/parser.js CHANGED
@@ -17,11 +17,10 @@ const cli_progress_1 = __importDefault(require("cli-progress"));
17
17
  const extractors_1 = require("./extractors");
18
18
  const const_1 = require("./const");
19
19
  const glob_1 = require("./glob");
20
- const consolidate_1 = require("./consolidate");
21
20
  function initProgress(args, filesCount) {
22
21
  var _a;
23
22
  if ((_a = args.options) === null || _a === void 0 ? void 0 : _a.silent)
24
- return null;
23
+ return undefined;
25
24
  const progressBar = new cli_progress_1.default.SingleBar({
26
25
  clearOnComplete: true,
27
26
  etaBuffer: 1000,
@@ -31,77 +30,79 @@ function initProgress(args, filesCount) {
31
30
  progressBar.start(filesCount, 0);
32
31
  return progressBar;
33
32
  }
34
- function getStrings(args, files) {
35
- var _a;
36
- return __awaiter(this, void 0, void 0, function* () {
37
- const tasks = [];
38
- let progressBar = null;
39
- progressBar = initProgress(args, Array.from(files.iterateSync()).length);
40
- for (const file of files) {
41
- const ext = file.split('.').pop() || undefined;
42
- if (!ext || !const_1.allowedFiles.includes(ext)) {
43
- if (progressBar) {
44
- progressBar.increment(1, {
45
- filename: `Skipping ${ext} file: ${file}`,
46
- });
47
- }
48
- continue;
33
+ function processFiles(files, args, progressBar) {
34
+ const tasks = [];
35
+ for (const file of files) {
36
+ const ext = file.split('.').pop() || undefined;
37
+ if (!ext || !const_1.allowedFiles.includes(ext)) {
38
+ if (progressBar) {
39
+ progressBar.increment(1, {
40
+ filename: `Skipping ${ext} file: ${file}`,
41
+ });
49
42
  }
50
- const task = (0, extractors_1.parseFile)(file, args.paths.cwd);
43
+ continue;
44
+ }
45
+ const task = (0, extractors_1.parseFile)(file, args.paths.cwd).finally(() => {
51
46
  if (progressBar) {
52
47
  progressBar.increment(1, {
53
48
  filename: file,
54
49
  });
55
50
  }
56
- if (task !== null) {
57
- tasks.push(task);
58
- }
51
+ });
52
+ if (task !== null) {
53
+ tasks.push(task);
59
54
  }
60
- const results = yield Promise.all(tasks).finally(() => {
61
- if (progressBar)
55
+ }
56
+ return tasks;
57
+ }
58
+ function getStrings(args, files) {
59
+ var _a;
60
+ return __awaiter(this, void 0, void 0, function* () {
61
+ let progressBar = undefined;
62
+ progressBar =
63
+ (_a = initProgress(args, Array.from(files.iterateSync()).length)) !== null && _a !== void 0 ? _a : undefined;
64
+ return yield Promise.all(processFiles(files, args, progressBar)).finally(() => {
65
+ if (progressBar) {
62
66
  progressBar.stop();
67
+ }
63
68
  });
64
- const mergedResult = (0, consolidate_1.consolidate)(results.filter((r) => r !== null));
65
- if (!((_a = args.options) === null || _a === void 0 ? void 0 : _a.silent)) {
66
- console.log('📝 Found', Object.values(mergedResult).length, 'group of strings in', results.length, 'files.\n', 'In total ' +
67
- Object.values(mergedResult)
68
- .map((v) => Object.keys(v).length)
69
- .reduce((acc, val) => acc + val, 0) +
70
- ' strings were found');
71
- }
72
- return mergedResult;
73
69
  });
74
70
  }
75
71
  exports.getStrings = getStrings;
76
- function runExtract(args) {
72
+ function getPatterns(args) {
77
73
  var _a, _b, _c, _d, _e, _f;
78
- return __awaiter(this, void 0, void 0, function* () {
79
- const pattern = {
80
- include: args.patterns.include || [],
81
- exclude: args.patterns.exclude || [],
82
- mergePaths: args.patterns.mergePaths,
83
- subtractPaths: args.patterns.subtractPaths,
84
- subtractAndMerge: args.patterns.subtractAndMerge,
85
- };
86
- if (((_a = args.options) === null || _a === void 0 ? void 0 : _a.skip.php) !== undefined ||
87
- ((_b = args.options) === null || _b === void 0 ? void 0 : _b.skip.blade) !== undefined) {
88
- if (((_c = args.options) === null || _c === void 0 ? void 0 : _c.skip.blade) !== undefined) {
89
- pattern.include.push('**/*.php');
90
- }
91
- else {
92
- pattern.include.push('**/*.php', '!**/blade.php');
93
- }
94
- }
95
- if (((_d = args.options) === null || _d === void 0 ? void 0 : _d.skip.js) !== undefined) {
96
- pattern.include.push('**/*.{js,jsx,ts,tsx,mjs,cjs}');
97
- }
98
- if (((_e = args.options) === null || _e === void 0 ? void 0 : _e.skip.blockJson) !== undefined) {
99
- pattern.include.push('block.json');
74
+ const pattern = {
75
+ include: args.patterns.include || [],
76
+ exclude: args.patterns.exclude || [],
77
+ mergePaths: args.patterns.mergePaths,
78
+ subtractPaths: args.patterns.subtractPaths,
79
+ subtractAndMerge: args.patterns.subtractAndMerge,
80
+ };
81
+ if (((_a = args.options) === null || _a === void 0 ? void 0 : _a.skip.php) !== undefined ||
82
+ ((_b = args.options) === null || _b === void 0 ? void 0 : _b.skip.blade) !== undefined) {
83
+ if (((_c = args.options) === null || _c === void 0 ? void 0 : _c.skip.blade) !== undefined) {
84
+ pattern.include.push('**/*.php');
100
85
  }
101
- if (((_f = args.options) === null || _f === void 0 ? void 0 : _f.skip.themeJson) !== undefined) {
102
- pattern.include.push('theme.json');
86
+ else {
87
+ pattern.include.push('**/*.php', '!**/blade.php');
103
88
  }
89
+ }
90
+ if (((_d = args.options) === null || _d === void 0 ? void 0 : _d.skip.js) !== undefined) {
91
+ pattern.include.push('**/*.{js,jsx,ts,tsx,mjs,cjs}');
92
+ }
93
+ if (((_e = args.options) === null || _e === void 0 ? void 0 : _e.skip.blockJson) !== undefined) {
94
+ pattern.include.push('block.json');
95
+ }
96
+ if (((_f = args.options) === null || _f === void 0 ? void 0 : _f.skip.themeJson) !== undefined) {
97
+ pattern.include.push('theme.json');
98
+ }
99
+ return pattern;
100
+ }
101
+ function runExtract(args) {
102
+ return __awaiter(this, void 0, void 0, function* () {
103
+ const pattern = getPatterns(args);
104
104
  const files = yield (0, glob_1.getFiles)(args, pattern);
105
+ console.log('Found ', Object.values(files).length, 'files that match the pattern');
105
106
  return yield getStrings(args, files);
106
107
  });
107
108
  }
package/lib/parser.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
package/lib/types.d.ts CHANGED
@@ -1,9 +1,9 @@
1
- import { pkgJsonHeaders, pluginHeaders, themeHeaders } from './maps';
1
+ import { pkgJsonHeaders, pluginHeaders, themeHeaders } from './const';
2
2
  import { GetTextTranslation } from 'gettext-parser';
3
3
  export type ThemeHeadersType = keyof typeof themeHeaders;
4
4
  export type PluginHeadersType = keyof typeof pluginHeaders;
5
- export type PkgHeadersType = keyof pkgJsonHeaders;
6
- export type PotHeaders = pkgJsonHeaders[PkgHeadersType] | (typeof pluginHeaders)[PluginHeadersType] | (typeof themeHeaders)[ThemeHeadersType] | 'fileComment' | 'packageName' | 'packageVersion';
5
+ export type PkgHeadersType = keyof typeof pkgJsonHeaders;
6
+ export type PotHeaders = (typeof pkgJsonHeaders)[PkgHeadersType] | (typeof pluginHeaders)[PluginHeadersType] | (typeof themeHeaders)[ThemeHeadersType] | 'license';
7
7
  export type DomainType = 'plugin' | 'theme' | 'block' | 'theme-block' | 'generic';
8
8
  export interface Patterns {
9
9
  mergePaths?: string[];
@@ -27,6 +27,7 @@ export interface Args {
27
27
  location?: boolean;
28
28
  packageName?: string;
29
29
  output?: boolean;
30
+ fileComment?: string;
30
31
  skip: {
31
32
  js?: boolean;
32
33
  php?: boolean;
@@ -0,0 +1,8 @@
1
+ import { TranslationStrings } from '../types';
2
+ export declare function getCommentBlock(input: string): string;
3
+ export declare function removeCommentMarkup(input: string): string[] | null;
4
+ export declare function stripTranslationMarkup(comment: string): string;
5
+ export declare function stringstring(string: string | string[] | undefined): string[] | null;
6
+ export declare function advancedObjectMerge(obj1: TranslationStrings, obj2: TranslationStrings): TranslationStrings;
7
+ export declare function detectPatternType(pattern: string): 'file' | 'directory' | 'glob';
8
+ export declare function includeFunction(includePath: string[]): string[];
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.includeFunction = exports.detectPatternType = exports.advancedObjectMerge = exports.stringstring = exports.stripTranslationMarkup = exports.removeCommentMarkup = exports.getCommentBlock = void 0;
7
+ const path_1 = __importDefault(require("path"));
8
+ function getCommentBlock(input) {
9
+ const commentBlock = input.match(/\/\*\*?[\s\S]*?\*\//);
10
+ return commentBlock !== null ? commentBlock[0] : input;
11
+ }
12
+ exports.getCommentBlock = getCommentBlock;
13
+ function removeCommentMarkup(input) {
14
+ return input.match(/[a-zA-Z].*/gm);
15
+ }
16
+ exports.removeCommentMarkup = removeCommentMarkup;
17
+ function stripTranslationMarkup(comment) {
18
+ const commentPattern = /\/\*\*?\s*(?:translators:)\s*([\s\S]*?)\s*\*\/|\/\/\s*(?:translators:)\s*(.*)$/i;
19
+ const matches = comment.match(commentPattern);
20
+ return matches ? matches[1] : comment;
21
+ }
22
+ exports.stripTranslationMarkup = stripTranslationMarkup;
23
+ function stringstring(string) {
24
+ if (typeof string === 'string') {
25
+ if (string.includes(',')) {
26
+ return string.split(',');
27
+ }
28
+ return [string];
29
+ }
30
+ return null;
31
+ }
32
+ exports.stringstring = stringstring;
33
+ function advancedObjectMerge(obj1, obj2) {
34
+ const merged = Object.assign({}, obj1);
35
+ for (const key in obj2) {
36
+ if (Object.prototype.hasOwnProperty.call(obj2, key)) {
37
+ merged[key] =
38
+ obj1[key] && obj1[key].toString() === '[object Object]'
39
+ ?
40
+ advancedObjectMerge(obj1[key], obj2[key])
41
+ : obj2[key];
42
+ }
43
+ }
44
+ return merged;
45
+ }
46
+ exports.advancedObjectMerge = advancedObjectMerge;
47
+ function detectPatternType(pattern) {
48
+ const containsFileExtension = pattern.includes('.');
49
+ const containsDirectorySeparator = pattern.includes(path_1.default.sep);
50
+ if (pattern.includes('*')) {
51
+ return 'glob';
52
+ }
53
+ else if (!containsFileExtension && !containsDirectorySeparator) {
54
+ return 'directory';
55
+ }
56
+ else if (containsFileExtension && !containsDirectorySeparator) {
57
+ return 'file';
58
+ }
59
+ else {
60
+ return 'glob';
61
+ }
62
+ }
63
+ exports.detectPatternType = detectPatternType;
64
+ function includeFunction(includePath) {
65
+ return includePath.map((path) => {
66
+ const type = detectPatternType(path);
67
+ switch (type) {
68
+ case 'directory':
69
+ return path + '/**';
70
+ case 'file':
71
+ return '**/' + path;
72
+ default:
73
+ return path;
74
+ }
75
+ });
76
+ }
77
+ exports.includeFunction = includeFunction;
78
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/utils/index.ts"],"names":[],"mappings":"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"}
package/lib/utils.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import { TranslationStrings } from './types';
2
2
  export declare function getCommentBlock(input: string): string;
3
- export declare function removeCommentMarkup(input: string): string;
3
+ export declare function removeCommentMarkup(input: string): string[] | null;
4
4
  export declare function stripTranslationMarkup(comment: string): string;
5
5
  export declare function stringstring(string: string | string[] | undefined): string[] | null;
6
6
  export declare function advancedObjectMerge(obj1: TranslationStrings, obj2: TranslationStrings): TranslationStrings;
package/lib/utils.js CHANGED
@@ -11,7 +11,7 @@ function getCommentBlock(input) {
11
11
  }
12
12
  exports.getCommentBlock = getCommentBlock;
13
13
  function removeCommentMarkup(input) {
14
- return input.replace(/\/\*[\s\S]*?\*\/|\/\/.*/gm, '');
14
+ return input.match(/[a-zA-Z].*/gm);
15
15
  }
16
16
  exports.removeCommentMarkup = removeCommentMarkup;
17
17
  function stripTranslationMarkup(comment) {
package/lib/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wp-blocks/make-pot",
3
- "version": "0.2.2",
3
+ "version": "1.0.1",
4
4
  "description": "A Node.js script for generating a POT file from source code",
5
5
  "author": "Erik Golinelli <https://github.com/erikyo>",
6
6
  "main": "lib/index.js",
@@ -1,5 +1,5 @@
1
1
  import { describe, expect } from '@jest/globals'
2
- import { consolidate } from '../src/consolidate'
2
+ import { consolidate } from '../src/parser/consolidate'
3
3
  import { GetTextComment } from 'gettext-parser'
4
4
 
5
5
  describe('consolidate', () => {
@@ -1,5 +1,5 @@
1
1
  import { describe, expect } from '@jest/globals'
2
- import { doTree } from '../src/tree'
2
+ import { doTree } from '../src/parser/tree'
3
3
 
4
4
  describe('getStrings-extra', () => {
5
5
  /** see wp cli tests */