@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
package/lib/const.js CHANGED
@@ -1,6 +1,45 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
2
25
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.i18nFunctions = exports.allowedFiles = exports.DEFAULT_EXCLUDED_PATH = void 0;
26
+ exports.i18nFunctions = exports.allowedFiles = exports.DEFAULT_EXCLUDED_PATH = exports.themeHeaders = exports.pluginHeaders = exports.pkgJsonHeaders = exports.blockJson = exports.themeJson = exports.pkgJson = void 0;
27
+ const blocki18n = __importStar(require("./assets/block-i18n.json"));
28
+ const themei18n = __importStar(require("./assets/theme-i18n.json"));
29
+ const packagei18n = __importStar(require("./assets/package-i18n.json"));
30
+ const wpThemei18n = __importStar(require("./assets/wp-theme-i18n.json"));
31
+ const wpPlugini18n = __importStar(require("./assets/wp-plugin-i18n.json"));
32
+ const package_json_1 = require("../package.json");
33
+ exports.pkgJson = {
34
+ name: package_json_1.name,
35
+ version: package_json_1.version,
36
+ description: package_json_1.description,
37
+ };
38
+ exports.themeJson = themei18n;
39
+ exports.blockJson = blocki18n;
40
+ exports.pkgJsonHeaders = packagei18n;
41
+ exports.pluginHeaders = wpPlugini18n;
42
+ exports.themeHeaders = wpThemei18n;
4
43
  exports.DEFAULT_EXCLUDED_PATH = [
5
44
  '.git',
6
45
  'node_modules',
@@ -24,10 +63,8 @@ exports.allowedFiles = [
24
63
  'mjs',
25
64
  'cjs',
26
65
  'txt',
27
- 'css',
28
66
  'html',
29
67
  'json',
30
- 'md',
31
68
  ];
32
69
  exports.i18nFunctions = {
33
70
  __: ['msgid', 'text_domain'],
package/lib/const.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"const.js","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":";;;AAIa,QAAA,qBAAqB,GAAG;IACpC,MAAM;IACN,cAAc;IACd,QAAQ;IACR,OAAO;IACP,MAAM;IACN,SAAS;IACT,cAAc;IACd,mBAAmB;IACnB,aAAa;IACb,aAAa;IACb,YAAY;IACZ,OAAO;CACP,CAAA;AAEY,QAAA,YAAY,GAAG;IAC3B,KAAK;IACL,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;IACN,IAAI;CACJ,CAAA;AAIY,QAAA,aAAa,GAAG;IAC5B,EAAE,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IAC5B,UAAU,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IACpC,UAAU,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IACpC,SAAS,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IACnC,EAAE,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IAC5B,UAAU,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IACpC,UAAU,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IACpC,SAAS,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IACnC,EAAE,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC;IACvC,GAAG,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC;IACxC,UAAU,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC;IAC/C,UAAU,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC;IAC/C,SAAS,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC;IAC9C,EAAE,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,CAAC;IACtD,GAAG,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC;IAClE,OAAO,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,aAAa,CAAC;IACjD,QAAQ,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,CAAC;IAG7D,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IAG3B,EAAE,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IAC5B,GAAG,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,CAAC;IACvD,UAAU,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,CAAC;IAC9D,eAAe,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,aAAa,CAAC;CACzD,CAAA"}
1
+ {"version":3,"file":"const.js","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oEAAqD;AACrD,oEAAqD;AACrD,wEAAyD;AACzD,yEAA0D;AAC1D,2EAA4D;AAC5D,kDAA4D;AAU/C,QAAA,OAAO,GAA4B;IAC/C,IAAI,EAAJ,mBAAI;IACJ,OAAO,EAAP,sBAAO;IACP,WAAW,EAAX,0BAAW;CACX,CAAA;AAKY,QAAA,SAAS,GAAG,SAAS,CAAA;AACrB,QAAA,SAAS,GAAG,SAAS,CAAA;AACrB,QAAA,cAAc,GAAG,WAAW,CAAA;AAK5B,QAAA,aAAa,GAAG,YAAY,CAAA;AAK5B,QAAA,YAAY,GAAG,WAAW,CAAA;AAM1B,QAAA,qBAAqB,GAAG;IACpC,MAAM;IACN,cAAc;IACd,QAAQ;IACR,OAAO;IACP,MAAM;IACN,SAAS;IACT,cAAc;IACd,mBAAmB;IACnB,aAAa;IACb,aAAa;IACb,YAAY;IACZ,OAAO;CACP,CAAA;AAEY,QAAA,YAAY,GAAG;IAC3B,KAAK;IACL,IAAI;IACJ,KAAK;IACL,IAAI;IACJ,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,MAAM;IACN,MAAM;CACN,CAAA;AAIY,QAAA,aAAa,GAAG;IAC5B,EAAE,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IAC5B,UAAU,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IACpC,UAAU,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IACpC,SAAS,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IACnC,EAAE,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IAC5B,UAAU,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IACpC,UAAU,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IACpC,SAAS,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IACnC,EAAE,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC;IACvC,GAAG,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC;IACxC,UAAU,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC;IAC/C,UAAU,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC;IAC/C,SAAS,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,CAAC;IAC9C,EAAE,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,CAAC;IACtD,GAAG,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,CAAC;IAClE,OAAO,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,aAAa,CAAC;IACjD,QAAQ,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,CAAC;IAG7D,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IAG3B,EAAE,EAAE,CAAC,OAAO,EAAE,aAAa,CAAC;IAC5B,GAAG,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,CAAC;IACvD,UAAU,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,aAAa,CAAC;IAC9D,eAAe,EAAE,CAAC,OAAO,EAAE,cAAc,EAAE,aAAa,CAAC;CACzD,CAAA"}
@@ -8,6 +8,8 @@ const path_1 = __importDefault(require("path"));
8
8
  const fs_1 = __importDefault(require("fs"));
9
9
  const utils_1 = require("../utils");
10
10
  const text_1 = require("./text");
11
+ const const_1 = require("../const");
12
+ const utils_2 = require("./utils");
11
13
  function extractCssThemeData(args) {
12
14
  let fileData = {};
13
15
  const styleCssFile = path_1.default.join(args.paths.cwd, 'style.css');
@@ -15,11 +17,20 @@ function extractCssThemeData(args) {
15
17
  const fileContent = fs_1.default.readFileSync(styleCssFile, 'utf8');
16
18
  const commentBlock = (0, utils_1.getCommentBlock)(fileContent);
17
19
  fileData = (0, text_1.extractFileData)(commentBlock);
18
- if ('Name' in fileData) {
20
+ if ('Theme Name' in fileData) {
19
21
  console.log('Theme stylesheet detected.');
20
22
  console.log(`Theme stylesheet: ${styleCssFile}`);
21
23
  args.domain = 'theme';
22
- return fileData;
24
+ const themeInfo = {};
25
+ for (const keyValueMatch of Object.entries(fileData)) {
26
+ if (keyValueMatch && keyValueMatch[0] && keyValueMatch[1]) {
27
+ const header = (0, utils_2.getKeyByValue)(const_1.themeHeaders, keyValueMatch[0].trim());
28
+ if (header === undefined)
29
+ continue;
30
+ themeInfo[header] = keyValueMatch[1].trim();
31
+ }
32
+ }
33
+ return themeInfo;
23
34
  }
24
35
  }
25
36
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"css.js","sourceRoot":"","sources":["../../src/extractors/css.ts"],"names":[],"mappings":";;;;;;AACA,gDAAuB;AACvB,4CAAmB;AACnB,oCAA0C;AAC1C,iCAAwC;AAMxC,SAAgB,mBAAmB,CAAC,IAAU;IAC7C,IAAI,QAAQ,GAA2B,EAAE,CAAA;IACzC,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,CAAA;IAE3D,IAAI,YAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,MAAM,WAAW,GAAG,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QACzD,MAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,WAAW,CAAC,CAAA;QACjD,QAAQ,GAAG,IAAA,sBAAe,EAAC,YAAY,CAAC,CAAA;QAExC,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;YACzC,OAAO,CAAC,GAAG,CAAC,qBAAqB,YAAY,EAAE,CAAC,CAAA;YAChD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAA;YAErB,OAAO,QAAQ,CAAA;QAChB,CAAC;IACF,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,iCAAiC,YAAY,EAAE,CAAC,CAAA;IAC7D,CAAC;IACD,OAAO,EAAE,CAAA;AACV,CAAC;AApBD,kDAoBC"}
1
+ {"version":3,"file":"css.js","sourceRoot":"","sources":["../../src/extractors/css.ts"],"names":[],"mappings":";;;;;;AACA,gDAAuB;AACvB,4CAAmB;AACnB,oCAA0C;AAC1C,iCAAwC;AACxC,oCAAuC;AACvC,mCAAuC;AAMvC,SAAgB,mBAAmB,CAAC,IAAU;IAC7C,IAAI,QAAQ,GAA2B,EAAE,CAAA;IACzC,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC,CAAA;IAE3D,IAAI,YAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,MAAM,WAAW,GAAG,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAA;QACzD,MAAM,YAAY,GAAG,IAAA,uBAAe,EAAC,WAAW,CAAC,CAAA;QACjD,QAAQ,GAAG,IAAA,sBAAe,EAAC,YAAY,CAAC,CAAA;QAExC,IAAI,YAAY,IAAI,QAAQ,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;YACzC,OAAO,CAAC,GAAG,CAAC,qBAAqB,YAAY,EAAE,CAAC,CAAA;YAChD,IAAI,CAAC,MAAM,GAAG,OAAO,CAAA;YAErB,MAAM,SAAS,GAA2B,EAAE,CAAA;YAG5C,KAAK,MAAM,aAAa,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAEtD,IAAI,aAAa,IAAI,aAAa,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;oBAE3D,MAAM,MAAM,GAAG,IAAA,qBAAa,EAC3B,oBAAY,EACZ,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CACvB,CAAA;oBACD,IAAI,MAAM,KAAK,SAAS;wBAAE,SAAQ;oBAClC,SAAS,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBAC5C,CAAC;YACF,CAAC;YAED,OAAO,SAAS,CAAA;QACjB,CAAC;IACF,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,iCAAiC,YAAY,EAAE,CAAC,CAAA;IAC7D,CAAC;IACD,OAAO,EAAE,CAAA;AACV,CAAC;AApCD,kDAoCC"}
@@ -1,8 +1,6 @@
1
- import { Args } from '../types';
2
- export declare function generateHeader(args: Args): Record<string, string>;
1
+ import { Args, PotHeaders } from '../types';
2
+ export declare function generateHeader(args: Args): Record<PotHeaders, string>;
3
3
  export declare function extractMainFileData(args: Args): Record<string, string>;
4
4
  export declare function translationsHeaders(args: Args): {
5
- name: import("gettext-parser").GetTextTranslation;
6
- description: import("gettext-parser").GetTextTranslation;
7
- author: import("gettext-parser").GetTextTranslation;
5
+ [x: string]: import("gettext-parser").GetTextTranslation;
8
6
  };
@@ -4,28 +4,32 @@ exports.translationsHeaders = exports.extractMainFileData = exports.generateHead
4
4
  const php_1 = require("./php");
5
5
  const css_1 = require("./css");
6
6
  const utils_1 = require("./utils");
7
- const maps_1 = require("../maps");
7
+ const const_1 = require("../const");
8
8
  function generateHeader(args) {
9
9
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
10
- const headerData = Object.assign(Object.assign({}, args.headers), { author: ((_a = args.headers) === null || _a === void 0 ? void 0 : _a.author) || 'AUTHOR', slug: ((_b = args.headers) === null || _b === void 0 ? void 0 : _b.slug) || 'PLUGIN NAME', email: ((_c = args.headers) === null || _c === void 0 ? void 0 : _c.email) || 'EMAIL', license: ((_d = args.headers) === null || _d === void 0 ? void 0 : _d.license) || 'gpl-2.0 or later', version: ((_e = args.headers) === null || _e === void 0 ? void 0 : _e.version) || 'VERSION', language: ((_f = args.headers) === null || _f === void 0 ? void 0 : _f.language) || 'LANGUAGE', domain: ((_g = args.headers) === null || _g === void 0 ? void 0 : _g.domain) || ((_h = args.headers) === null || _h === void 0 ? void 0 : _h.slug) || undefined, bugs: {
11
- url: ((_j = args.headers) === null || _j === void 0 ? void 0 : _j.bugs) ||
10
+ const headerData = Object.assign(Object.assign({}, args.headers), { author: ((_a = args.headers) === null || _a === void 0 ? void 0 : _a.author) || 'AUTHOR', slug: args.slug || 'PLUGIN NAME', email: ((_b = args.headers) === null || _b === void 0 ? void 0 : _b.email) || 'EMAIL', license: ((_c = args.headers) === null || _c === void 0 ? void 0 : _c.license) || 'gpl-2.0 or later', version: ((_d = args.headers) === null || _d === void 0 ? void 0 : _d.version) || '1.0.0', language: ((_e = args.headers) === null || _e === void 0 ? void 0 : _e.language) || 'en', domain: ((_f = args.headers) === null || _f === void 0 ? void 0 : _f.textDomain) || ((_g = args.headers) === null || _g === void 0 ? void 0 : _g.slug) || undefined, bugs: {
11
+ url: ((_h = args.headers) === null || _h === void 0 ? void 0 : _h.bugsUrl) ||
12
12
  'https://wordpress.org/support/plugin/' + args.slug,
13
- email: ((_k = args.headers) === null || _k === void 0 ? void 0 : _k.authoremail) || 'AUTHOR EMAIL',
13
+ email: ((_j = args.headers) === null || _j === void 0 ? void 0 : _j.bugsEmail) ||
14
+ ((_k = args.headers) === null || _k === void 0 ? void 0 : _k.authoremail) ||
15
+ 'AUTHOR EMAIL',
14
16
  } });
17
+ const authorString = `${headerData.author} <${headerData.email}>`;
18
+ const domain = headerData.domain ? `X-Domain: ${headerData.domain}` : '';
15
19
  return {
16
20
  'Project-Id-Version': `${headerData.slug} ${headerData.version}`,
17
- 'Report-Msgid-Bugs-To': `${headerData.bugs.email} ${headerData.bugs.url}`,
21
+ 'Report-Msgid-Bugs-To': authorString,
18
22
  'MIME-Version': `1.0`,
19
23
  'Content-Transfer-Encoding': `8bit`,
20
24
  'content-type': 'text/plain; charset=iso-8859-1',
21
25
  'plural-forms': 'nplurals=2; plural=(n!=1);',
22
26
  'POT-Creation-Date': `${new Date().toISOString()}`,
23
27
  'PO-Revision-Date': `${new Date().getFullYear()}-MO-DA HO:MI+ZONE`,
24
- 'Last-Translator': `${headerData.author} <${headerData.email}>`,
25
- 'Language-Team': `${headerData.author} <${headerData.email}>`,
26
- 'X-Generator': `${maps_1.pkgJson.name} ${maps_1.pkgJson.version}`,
28
+ 'Last-Translator': authorString,
29
+ 'Language-Team': authorString,
30
+ 'X-Generator': `${const_1.pkgJson.name} ${const_1.pkgJson.version}`,
27
31
  Language: `${headerData.language}`,
28
- 'X-Domain': headerData.domain ? `${headerData.domain}` : '',
32
+ domain,
29
33
  };
30
34
  }
31
35
  exports.generateHeader = generateHeader;
@@ -45,12 +49,14 @@ function extractMainFileData(args) {
45
49
  exports.extractMainFileData = extractMainFileData;
46
50
  function translationsHeaders(args) {
47
51
  const { domain, headers } = args;
48
- const { name, description, author } = headers;
52
+ const { name, description, author, authorUri, url } = headers;
49
53
  const fakePath = domain === 'plugin' ? args.slug + '.php' : 'style.css';
50
54
  return {
51
- name: (0, utils_1.gentranslation)('Name of the ' + domain, name, fakePath),
52
- description: (0, utils_1.gentranslation)('Description of the ' + domain, description, fakePath),
53
- author: (0, utils_1.gentranslation)('Author of the ' + domain, author, fakePath),
55
+ [name]: (0, utils_1.gentranslation)(`Name of the ${domain}`, name, fakePath),
56
+ [url]: (0, utils_1.gentranslation)(`Url of the ${domain}`, url, fakePath),
57
+ [description]: (0, utils_1.gentranslation)(`Description of the ${domain}`, description, fakePath),
58
+ [author]: (0, utils_1.gentranslation)(`Author of the ${domain}`, author, fakePath),
59
+ [authorUri]: (0, utils_1.gentranslation)(`Author URI of the ${domain}`, authorUri, fakePath),
54
60
  };
55
61
  }
56
62
  exports.translationsHeaders = translationsHeaders;
@@ -1 +1 @@
1
- {"version":3,"file":"headers.js","sourceRoot":"","sources":["../../src/extractors/headers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"headers.js","sourceRoot":"","sources":["../../src/extractors/headers.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,2 @@
1
1
  import { type TranslationStrings } from '../types';
2
- export declare function yieldParsedData(parsed: Record<string, string>, filename: 'block.json' | 'theme.json' | 'readme.txt', filepath: string): TranslationStrings;
3
- export declare function parseFile(file: string, filePath?: string): Promise<TranslationStrings | null>;
2
+ export declare function parseFile(file: string, filePath?: string): Promise<TranslationStrings | undefined>;
@@ -32,63 +32,28 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
32
32
  });
33
33
  };
34
34
  Object.defineProperty(exports, "__esModule", { value: true });
35
- exports.parseFile = exports.yieldParsedData = void 0;
35
+ exports.parseFile = void 0;
36
36
  const path = __importStar(require("path"));
37
- const fs = __importStar(require("fs"));
38
- const utils_1 = require("../utils");
37
+ const fs_1 = require("../fs");
39
38
  const json_1 = require("./json");
40
- const text_1 = require("./text");
41
- const tree_1 = require("../tree");
42
- const utils_2 = require("./utils");
43
- function yieldParsedData(parsed, filename, filepath) {
44
- const gettextTranslations = {};
45
- Object.entries(parsed).forEach(([term, string]) => {
46
- var _a, _b;
47
- const entry = (0, utils_2.gentranslation)((0, json_1.getJsonComment)(term, filename), string, filepath);
48
- gettextTranslations[(_a = entry.msgctxt) !== null && _a !== void 0 ? _a : ''] = Object.assign(Object.assign({}, (gettextTranslations[(_b = entry.msgctxt) !== null && _b !== void 0 ? _b : ''] || {})), { [entry.msgid]: entry });
49
- });
50
- return gettextTranslations;
51
- }
52
- exports.yieldParsedData = yieldParsedData;
39
+ const tree_1 = require("../parser/tree");
53
40
  function parseFile(file, filePath = '') {
54
41
  return __awaiter(this, void 0, void 0, function* () {
42
+ const filename = path.basename(file);
55
43
  const ext = path.extname(file).replace(/^./, '');
56
44
  const fileRealPath = path.resolve(filePath, file);
57
45
  if (ext === 'json') {
58
- const filename = path.basename(file);
59
46
  if (filename === 'theme.json' || filename === 'block.json') {
60
- const res = yield (0, json_1.parseJsonFile)({
61
- sourceCode: fs.readFileSync(fileRealPath, 'utf8'),
62
- filename: filename,
63
- filepath: filePath,
47
+ return (0, fs_1.readFileAsync)(fileRealPath).then((sourceCode) => {
48
+ return (0, json_1.parseJsonCallback)(sourceCode, filePath, filename);
64
49
  });
65
- if (res) {
66
- return yieldParsedData(res, filename, path.join(filePath, filename));
67
- }
68
- else {
69
- return {};
70
- }
71
- }
72
- }
73
- if (ext === 'txt') {
74
- const filename = path.basename(file);
75
- if (filename === 'readme.txt') {
76
- const fileContent = fs.readFileSync(file, 'utf8');
77
- const commentBlock = (0, utils_1.getCommentBlock)(fileContent);
78
- const parsed = (0, text_1.extractFileData)(commentBlock);
79
- if (parsed) {
80
- return yieldParsedData(parsed, filename, filePath);
81
- }
82
- else {
83
- return {};
84
- }
85
50
  }
86
51
  }
87
52
  if (['ts', 'tsx', 'js', 'jsx', 'mjs', 'cjs', 'php'].includes(ext)) {
88
- const sourceCode = fs.readFileSync(fileRealPath, 'utf8');
89
- return (0, tree_1.doTree)(sourceCode, file);
53
+ return (0, fs_1.readFileAsync)(fileRealPath).then((sourceCode) => {
54
+ return (0, tree_1.doTree)(sourceCode, file);
55
+ });
90
56
  }
91
- return new Promise((resolve) => resolve(null));
92
57
  });
93
58
  }
94
59
  exports.parseFile = parseFile;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/extractors/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/extractors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4B;AAE5B,8BAAqC;AACrC,iCAA0C;AAC1C,yCAAuC;AAOvC,SAAsB,SAAS,CAC9B,IAAY,EACZ,WAAmB,EAAE;;QAErB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;QAChD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QAEjD,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;YACpB,IAAI,QAAQ,KAAK,YAAY,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;gBAC5D,OAAO,IAAA,kBAAa,EAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE;oBACtD,OAAO,IAAA,wBAAiB,EAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;gBACzD,CAAC,CAAC,CAAA;YACH,CAAC;QACF,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAEnE,OAAO,IAAA,kBAAa,EAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE;gBACtD,OAAO,IAAA,aAAM,EAAC,UAAU,EAAE,IAAI,CAAC,CAAA;YAChC,CAAC,CAAC,CAAA;QACH,CAAC;IACF,CAAC;CAAA;AAtBD,8BAsBC"}
@@ -1,7 +1,9 @@
1
- import type { I18nSchema } from '../types';
1
+ import type { Args, I18nSchema, TranslationStrings } from '../types';
2
2
  export declare function parseJsonFile(opts: {
3
- sourceCode: string;
3
+ fileContent: string;
4
4
  filename: 'block.json' | 'theme.json';
5
5
  filepath: string;
6
6
  }): Promise<I18nSchema>;
7
- export declare function getJsonComment(key: string, type?: 'block.json' | 'theme.json' | 'readme.txt'): string;
7
+ export declare function getJsonComment(key: string, type?: string): string;
8
+ export declare function extractPackageJson(args: Args): Record<string, string>;
9
+ export declare function parseJsonCallback(fileContent: string, filePath: string, filename: 'block.json' | 'theme.json'): Promise<TranslationStrings>;
@@ -8,13 +8,19 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.getJsonComment = exports.parseJsonFile = void 0;
13
- const maps_1 = require("../maps");
15
+ exports.parseJsonCallback = exports.extractPackageJson = exports.getJsonComment = exports.parseJsonFile = void 0;
16
+ const const_1 = require("../const");
14
17
  const schema_1 = require("./schema");
18
+ const path_1 = __importDefault(require("path"));
19
+ const fs_1 = __importDefault(require("fs"));
20
+ const utils_1 = require("./utils");
15
21
  function parseJsonFile(opts) {
16
22
  return __awaiter(this, void 0, void 0, function* () {
17
- const jsonTranslations = yield schema_1.JsonSchemaExtractor.fromString(opts.sourceCode, {
23
+ const jsonTranslations = yield schema_1.JsonSchemaExtractor.fromString(opts.fileContent, {
18
24
  file: opts.filename,
19
25
  schema: opts.filename === 'theme.json'
20
26
  ? schema_1.JsonSchemaExtractor.themeJsonSource
@@ -28,11 +34,49 @@ function parseJsonFile(opts) {
28
34
  });
29
35
  }
30
36
  exports.parseJsonFile = parseJsonFile;
37
+ function getSchema(type) {
38
+ switch (type) {
39
+ case 'block.json':
40
+ return const_1.blockJson;
41
+ case 'theme.json':
42
+ return const_1.themeJson;
43
+ default:
44
+ return {};
45
+ }
46
+ }
31
47
  function getJsonComment(key, type) {
32
- const comments = type === 'block.json' ? maps_1.blockJson : maps_1.themeJson;
48
+ const comments = getSchema(type);
33
49
  return key in Object.values(comments)
34
50
  ? comments[key]
35
51
  : key;
36
52
  }
37
53
  exports.getJsonComment = getJsonComment;
54
+ function extractPackageJson(args) {
55
+ const fields = const_1.pkgJsonHeaders;
56
+ const pkgJsonMeta = {};
57
+ const packageJsonPath = args.paths.cwd
58
+ ? path_1.default.join(args.paths.cwd, 'package.json')
59
+ : 'package.json';
60
+ if (fs_1.default.existsSync(packageJsonPath)) {
61
+ const packageJson = JSON.parse(fs_1.default.readFileSync(packageJsonPath, 'utf8'));
62
+ for (const field of Object.keys(fields)) {
63
+ if (field in packageJson) {
64
+ pkgJsonMeta[field] = packageJson[field];
65
+ }
66
+ }
67
+ }
68
+ return pkgJsonMeta;
69
+ }
70
+ exports.extractPackageJson = extractPackageJson;
71
+ function parseJsonCallback(fileContent, filePath, filename) {
72
+ return __awaiter(this, void 0, void 0, function* () {
73
+ const data = yield parseJsonFile({
74
+ fileContent: fileContent,
75
+ filename: filename,
76
+ filepath: filePath,
77
+ });
78
+ return (0, utils_1.yieldParsedData)(data, filename, path_1.default.join(filePath, filename));
79
+ });
80
+ }
81
+ exports.parseJsonCallback = parseJsonCallback;
38
82
  //# sourceMappingURL=json.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"json.js","sourceRoot":"","sources":["../../src/extractors/json.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,kCAA8C;AAC9C,qCAA8C;AAW9C,SAAsB,aAAa,CAAC,IAInC;;QACA,MAAM,gBAAgB,GAAG,MAAM,4BAAmB,CAAC,UAAU,CAC5D,IAAI,CAAC,UAAU,EACf;YACC,IAAI,EAAE,IAAI,CAAC,QAAQ;YACnB,MAAM,EACL,IAAI,CAAC,QAAQ,KAAK,YAAY;gBAC7B,CAAC,CAAC,4BAAmB,CAAC,eAAe;gBACrC,CAAC,CAAC,4BAAmB,CAAC,eAAe;YACvC,cAAc,EACb,IAAI,CAAC,QAAQ,KAAK,YAAY;gBAC7B,CAAC,CAAC,4BAAmB,CAAC,iBAAiB;gBACvC,CAAC,CAAC,4BAAmB,CAAC,iBAAiB;YACzC,aAAa,EAAE,IAAI;SACnB,CACD,CAAA;QACD,OAAO,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,EAAE,CAAA;IAC9B,CAAC;CAAA;AArBD,sCAqBC;AASD,SAAgB,cAAc,CAC7B,GAAW,EACX,IAAiD;IAEjD,MAAM,QAAQ,GAAG,IAAI,KAAK,YAAY,CAAC,CAAC,CAAC,gBAAS,CAAC,CAAC,CAAC,gBAAS,CAAA;IAC9D,OAAO,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;QACpC,CAAC,CAAC,QAAQ,CAAC,GAA4B,CAAC;QACxC,CAAC,CAAC,GAAG,CAAA;AACP,CAAC;AARD,wCAQC"}
1
+ {"version":3,"file":"json.js","sourceRoot":"","sources":["../../src/extractors/json.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,oCAA+D;AAC/D,qCAA8C;AAC9C,gDAAuB;AACvB,4CAAmB;AACnB,mCAAyC;AAWzC,SAAsB,aAAa,CAAC,IAInC;;QACA,MAAM,gBAAgB,GAAG,MAAM,4BAAmB,CAAC,UAAU,CAC5D,IAAI,CAAC,WAAW,EAChB;YACC,IAAI,EAAE,IAAI,CAAC,QAAQ;YACnB,MAAM,EACL,IAAI,CAAC,QAAQ,KAAK,YAAY;gBAC7B,CAAC,CAAC,4BAAmB,CAAC,eAAe;gBACrC,CAAC,CAAC,4BAAmB,CAAC,eAAe;YACvC,cAAc,EACb,IAAI,CAAC,QAAQ,KAAK,YAAY;gBAC7B,CAAC,CAAC,4BAAmB,CAAC,iBAAiB;gBACvC,CAAC,CAAC,4BAAmB,CAAC,iBAAiB;YACzC,aAAa,EAAE,IAAI;SACnB,CACD,CAAA;QACD,OAAO,gBAAgB,aAAhB,gBAAgB,cAAhB,gBAAgB,GAAI,EAAE,CAAA;IAC9B,CAAC;CAAA;AArBD,sCAqBC;AAED,SAAS,SAAS,CAAC,IAAa;IAC/B,QAAQ,IAAI,EAAE,CAAC;QACd,KAAK,YAAY;YAChB,OAAO,iBAAS,CAAA;QACjB,KAAK,YAAY;YAChB,OAAO,iBAAS,CAAA;QACjB;YACC,OAAO,EAAE,CAAA;IACX,CAAC;AACF,CAAC;AASD,SAAgB,cAAc,CAAC,GAAW,EAAE,IAAa;IACxD,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;IAChC,OAAO,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;QACpC,CAAC,CAAC,QAAQ,CAAC,GAA4B,CAAC;QACxC,CAAC,CAAC,GAAG,CAAA;AACP,CAAC;AALD,wCAKC;AAUD,SAAgB,kBAAkB,CAAC,IAAU;IAC5C,MAAM,MAAM,GAAG,sBAAc,CAAA;IAC7B,MAAM,WAAW,GAA2B,EAAE,CAAA;IAE9C,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG;QACrC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;QAC3C,CAAC,CAAC,cAAc,CAAA;IAKjB,IAAI,YAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACpC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAA;QACxE,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAEzC,IAAI,KAAK,IAAI,WAAW,EAAE,CAAC;gBAC1B,WAAW,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,KAAK,CAAW,CAAA;YAClD,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,WAAW,CAAA;AACnB,CAAC;AArBD,gDAqBC;AAUD,SAAsB,iBAAiB,CACtC,WAAmB,EACnB,QAAgB,EAChB,QAAqC;;QAErC,MAAM,IAAI,GAAG,MAAM,aAAa,CAAC;YAChC,WAAW,EAAE,WAAW;YACxB,QAAQ,EAAE,QAAQ;YAClB,QAAQ,EAAE,QAAQ;SAClB,CAAC,CAAA;QAEF,OAAO,IAAA,uBAAe,EACrB,IAAyC,EACzC,QAAQ,EACR,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAC7B,CAAA;IACF,CAAC;CAAA;AAhBD,8CAgBC"}
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.parsePHPFile = exports.extractPhpPluginData = void 0;
7
- const maps_1 = require("../maps");
7
+ const const_1 = require("../const");
8
8
  const utils_1 = require("./utils");
9
9
  const path_1 = __importDefault(require("path"));
10
10
  const fs_1 = __importDefault(require("fs"));
@@ -14,15 +14,10 @@ function extractPhpPluginData(args) {
14
14
  if (fs_1.default.existsSync(folderPhpFile)) {
15
15
  const fileContent = fs_1.default.readFileSync(folderPhpFile, 'utf8');
16
16
  fileData = parsePHPFile(fileContent);
17
- if ('name' in fileData) {
18
- console.log('Plugin file detected.');
19
- console.log(`Plugin file: ${folderPhpFile}`);
20
- args.domain = 'plugin';
21
- return fileData;
22
- }
23
- else {
24
- console.log('Plugin file detected, but no plugin information found.');
25
- }
17
+ console.log('Plugin file detected.');
18
+ console.log(`Plugin file: ${folderPhpFile}`);
19
+ args.domain = 'plugin';
20
+ return fileData;
26
21
  }
27
22
  else {
28
23
  console.log('Plugin file not found.');
@@ -32,7 +27,6 @@ function extractPhpPluginData(args) {
32
27
  }
33
28
  exports.extractPhpPluginData = extractPhpPluginData;
34
29
  function parsePHPFile(phpContent) {
35
- var _a;
36
30
  const match = phpContent.match(/\/\*\*([\s\S]*?)\*\//);
37
31
  if (match && match[1]) {
38
32
  const commentBlock = match[1];
@@ -41,10 +35,9 @@ function parsePHPFile(phpContent) {
41
35
  for (const line of lines) {
42
36
  const keyValueMatch = line.match(/^\s*\*\s*([^:]+):\s*(.*)/);
43
37
  if (keyValueMatch && keyValueMatch[1] && keyValueMatch[2]) {
44
- let header = keyValueMatch[1].trim();
45
- header =
46
- (_a = maps_1.pluginHeaders[header]) !== null && _a !== void 0 ? _a : header;
47
- header = (0, utils_1.getKeyByValue)(maps_1.pluginHeaders, header);
38
+ const header = (0, utils_1.getKeyByValue)(const_1.pluginHeaders, keyValueMatch[1].trim());
39
+ if (header === undefined)
40
+ continue;
48
41
  pluginInfo[header] = keyValueMatch[2].trim();
49
42
  }
50
43
  }
@@ -1 +1 @@
1
- {"version":3,"file":"php.js","sourceRoot":"","sources":["../../src/extractors/php.ts"],"names":[],"mappings":";;;;;;AAAA,kCAAuC;AACvC,mCAAuC;AAEvC,gDAAuB;AACvB,4CAAmB;AAEnB,SAAgB,oBAAoB,CAAC,IAAU;IAC9C,IAAI,QAAQ,GAA2B,EAAE,CAAA;IACzC,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,MAAM,CAAC,CAAA;IAEnE,IAAI,YAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,YAAE,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;QAC1D,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,CAAA;QAEpC,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;YACpC,OAAO,CAAC,GAAG,CAAC,gBAAgB,aAAa,EAAE,CAAC,CAAA;YAC5C,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAA;YAEtB,OAAO,QAAQ,CAAA;QAChB,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,GAAG,CACV,wDAAwD,CACxD,CAAA;QACF,CAAC;IACF,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;QACrC,OAAO,CAAC,GAAG,CAAC,4BAA4B,aAAa,EAAE,CAAC,CAAA;IACzD,CAAC;IAED,OAAO,EAAE,CAAA;AACV,CAAC;AAzBD,oDAyBC;AAQD,SAAgB,YAAY,CAAC,UAAkB;;IAC9C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;IAEtD,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QAC7B,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAEtC,MAAM,UAAU,GAA2B,EAAE,CAAA;QAE7C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAA;YAG5D,IAAI,aAAa,IAAI,aAAa,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC3D,IAAI,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBAEpC,MAAM;oBACL,MAAA,oBAAa,CAAC,MAAoC,CAAC,mCACnD,MAAM,CAAA;gBACP,MAAM,GAAG,IAAA,qBAAa,EAAC,oBAAa,EAAE,MAAM,CAAC,CAAA;gBAC7C,UAAU,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YAC7C,CAAC;QACF,CAAC;QAED,OAAO,UAAU,CAAA;IAClB,CAAC;IACD,OAAO,EAAE,CAAA;AACV,CAAC;AA3BD,oCA2BC"}
1
+ {"version":3,"file":"php.js","sourceRoot":"","sources":["../../src/extractors/php.ts"],"names":[],"mappings":";;;;;;AAAA,oCAAwC;AACxC,mCAAuC;AAEvC,gDAAuB;AACvB,4CAAmB;AAEnB,SAAgB,oBAAoB,CAAC,IAAU;IAC9C,IAAI,QAAQ,GAA2B,EAAE,CAAA;IACzC,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,MAAM,CAAC,CAAA;IAEnE,IAAI,YAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,YAAE,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAA;QAC1D,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,CAAA;QAGpC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;QACpC,OAAO,CAAC,GAAG,CAAC,gBAAgB,aAAa,EAAE,CAAC,CAAA;QAC5C,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAA;QAEtB,OAAO,QAAQ,CAAA;IAChB,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAA;QACrC,OAAO,CAAC,GAAG,CAAC,4BAA4B,aAAa,EAAE,CAAC,CAAA;IACzD,CAAC;IAED,OAAO,EAAE,CAAA;AACV,CAAC;AApBD,oDAoBC;AAQD,SAAgB,YAAY,CAAC,UAAkB;IAC9C,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;IAEtD,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QAC7B,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAEtC,MAAM,UAAU,GAA2B,EAAE,CAAA;QAE7C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAA;YAG5D,IAAI,aAAa,IAAI,aAAa,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC;gBAE3D,MAAM,MAAM,GAAG,IAAA,qBAAa,EAC3B,qBAAa,EACb,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CACvB,CAAA;gBACD,IAAI,MAAM,KAAK,SAAS;oBAAE,SAAQ;gBAClC,UAAU,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YAC7C,CAAC;QACF,CAAC;QAED,OAAO,UAAU,CAAA;IAClB,CAAC;IACD,OAAO,EAAE,CAAA;AACV,CAAC;AA3BD,oCA2BC"}
@@ -44,7 +44,11 @@ class JsonSchemaExtractor {
44
44
  return this.schemaCache[url];
45
45
  }
46
46
  try {
47
- const response = yield axios_1.default.get(url);
47
+ const response = yield axios_1.default.get(url, {
48
+ headers: {
49
+ 'Cache-Control': 'no-cache',
50
+ },
51
+ });
48
52
  this.schemaCache[url] = response.data;
49
53
  return response.data;
50
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/extractors/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/extractors/schema.ts"],"names":[],"mappings":"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"}
@@ -3,13 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.extractFileData = void 0;
4
4
  const utils_1 = require("../utils");
5
5
  function extractFileData(fileContent, separator = ':') {
6
+ var _a;
6
7
  const data = {};
7
- fileContent
8
- .trimStart()
9
- .split('\n')
10
- .map((line) => line.trim())
11
- .map((line) => (0, utils_1.removeCommentMarkup)(line))
12
- .forEach((line) => {
8
+ (_a = (0, utils_1.removeCommentMarkup)(fileContent)) === null || _a === void 0 ? void 0 : _a.forEach((line) => {
13
9
  var _a, _b;
14
10
  const parts = line.split(separator);
15
11
  if (parts.length !== 2 && Object.values(data).length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/extractors/text.ts"],"names":[],"mappings":";;;AAAA,oCAA8C;AAS9C,SAAgB,eAAe,CAC9B,WAAmB,EACnB,SAAS,GAAG,GAAG;IAEf,MAAM,IAAI,GAA2B,EAAE,CAAA;IAGvC,WAAW;SACT,SAAS,EAAE;SACX,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAA,2BAAmB,EAAC,IAAI,CAAC,CAAC;SAExC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;;QACjB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAInC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,OAAM;QACP,CAAC;QACD,IAAI,CAAC,MAAA,KAAK,CAAC,CAAC,CAAC,0CAAE,IAAI,EAAE,CAAC,GAAG,MAAA,KAAK,CAAC,CAAC,CAAC,0CAAE,IAAI,EAAE,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEH,OAAO,IAAI,CAAA;AACZ,CAAC;AAzBD,0CAyBC"}
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/extractors/text.ts"],"names":[],"mappings":";;;AAAA,oCAA+D;AAW/D,SAAgB,eAAe,CAC9B,WAAmB,EACnB,YAAoB,GAAG;;IAEvB,MAAM,IAAI,GAA2B,EAAE,CAAA;IAGvC,MAAA,IAAA,2BAAmB,EAAC,WAAW,CAAC,0CAE7B,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;;QAClB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAInC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,OAAM;QACP,CAAC;QACD,IAAI,CAAC,MAAA,KAAK,CAAC,CAAC,CAAC,0CAAE,IAAI,EAAE,CAAC,GAAG,MAAA,KAAK,CAAC,CAAC,CAAC,0CAAE,IAAI,EAAE,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEH,OAAO,IAAI,CAAA;AACZ,CAAC;AArBD,0CAqBC"}
@@ -1,5 +1,5 @@
1
- import type { Args } from '../types';
2
1
  import { GetTextTranslation } from 'gettext-parser';
3
- export declare function getKeyByValue(object: Record<string, unknown>, value: string): string;
4
- export declare function extractPackageJson(args: Args): Record<string, string>;
2
+ import type { TranslationStrings } from '../types';
3
+ export declare function getKeyByValue(object: Record<string, unknown>, value: string): string | undefined;
5
4
  export declare const gentranslation: (label: string, string: string, filePath?: string | undefined) => GetTextTranslation;
5
+ export declare function yieldParsedData(parsed: Record<string, string | string[]>, filename: 'block.json' | 'theme.json' | 'readme.txt', filepath: string): TranslationStrings;
@@ -1,34 +1,12 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.gentranslation = exports.extractPackageJson = exports.getKeyByValue = void 0;
7
- const path_1 = __importDefault(require("path"));
8
- const fs_1 = __importDefault(require("fs"));
9
- const maps_1 = require("../maps");
3
+ exports.yieldParsedData = exports.gentranslation = exports.getKeyByValue = void 0;
4
+ const json_1 = require("./json");
10
5
  function getKeyByValue(object, value) {
11
6
  var _a;
12
- return (_a = Object.keys(object).find((key) => object[key] === value)) !== null && _a !== void 0 ? _a : value;
7
+ return (_a = Object.keys(object).find((key) => object[key] === value)) !== null && _a !== void 0 ? _a : undefined;
13
8
  }
14
9
  exports.getKeyByValue = getKeyByValue;
15
- function extractPackageJson(args) {
16
- const fields = maps_1.pluginHeaders;
17
- const pkgJsonMeta = {};
18
- const packageJsonPath = args.paths.cwd
19
- ? path_1.default.join(args.paths.cwd, 'package.json')
20
- : 'package.json';
21
- if (fs_1.default.existsSync(packageJsonPath)) {
22
- const packageJson = JSON.parse(fs_1.default.readFileSync(packageJsonPath, 'utf8'));
23
- for (const field of Object.keys(fields)) {
24
- if (packageJson[field] !== undefined) {
25
- pkgJsonMeta[field] = packageJson[field];
26
- }
27
- }
28
- }
29
- return pkgJsonMeta;
30
- }
31
- exports.extractPackageJson = extractPackageJson;
32
10
  const gentranslation = (label, string, filePath) => {
33
11
  return {
34
12
  msgctxt: undefined,
@@ -42,4 +20,35 @@ const gentranslation = (label, string, filePath) => {
42
20
  };
43
21
  };
44
22
  exports.gentranslation = gentranslation;
23
+ function yieldParsedData(parsed, filename, filepath) {
24
+ if (!parsed) {
25
+ return {};
26
+ }
27
+ const gettextTranslations = {};
28
+ Object.entries(parsed).forEach(([term, item]) => {
29
+ function storeTranslation(value, valueKey = term) {
30
+ var _a, _b;
31
+ const entry = (0, exports.gentranslation)((0, json_1.getJsonComment)(term, filename), valueKey, filepath);
32
+ gettextTranslations[(_a = entry.msgctxt) !== null && _a !== void 0 ? _a : ''] = Object.assign(Object.assign({}, (gettextTranslations[(_b = entry.msgctxt) !== null && _b !== void 0 ? _b : ''] || {})), { [entry.msgid]: entry });
33
+ }
34
+ if (!item) {
35
+ return;
36
+ }
37
+ else if (typeof item === 'string') {
38
+ storeTranslation(item);
39
+ }
40
+ else if (Array.isArray(item)) {
41
+ item.forEach((value) => storeTranslation(value));
42
+ }
43
+ else {
44
+ Object.entries(item).forEach(([key, value]) => {
45
+ if (typeof value === 'string') {
46
+ storeTranslation(value, key);
47
+ }
48
+ });
49
+ }
50
+ });
51
+ return gettextTranslations;
52
+ }
53
+ exports.yieldParsedData = yieldParsedData;
45
54
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/extractors/utils.ts"],"names":[],"mappings":";;;;;;AACA,gDAAuB;AACvB,4CAAmB;AAEnB,kCAAuC;AASvC,SAAgB,aAAa,CAC5B,MAA+B,EAC/B,KAAa;;IAEb,OAAO,MAAA,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,mCAAI,KAAK,CAAA;AACzE,CAAC;AALD,sCAKC;AAUD,SAAgB,kBAAkB,CAAC,IAAU;IAC5C,MAAM,MAAM,GAAG,oBAAa,CAAA;IAC5B,MAAM,WAAW,GAA2B,EAAE,CAAA;IAE9C,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG;QACrC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;QAC3C,CAAC,CAAC,cAAc,CAAA;IAKjB,IAAI,YAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACpC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAA;QAExE,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACzC,IAAI,WAAW,CAAC,KAAK,CAAC,KAAK,SAAS,EAAE,CAAC;gBACtC,WAAW,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;YACxC,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,WAAW,CAAA;AACnB,CAAC;AArBD,gDAqBC;AASM,MAAM,cAAc,GAAG,CAC7B,KAAa,EACb,MAAc,EACd,QAA6B,EACR,EAAE;IACvB,OAAO;QACN,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,EAAE;QAChB,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE;YACT,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,QAAQ;SACe;KACnC,CAAA;AACF,CAAC,CAAA;AAfY,QAAA,cAAc,kBAe1B"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/extractors/utils.ts"],"names":[],"mappings":";;;AAEA,iCAAuC;AASvC,SAAgB,aAAa,CAC5B,MAA+B,EAC/B,KAAa;;IAEb,OAAO,MAAA,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,mCAAI,SAAS,CAAA;AAC7E,CAAC;AALD,sCAKC;AASM,MAAM,cAAc,GAAG,CAC7B,KAAa,EACb,MAAc,EACd,QAA6B,EACR,EAAE;IACvB,OAAO;QACN,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,EAAE;QAChB,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE;YACT,SAAS,EAAE,KAAK;YAChB,SAAS,EAAE,QAAQ;SACe;KACnC,CAAA;AACF,CAAC,CAAA;AAfY,QAAA,cAAc,kBAe1B;AAUD,SAAgB,eAAe,CAC9B,MAAyC,EACzC,QAAoD,EACpD,QAAgB;IAEhB,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,OAAO,EAAE,CAAA;IACV,CAAC;IACD,MAAM,mBAAmB,GAAuB,EAAE,CAAA;IAElD,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE;QAO/C,SAAS,gBAAgB,CAAC,KAAa,EAAE,WAAmB,IAAI;;YAC/D,MAAM,KAAK,GAAG,IAAA,sBAAc,EAC3B,IAAA,qBAAc,EAAC,IAAI,EAAE,QAAQ,CAAC,EAC9B,QAAQ,EACR,QAAQ,CACR,CAAA;YAED,mBAAmB,CAAC,MAAA,KAAK,CAAC,OAAO,mCAAI,EAAE,CAAC,mCACpC,CAAC,mBAAmB,CAAC,MAAA,KAAK,CAAC,OAAO,mCAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KACnD,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,GACpB,CAAA;QACF,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,OAAM;QACP,CAAC;aAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QACvB,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAA;QACjD,CAAC;aAAM,CAAC;YACP,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC7C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAC/B,gBAAgB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;gBAC7B,CAAC;YACF,CAAC,CAAC,CAAA;QACH,CAAC;IACF,CAAC,CAAC,CAAA;IAEF,OAAO,mBAAmB,CAAA;AAC3B,CAAC;AA9CD,0CA8CC"}