@wp-blocks/make-pot 1.6.4 → 1.6.6
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.
- package/README.md +2 -2
- package/lib/assets/block-i18n.js +41 -1
- package/lib/assets/package-i18n.js +38 -1
- package/lib/assets/theme-i18n.js +110 -1
- package/lib/assets/wp-plugin-i18n.js +39 -1
- package/lib/assets/wp-theme-i18n.js +37 -1
- package/lib/cli/getArgs.js +156 -1
- package/lib/cli/getArgs.js.map +2 -2
- package/lib/cli/getJsonArgs.js +82 -1
- package/lib/cli/parseCli.js +179 -1
- package/lib/cli.js +43 -1
- package/lib/const.js +111 -1
- package/lib/const.js.map +1 -1
- package/lib/extractors/auditStrings.js +177 -6
- package/lib/extractors/auditStrings.js.map +2 -2
- package/lib/extractors/css.js +69 -1
- package/lib/extractors/headers.js +253 -15
- package/lib/extractors/headers.js.map +2 -2
- package/lib/extractors/json.js +70 -1
- package/lib/extractors/packageJson.js +55 -1
- package/lib/extractors/php.js +79 -2
- package/lib/extractors/php.js.map +2 -2
- package/lib/extractors/schema.js +217 -3
- package/lib/extractors/text.js +41 -1
- package/lib/fs/fs.js +114 -2
- package/lib/fs/glob.js +103 -1
- package/lib/fs/glob.js.map +2 -2
- package/lib/index.js +64 -1
- package/lib/jsonCommand.js +51 -1
- package/lib/makeJson.js +28 -1
- package/lib/makePot.js +27 -1
- package/lib/parser/exec.js +94 -3
- package/lib/parser/exec.js.map +2 -2
- package/lib/parser/makeJson.js +393 -1
- package/lib/parser/makePot.js +48 -1
- package/lib/parser/patterns.js +54 -1
- package/lib/parser/process.js +85 -1
- package/lib/parser/process.js.map +2 -2
- package/lib/parser/progress.js +57 -1
- package/lib/parser/progress.js.map +2 -2
- package/lib/parser/taskRunner.js +65 -2
- package/lib/parser/taskRunner.js.map +2 -2
- package/lib/parser/tree.js +228 -2
- package/lib/parser/tree.js.map +2 -2
- package/lib/potCommand.js +36 -1
- package/lib/potCommand.js.map +2 -2
- package/lib/types.js +17 -1
- package/lib/types.js.map +1 -1
- package/lib/utils/common.js +161 -8
- package/lib/utils/common.js.map +2 -2
- package/lib/utils/extractors.js +69 -1
- package/lib/utils/output.js +59 -1
- package/lib/utils/output.js.map +3 -3
- package/package.json +3 -3
- package/tests/parse-php.test.js +47 -0
package/lib/index.js
CHANGED
|
@@ -1 +1,64 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var index_exports = {};
|
|
30
|
+
__export(index_exports, {
|
|
31
|
+
MakeJsonCommand: () => import_makeJson.MakeJsonCommand,
|
|
32
|
+
StringAuditor: () => import_auditStrings.default,
|
|
33
|
+
doTree: () => import_tree.doTree,
|
|
34
|
+
extractMainFileData: () => import_headers.extractMainFileData,
|
|
35
|
+
generateHeader: () => import_headers.generateHeader,
|
|
36
|
+
getAuthorFromPackage: () => import_headers.getAuthorFromPackage,
|
|
37
|
+
makeJson: () => import_jsonCommand.default,
|
|
38
|
+
makePot: () => import_potCommand.default,
|
|
39
|
+
makePotCommand: () => import_makePot.makePot,
|
|
40
|
+
parseJsonFile: () => import_json.parseJsonFile
|
|
41
|
+
});
|
|
42
|
+
module.exports = __toCommonJS(index_exports);
|
|
43
|
+
var import_auditStrings = __toESM(require("./extractors/auditStrings.js"));
|
|
44
|
+
var import_jsonCommand = __toESM(require("./jsonCommand.js"));
|
|
45
|
+
var import_potCommand = __toESM(require("./potCommand.js"));
|
|
46
|
+
var import_makeJson = require("./parser/makeJson");
|
|
47
|
+
var import_makePot = require("./parser/makePot.js");
|
|
48
|
+
var import_tree = require("./parser/tree.js");
|
|
49
|
+
var import_json = require("./extractors/json.js");
|
|
50
|
+
var import_headers = require("./extractors/headers.js");
|
|
51
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
52
|
+
0 && (module.exports = {
|
|
53
|
+
MakeJsonCommand,
|
|
54
|
+
StringAuditor,
|
|
55
|
+
doTree,
|
|
56
|
+
extractMainFileData,
|
|
57
|
+
generateHeader,
|
|
58
|
+
getAuthorFromPackage,
|
|
59
|
+
makeJson,
|
|
60
|
+
makePot,
|
|
61
|
+
makePotCommand,
|
|
62
|
+
parseJsonFile
|
|
63
|
+
});
|
|
64
|
+
//# sourceMappingURL=index.js.map
|
package/lib/jsonCommand.js
CHANGED
|
@@ -1 +1,51 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var jsonCommand_exports = {};
|
|
30
|
+
__export(jsonCommand_exports, {
|
|
31
|
+
default: () => makeJsonCommand
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(jsonCommand_exports);
|
|
34
|
+
var import_makeJson = __toESM(require("./parser/makeJson.js"));
|
|
35
|
+
var import_common = require("./utils/common.js");
|
|
36
|
+
function makeJsonCommand(args) {
|
|
37
|
+
const makeJson = new import_makeJson.default(args);
|
|
38
|
+
if (Object.keys(args).length > 0) {
|
|
39
|
+
(0, import_common.printModuleInfo)();
|
|
40
|
+
const timeStart = /* @__PURE__ */ new Date();
|
|
41
|
+
makeJson.exec().then((result) => {
|
|
42
|
+
if (args.debug) {
|
|
43
|
+
console.log(result);
|
|
44
|
+
}
|
|
45
|
+
(0, import_common.printTimeElapsed)("Make-Json", timeStart);
|
|
46
|
+
}).catch((error) => {
|
|
47
|
+
console.error(`\u{1FAE4} make-json - Error: ${error}`);
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=jsonCommand.js.map
|
package/lib/makeJson.js
CHANGED
|
@@ -1,2 +1,29 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
"use strict";
|
|
2
|
+
"use strict";
|
|
3
|
+
var __create = Object.create;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
18
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
19
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
20
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
21
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
22
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
23
|
+
mod
|
|
24
|
+
));
|
|
25
|
+
var import_getJsonArgs = require("./cli/getJsonArgs.js");
|
|
26
|
+
var import_jsonCommand = __toESM(require("./jsonCommand.js"));
|
|
27
|
+
const args = (0, import_getJsonArgs.getJsonArgs)();
|
|
28
|
+
(0, import_jsonCommand.default)(args);
|
|
29
|
+
//# sourceMappingURL=makeJson.js.map
|
package/lib/makePot.js
CHANGED
|
@@ -1,2 +1,28 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
"use strict";
|
|
2
|
+
"use strict";
|
|
3
|
+
var __create = Object.create;
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
18
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
19
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
20
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
21
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
22
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
23
|
+
mod
|
|
24
|
+
));
|
|
25
|
+
var import_getArgs = require("./cli/getArgs.js");
|
|
26
|
+
var import_potCommand = __toESM(require("./potCommand.js"));
|
|
27
|
+
(0, import_potCommand.default)((0, import_getArgs.getArgs)());
|
|
28
|
+
//# sourceMappingURL=makePot.js.map
|
package/lib/parser/exec.js
CHANGED
|
@@ -1,3 +1,94 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
7
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __export = (target, all) => {
|
|
9
|
+
for (var name in all)
|
|
10
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
11
|
+
};
|
|
12
|
+
var __copyProps = (to, from, except, desc) => {
|
|
13
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
14
|
+
for (let key of __getOwnPropNames(from))
|
|
15
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
16
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
28
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
29
|
+
var exec_exports = {};
|
|
30
|
+
__export(exec_exports, {
|
|
31
|
+
exec: () => exec
|
|
32
|
+
});
|
|
33
|
+
module.exports = __toCommonJS(exec_exports);
|
|
34
|
+
var import_node_path = __toESM(require("node:path"));
|
|
35
|
+
var import_gettext_parser = require("gettext-parser");
|
|
36
|
+
var import_auditStrings = require("../extractors/auditStrings.js");
|
|
37
|
+
var import_headers = require("../extractors/headers.js");
|
|
38
|
+
var import_fs = require("../fs/fs.js");
|
|
39
|
+
var import_common = require("../utils/common.js");
|
|
40
|
+
var import_output = require("../utils/output");
|
|
41
|
+
var import_patterns = require("./patterns.js");
|
|
42
|
+
var import_process = require("./process.js");
|
|
43
|
+
var import_progress = require("./progress.js");
|
|
44
|
+
var import_taskRunner = require("./taskRunner.js");
|
|
45
|
+
async function exec(args) {
|
|
46
|
+
if (!args.options?.silent) {
|
|
47
|
+
console.log("\u{1F4DD} Starting makePot for", args?.slug);
|
|
48
|
+
(0, import_common.printStats)();
|
|
49
|
+
}
|
|
50
|
+
const potHeader = await (0, import_headers.generateHeader)(args);
|
|
51
|
+
args.timeStart = /* @__PURE__ */ new Date();
|
|
52
|
+
let translationsUnion = (0, import_headers.translationsHeaders)(args);
|
|
53
|
+
if (!args.options?.silent)
|
|
54
|
+
(0, import_common.outputPathRecap)(import_node_path.default.resolve(args.paths.cwd), args.patterns);
|
|
55
|
+
const progressBar = (0, import_progress.initProgress)(args, 0);
|
|
56
|
+
progressBar.start(3, 1, {
|
|
57
|
+
filename: `Resolving files in ${import_node_path.default.resolve(args.paths.cwd)}`
|
|
58
|
+
});
|
|
59
|
+
const patterns = (0, import_patterns.getPatterns)(args);
|
|
60
|
+
const { tasks, processedCount, skippedCount } = await (0, import_process.processFiles)(patterns, args, progressBar);
|
|
61
|
+
progressBar.start(tasks.length, 0, {
|
|
62
|
+
filename: `Processing ${processedCount} files (${skippedCount} skipped)... `
|
|
63
|
+
});
|
|
64
|
+
translationsUnion = await (0, import_taskRunner.taskRunner)(
|
|
65
|
+
tasks,
|
|
66
|
+
translationsUnion,
|
|
67
|
+
args,
|
|
68
|
+
progressBar
|
|
69
|
+
);
|
|
70
|
+
if (!args.options?.skip.audit) {
|
|
71
|
+
console.log("\nAudit strings...");
|
|
72
|
+
(0, import_auditStrings.audit)(args, translationsUnion);
|
|
73
|
+
}
|
|
74
|
+
if (args.options?.json) {
|
|
75
|
+
return (0, import_output.outputJson)(args, potHeader, translationsUnion);
|
|
76
|
+
}
|
|
77
|
+
const getTextTranslations = {
|
|
78
|
+
charset: (0, import_fs.getEncodingCharset)(args.options?.charset),
|
|
79
|
+
headers: potHeader,
|
|
80
|
+
translations: translationsUnion.toJson()
|
|
81
|
+
};
|
|
82
|
+
const pluginTranslations = import_gettext_parser.po.compile(getTextTranslations).toString((0, import_fs.getCharset)(args.options?.charset));
|
|
83
|
+
const copyrightComment = args.options?.fileComment || (0, import_common.getCopyright)(
|
|
84
|
+
args.headers?.name || args.slug,
|
|
85
|
+
args.headers?.license ?? "GPL v2 or later"
|
|
86
|
+
);
|
|
87
|
+
return `${copyrightComment}
|
|
88
|
+
${pluginTranslations}`;
|
|
89
|
+
}
|
|
90
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
91
|
+
0 && (module.exports = {
|
|
92
|
+
exec
|
|
93
|
+
});
|
|
94
|
+
//# sourceMappingURL=exec.js.map
|
package/lib/parser/exec.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../src/parser/exec.ts"],
|
|
4
|
-
"sourcesContent": ["import path from \"node:path\";\nimport type { SingleBar } from \"cli-progress\";\nimport { type GetTextTranslations, po } from \"gettext-parser\";\nimport { audit } from \"../extractors/auditStrings.js\";\nimport { generateHeader, translationsHeaders } from \"../extractors/headers.js\";\nimport { getCharset, getEncodingCharset } from \"../fs/fs.js\";\nimport type { Args } from \"../types.js\";\nimport { getCopyright, outputPathRecap, printStats } from \"../utils/common.js\";\nimport { outputJson } from \"../utils/output\";\nimport { getPatterns } from \"./patterns.js\";\nimport { processFiles } from \"./process.js\";\nimport { initProgress } from \"./progress.js\";\nimport { taskRunner } from \"./taskRunner.js\";\n\n/**\n * Runs the parser and generates the pot file or the json file based on the command line arguments\n *\n * @param {Args} args - The command line arguments\n * @return {Promise<string>} - A promise that resolves with the generated pot file\n */\nexport async function exec(args: Args): Promise<string> {\n\tif (!args.options?.silent) {\n\t\tconsole.log(\"\uD83D\uDCDD Starting makePot for\", args?.slug);\n\t\tprintStats();\n\t}\n\n\t/** The pot file header contains the data about the plugin or theme */\n\tconst potHeader = await generateHeader(args);\n\n\t/** We need to find the main file data so that the definitions are extracted from the plugin or theme files */\n\tlet translationsUnion = translationsHeaders(args);\n\n\tif (!args.options?.silent)\n\t\toutputPathRecap(path.resolve(args.paths.cwd), args.patterns);\n\n\t/**\n\t * The progress bar that is used to show the progress of the extraction process.\n\t */\n\tconst progressBar: SingleBar = initProgress(args, 0);\n\tprogressBar.start(3, 1, {\n\t\tfilename: `Resolving files in ${path.resolve(args.paths.cwd)}`,\n\t});\n\n\t/**\n\t * Extract the strings from the files\n\t */\n\tconst patterns = getPatterns(args);\n\tconst
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAiB;AAEjB,4BAA6C;AAC7C,0BAAsB;AACtB,qBAAoD;AACpD,gBAA+C;AAE/C,oBAA0D;AAC1D,oBAA2B;AAC3B,sBAA4B;AAC5B,qBAA6B;AAC7B,sBAA6B;AAC7B,wBAA2B;AAQ3B,eAAsB,KAAK,MAA6B;AACvD,MAAI,CAAC,KAAK,SAAS,QAAQ;AAC1B,YAAQ,IAAI,kCAA2B,MAAM,IAAI;AACjD,kCAAW;AAAA,EACZ;AAGA,QAAM,YAAY,UAAM,+BAAe,IAAI;AAG3C,MAAI,wBAAoB,oCAAoB,IAAI;AAEhD,MAAI,CAAC,KAAK,SAAS;AAClB,uCAAgB,iBAAAA,QAAK,QAAQ,KAAK,MAAM,GAAG,GAAG,KAAK,QAAQ;AAK5D,QAAM,kBAAyB,8BAAa,MAAM,CAAC;AACnD,cAAY,MAAM,GAAG,GAAG;AAAA,IACvB,UAAU,sBAAsB,iBAAAA,QAAK,QAAQ,KAAK,MAAM,GAAG,CAAC;AAAA,EAC7D,CAAC;AAKD,QAAM,eAAW,6BAAY,IAAI;AACjC,QAAM,
|
|
4
|
+
"sourcesContent": ["import path from \"node:path\";\r\nimport type { SingleBar } from \"cli-progress\";\r\nimport { type GetTextTranslations, po } from \"gettext-parser\";\r\nimport { audit } from \"../extractors/auditStrings.js\";\r\nimport { generateHeader, translationsHeaders } from \"../extractors/headers.js\";\r\nimport { getCharset, getEncodingCharset } from \"../fs/fs.js\";\r\nimport type { Args } from \"../types.js\";\r\nimport { getCopyright, outputPathRecap, printStats } from \"../utils/common.js\";\r\nimport { outputJson } from \"../utils/output\";\r\nimport { getPatterns } from \"./patterns.js\";\r\nimport { processFiles } from \"./process.js\";\r\nimport { initProgress } from \"./progress.js\";\r\nimport { taskRunner } from \"./taskRunner.js\";\r\n\r\n/**\r\n * Runs the parser and generates the pot file or the json file based on the command line arguments\r\n *\r\n * @param {Args} args - The command line arguments\r\n * @return {Promise<string>} - A promise that resolves with the generated pot file\r\n */\r\nexport async function exec(args: Args): Promise<string> {\r\n\tif (!args.options?.silent) {\r\n\t\tconsole.log(\"\uD83D\uDCDD Starting makePot for\", args?.slug);\r\n\t\tprintStats();\r\n\t}\r\n\r\n\t/** The pot file header contains the data about the plugin or theme */\r\n\tconst potHeader = await generateHeader(args);\r\n\r\n\t/** Capture the start time */\r\n\targs.timeStart = new Date();\r\n\r\n\t/** We need to find the main file data so that the definitions are extracted from the plugin or theme files */\r\n\tlet translationsUnion = translationsHeaders(args);\r\n\r\n\tif (!args.options?.silent)\r\n\t\toutputPathRecap(path.resolve(args.paths.cwd), args.patterns);\r\n\r\n\t/**\r\n\t * The progress bar that is used to show the progress of the extraction process.\r\n\t */\r\n\tconst progressBar: SingleBar = initProgress(args, 0);\r\n\tprogressBar.start(3, 1, {\r\n\t\tfilename: `Resolving files in ${path.resolve(args.paths.cwd)}`,\r\n\t});\r\n\r\n\t/**\r\n\t * Extract the strings from the files\r\n\t */\r\n\tconst patterns = getPatterns(args);\r\n\tconst { tasks, processedCount, skippedCount } = await processFiles(patterns, args, progressBar);\r\n\r\n\tprogressBar.start(tasks.length, 0, {\r\n\t\tfilename: `Processing ${processedCount} files (${skippedCount} skipped)... `,\r\n\t});\r\n\r\n\ttranslationsUnion = await taskRunner(\r\n\t\ttasks,\r\n\t\ttranslationsUnion,\r\n\t\targs,\r\n\t\tprogressBar,\r\n\t);\r\n\r\n\t/**\r\n\t * Audit Strings: Strings are validated and reported to the user if they are not compliant.\r\n\t * --skip-audit flag turns this off\r\n\t **/\r\n\tif (!args.options?.skip.audit) {\r\n\t\tconsole.log(\"\\nAudit strings...\");\r\n\t\taudit(args, translationsUnion);\r\n\t}\r\n\r\n\t/** generate the JSON file based on the --json flag passed */\r\n\tif (args.options?.json) {\r\n\t\treturn outputJson(args, potHeader, translationsUnion);\r\n\t}\r\n\r\n\t/** Generate the pot file JSON */\r\n\tconst getTextTranslations: GetTextTranslations = {\r\n\t\tcharset: getEncodingCharset(args.options?.charset),\r\n\t\theaders: potHeader as { [headerName: string]: string },\r\n\t\ttranslations: translationsUnion.toJson(),\r\n\t};\r\n\r\n\t/** And then compile the pot file to a string */\r\n\tconst pluginTranslations = po\r\n\t\t.compile(getTextTranslations)\r\n\t\t.toString(getCharset(args.options?.charset));\r\n\r\n\t/** Return the pot file as a string, prefixed with the header */\r\n\tconst copyrightComment =\r\n\t\targs.options?.fileComment ||\r\n\t\tgetCopyright(\r\n\t\t\targs.headers?.name || args.slug,\r\n\t\t\t(args.headers?.license as string) ?? \"GPL v2 or later\",\r\n\t\t);\r\n\treturn `${copyrightComment}\\n${pluginTranslations}`;\r\n}\r\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,uBAAiB;AAEjB,4BAA6C;AAC7C,0BAAsB;AACtB,qBAAoD;AACpD,gBAA+C;AAE/C,oBAA0D;AAC1D,oBAA2B;AAC3B,sBAA4B;AAC5B,qBAA6B;AAC7B,sBAA6B;AAC7B,wBAA2B;AAQ3B,eAAsB,KAAK,MAA6B;AACvD,MAAI,CAAC,KAAK,SAAS,QAAQ;AAC1B,YAAQ,IAAI,kCAA2B,MAAM,IAAI;AACjD,kCAAW;AAAA,EACZ;AAGA,QAAM,YAAY,UAAM,+BAAe,IAAI;AAG3C,OAAK,YAAY,oBAAI,KAAK;AAG1B,MAAI,wBAAoB,oCAAoB,IAAI;AAEhD,MAAI,CAAC,KAAK,SAAS;AAClB,uCAAgB,iBAAAA,QAAK,QAAQ,KAAK,MAAM,GAAG,GAAG,KAAK,QAAQ;AAK5D,QAAM,kBAAyB,8BAAa,MAAM,CAAC;AACnD,cAAY,MAAM,GAAG,GAAG;AAAA,IACvB,UAAU,sBAAsB,iBAAAA,QAAK,QAAQ,KAAK,MAAM,GAAG,CAAC;AAAA,EAC7D,CAAC;AAKD,QAAM,eAAW,6BAAY,IAAI;AACjC,QAAM,EAAE,OAAO,gBAAgB,aAAa,IAAI,UAAM,6BAAa,UAAU,MAAM,WAAW;AAE9F,cAAY,MAAM,MAAM,QAAQ,GAAG;AAAA,IAClC,UAAU,cAAc,cAAc,WAAW,YAAY;AAAA,EAC9D,CAAC;AAED,sBAAoB,UAAM;AAAA,IACzB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACD;AAMA,MAAI,CAAC,KAAK,SAAS,KAAK,OAAO;AAC9B,YAAQ,IAAI,oBAAoB;AAChC,mCAAM,MAAM,iBAAiB;AAAA,EAC9B;AAGA,MAAI,KAAK,SAAS,MAAM;AACvB,eAAO,0BAAW,MAAM,WAAW,iBAAiB;AAAA,EACrD;AAGA,QAAM,sBAA2C;AAAA,IAChD,aAAS,8BAAmB,KAAK,SAAS,OAAO;AAAA,IACjD,SAAS;AAAA,IACT,cAAc,kBAAkB,OAAO;AAAA,EACxC;AAGA,QAAM,qBAAqB,yBACzB,QAAQ,mBAAmB,EAC3B,aAAS,sBAAW,KAAK,SAAS,OAAO,CAAC;AAG5C,QAAM,mBACL,KAAK,SAAS,mBACd;AAAA,IACC,KAAK,SAAS,QAAQ,KAAK;AAAA,IAC1B,KAAK,SAAS,WAAsB;AAAA,EACtC;AACD,SAAO,GAAG,gBAAgB;AAAA,EAAK,kBAAkB;AAClD;",
|
|
6
6
|
"names": ["path"]
|
|
7
7
|
}
|