@esgettext/tools 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/LICENSE +19 -0
  2. package/README.md +126 -0
  3. package/bin/esgettext-install.js +5 -0
  4. package/bin/esgettext-mo2json.js +5 -0
  5. package/bin/esgettext-msgfmt-all.js +5 -0
  6. package/bin/esgettext-msgmerge-all.js +5 -0
  7. package/bin/esgettext-xgettext.js +5 -0
  8. package/dist/cli/getopt.d.ts +34 -0
  9. package/dist/cli/getopt.js +150 -0
  10. package/dist/cli/getopt.js.map +1 -0
  11. package/dist/cli/getopt.spec.d.ts +1 -0
  12. package/dist/cli/getopt.spec.js +164 -0
  13. package/dist/cli/getopt.spec.js.map +1 -0
  14. package/dist/cli/install.d.ts +1 -0
  15. package/dist/cli/install.js +91 -0
  16. package/dist/cli/install.js.map +1 -0
  17. package/dist/cli/mo2json-cli.d.ts +1 -0
  18. package/dist/cli/mo2json-cli.js +48 -0
  19. package/dist/cli/mo2json-cli.js.map +1 -0
  20. package/dist/cli/msgfmt-all.d.ts +1 -0
  21. package/dist/cli/msgfmt-all.js +99 -0
  22. package/dist/cli/msgfmt-all.js.map +1 -0
  23. package/dist/cli/msgmerge-all.d.ts +1 -0
  24. package/dist/cli/msgmerge-all.js +85 -0
  25. package/dist/cli/msgmerge-all.js.map +1 -0
  26. package/dist/cli/xgettext-cli.d.ts +1 -0
  27. package/dist/cli/xgettext-cli.js +303 -0
  28. package/dist/cli/xgettext-cli.js.map +1 -0
  29. package/dist/install/install.d.ts +10 -0
  30. package/dist/install/install.js +157 -0
  31. package/dist/install/install.js.map +1 -0
  32. package/dist/msgfmt-all/msgfmt-all.d.ts +8 -0
  33. package/dist/msgfmt-all/msgfmt-all.js +142 -0
  34. package/dist/msgfmt-all/msgfmt-all.js.map +1 -0
  35. package/dist/msgmerge-all/msgmerge-all.d.ts +9 -0
  36. package/dist/msgmerge-all/msgmerge-all.js +157 -0
  37. package/dist/msgmerge-all/msgmerge-all.js.map +1 -0
  38. package/dist/package.d.ts +4 -0
  39. package/dist/package.js +17 -0
  40. package/dist/package.js.map +1 -0
  41. package/dist/parser/__snapshots__/javascript.spec.js.snap +56 -0
  42. package/dist/parser/__snapshots__/po.spec.js.snap +176 -0
  43. package/dist/parser/javascript.d.ts +4 -0
  44. package/dist/parser/javascript.js +47 -0
  45. package/dist/parser/javascript.js.map +1 -0
  46. package/dist/parser/javascript.spec.d.ts +1 -0
  47. package/dist/parser/javascript.spec.js +436 -0
  48. package/dist/parser/javascript.spec.js.map +1 -0
  49. package/dist/parser/parser.d.ts +45 -0
  50. package/dist/parser/parser.js +582 -0
  51. package/dist/parser/parser.js.map +1 -0
  52. package/dist/parser/po.d.ts +22 -0
  53. package/dist/parser/po.js +394 -0
  54. package/dist/parser/po.js.map +1 -0
  55. package/dist/parser/po.spec.d.ts +1 -0
  56. package/dist/parser/po.spec.js +296 -0
  57. package/dist/parser/po.spec.js.map +1 -0
  58. package/dist/parser/typescript.d.ts +4 -0
  59. package/dist/parser/typescript.js +47 -0
  60. package/dist/parser/typescript.js.map +1 -0
  61. package/dist/parser/typescript.spec.d.ts +1 -0
  62. package/dist/parser/typescript.spec.js +106 -0
  63. package/dist/parser/typescript.spec.js.map +1 -0
  64. package/dist/pot/__snapshots__/catalog.spec.js.snap +591 -0
  65. package/dist/pot/catalog.d.ts +26 -0
  66. package/dist/pot/catalog.js +210 -0
  67. package/dist/pot/catalog.js.map +1 -0
  68. package/dist/pot/catalog.spec.d.ts +1 -0
  69. package/dist/pot/catalog.spec.js +240 -0
  70. package/dist/pot/catalog.spec.js.map +1 -0
  71. package/dist/pot/entry.d.ts +35 -0
  72. package/dist/pot/entry.js +322 -0
  73. package/dist/pot/entry.js.map +1 -0
  74. package/dist/pot/entry.spec.d.ts +1 -0
  75. package/dist/pot/entry.spec.js +317 -0
  76. package/dist/pot/entry.spec.js.map +1 -0
  77. package/dist/pot/keyword.d.ts +17 -0
  78. package/dist/pot/keyword.js +181 -0
  79. package/dist/pot/keyword.js.map +1 -0
  80. package/dist/pot/keyword.spec.d.ts +1 -0
  81. package/dist/pot/keyword.spec.js +54 -0
  82. package/dist/pot/keyword.spec.js.map +1 -0
  83. package/dist/xgettext/__snapshots__/xgettext.spec.js.snap +462 -0
  84. package/dist/xgettext/file-resolver.d.ts +5 -0
  85. package/dist/xgettext/file-resolver.js +23 -0
  86. package/dist/xgettext/file-resolver.js.map +1 -0
  87. package/dist/xgettext/file-resolver.spec.d.ts +1 -0
  88. package/dist/xgettext/file-resolver.spec.js +22 -0
  89. package/dist/xgettext/file-resolver.spec.js.map +1 -0
  90. package/dist/xgettext/files-collector.d.ts +5 -0
  91. package/dist/xgettext/files-collector.js +41 -0
  92. package/dist/xgettext/files-collector.js.map +1 -0
  93. package/dist/xgettext/files-collector.spec.d.ts +1 -0
  94. package/dist/xgettext/files-collector.spec.js +78 -0
  95. package/dist/xgettext/files-collector.spec.js.map +1 -0
  96. package/dist/xgettext/xgettext.d.ts +16 -0
  97. package/dist/xgettext/xgettext.js +335 -0
  98. package/dist/xgettext/xgettext.js.map +1 -0
  99. package/dist/xgettext/xgettext.spec.d.ts +1 -0
  100. package/dist/xgettext/xgettext.spec.js +743 -0
  101. package/dist/xgettext/xgettext.spec.js.map +1 -0
  102. package/package.json +88 -0
@@ -0,0 +1,462 @@
1
+ // Jest Snapshot v1, https://goo.gl/fbAQLP
2
+
3
+ exports[`xgettext command-line options and arguments choice of input language option --language should accept the language typescript 1`] = `
4
+ "# SOME DESCRIPTIVE TITLE
5
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
6
+ # This file is distributed under the same license as the PACKAGE package.
7
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
8
+ #
9
+ #, fuzzy
10
+ msgid ""
11
+ msgstr ""
12
+ "Project-Id-Version: PACKAGE VERSION\\n"
13
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
14
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
15
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
16
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
17
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
18
+ "Language: \\n"
19
+ "MIME-Version: 1.0\\n"
20
+ "Content-Type: text/plain; charset=CHARSET\\n"
21
+ "Content-Transfer-Encoding: 8bit\\n"
22
+
23
+ #: hello-language-typescript.ts:1
24
+ msgid "Hello, world!"
25
+ msgstr ""
26
+ "
27
+ `;
28
+
29
+ exports[`xgettext command-line options and arguments input file location input file arguments should interpret "-" as stdin 1`] = `"option-output.pot"`;
30
+
31
+ exports[`xgettext command-line options and arguments language specific options --extract-all should extract all strings 1`] = `
32
+ "# SOME DESCRIPTIVE TITLE
33
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
34
+ # This file is distributed under the same license as the PACKAGE package.
35
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
36
+ #
37
+ #, fuzzy
38
+ msgid ""
39
+ msgstr ""
40
+ "Project-Id-Version: PACKAGE VERSION\\n"
41
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
42
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
43
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
44
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
45
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
46
+ "Language: \\n"
47
+ "MIME-Version: 1.0\\n"
48
+ "Content-Type: text/plain; charset=CHARSET\\n"
49
+ "Content-Transfer-Encoding: 8bit\\n"
50
+
51
+ #: extract-all.js:2
52
+ msgid "gettext function"
53
+ msgstr ""
54
+
55
+ #: extract-all.js:3
56
+ msgid "non-gettext-function"
57
+ msgstr ""
58
+ "
59
+ `;
60
+
61
+ exports[`xgettext command-line options and arguments language specific options --keyword should extract the selected keywords 1`] = `
62
+ "# SOME DESCRIPTIVE TITLE
63
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
64
+ # This file is distributed under the same license as the PACKAGE package.
65
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
66
+ #
67
+ #, fuzzy
68
+ msgid ""
69
+ msgstr ""
70
+ "Project-Id-Version: PACKAGE VERSION\\n"
71
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
72
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
73
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
74
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
75
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
76
+ "Language: \\n"
77
+ "MIME-Version: 1.0\\n"
78
+ "Content-Type: text/plain; charset=CHARSET\\n"
79
+ "Content-Transfer-Encoding: 8bit\\n"
80
+
81
+ #: keyword.js:3
82
+ msgid "catch"
83
+ msgstr ""
84
+
85
+ #: keyword.js:4
86
+ msgctxt "context"
87
+ msgid "one file"
88
+ msgid_plural "multiple files"
89
+ msgstr[0] ""
90
+ msgstr[1] ""
91
+ "
92
+ `;
93
+
94
+ exports[`xgettext command-line options and arguments operation mode add-all-comments should add all comments 1`] = `
95
+ "# SOME DESCRIPTIVE TITLE
96
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
97
+ # This file is distributed under the same license as the PACKAGE package.
98
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
99
+ #
100
+ #, fuzzy
101
+ msgid ""
102
+ msgstr ""
103
+ "Project-Id-Version: PACKAGE VERSION\\n"
104
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
105
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
106
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
107
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
108
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
109
+ "Language: \\n"
110
+ "MIME-Version: 1.0\\n"
111
+ "Content-Type: text/plain; charset=CHARSET\\n"
112
+ "Content-Transfer-Encoding: 8bit\\n"
113
+
114
+ #. TRANSLATORS: The abbreviated day of the week, not our star.
115
+ #: add-comments.js:3
116
+ msgid "Sun"
117
+ msgstr ""
118
+
119
+ #. TESTERS: This must be translated!
120
+ #: add-comments.js:6
121
+ msgid "Hello, world!"
122
+ msgstr ""
123
+
124
+ #. DEVELOPERS: Don't repeat yourself.
125
+ #: add-comments.js:9
126
+ msgid "Copy & Paste"
127
+ msgstr ""
128
+ "
129
+ `;
130
+
131
+ exports[`xgettext command-line options and arguments operation mode add-comments should add selected comments 1`] = `
132
+ "# SOME DESCRIPTIVE TITLE
133
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
134
+ # This file is distributed under the same license as the PACKAGE package.
135
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
136
+ #
137
+ #, fuzzy
138
+ msgid ""
139
+ msgstr ""
140
+ "Project-Id-Version: PACKAGE VERSION\\n"
141
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
142
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
143
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
144
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
145
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
146
+ "Language: \\n"
147
+ "MIME-Version: 1.0\\n"
148
+ "Content-Type: text/plain; charset=CHARSET\\n"
149
+ "Content-Transfer-Encoding: 8bit\\n"
150
+
151
+ #. TRANSLATORS: The abbreviated day of the week, not our star.
152
+ #: add-comments.js:3
153
+ msgid "Sun"
154
+ msgstr ""
155
+
156
+ #. TESTERS: This must be translated!
157
+ #: add-comments.js:6
158
+ msgid "Hello, world!"
159
+ msgstr ""
160
+
161
+ #: add-comments.js:9
162
+ msgid "Copy & Paste"
163
+ msgstr ""
164
+ "
165
+ `;
166
+
167
+ exports[`xgettext command-line options and arguments operation mode option --exclude-file should exclude entries from the reference pots 1`] = `
168
+ "# SOME DESCRIPTIVE TITLE
169
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
170
+ # This file is distributed under the same license as the PACKAGE package.
171
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
172
+ #
173
+ #, fuzzy
174
+ msgid ""
175
+ msgstr ""
176
+ "Project-Id-Version: PACKAGE VERSION\\n"
177
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
178
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
179
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
180
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
181
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
182
+ "Language: \\n"
183
+ "MIME-Version: 1.0\\n"
184
+ "Content-Type: text/plain; charset=CHARSET\\n"
185
+ "Content-Transfer-Encoding: 8bit\\n"
186
+
187
+ #: exclude-file1.js:4
188
+ msgid "catch me!"
189
+ msgstr ""
190
+ "
191
+ `;
192
+
193
+ exports[`xgettext command-line options and arguments operation mode option --join-existing should merge into the output file regardless of language 1`] = `
194
+ "# SOME DESCRIPTIVE TITLE
195
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
196
+ # This file is distributed under the same license as the PACKAGE package.
197
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
198
+ #
199
+ #, fuzzy
200
+ msgid ""
201
+ msgstr ""
202
+ "Project-Id-Version: PACKAGE VERSION\\n"
203
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
204
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
205
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
206
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
207
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
208
+ "Language: \\n"
209
+ "MIME-Version: 1.0\\n"
210
+ "Content-Type: text/plain; charset=CHARSET\\n"
211
+ "Content-Transfer-Encoding: 8bit\\n"
212
+
213
+ msgid "existing"
214
+ msgstr ""
215
+
216
+ #: join-existing1.js:1
217
+ msgid "new"
218
+ msgstr ""
219
+ "
220
+ `;
221
+
222
+ exports[`xgettext command-line options and arguments output details option --force-po should write empty catalogs with option --force-po 1`] = `
223
+ "# SOME DESCRIPTIVE TITLE
224
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
225
+ # This file is distributed under the same license as the PACKAGE package.
226
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
227
+ #
228
+ #, fuzzy
229
+ msgid ""
230
+ msgstr ""
231
+ "Project-Id-Version: PACKAGE VERSION\\n"
232
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
233
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
234
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
235
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
236
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
237
+ "Language: \\n"
238
+ "MIME-Version: 1.0\\n"
239
+ "Content-Type: text/plain; charset=CHARSET\\n"
240
+ "Content-Transfer-Encoding: 8bit\\n"
241
+ "
242
+ `;
243
+
244
+ exports[`xgettext command-line options and arguments output details option --width should honor the option --width 1`] = `
245
+ "# SOME DESCRIPTIVE TITLE
246
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
247
+ # This file is distributed under the same license as the PACKAGE package.
248
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
249
+ #
250
+ #, fuzzy
251
+ msgid ""
252
+ msgstr ""
253
+ "Project-Id-Version: "
254
+ "PACKAGE VERSION\\n"
255
+ "Report-Msgid-Bugs-To: "
256
+ "MSGID_BUGS_ADDRESS\\n"
257
+ "POT-Creation-Date: "
258
+ "2020-04-23 08:50+0300\\n"
259
+ "PO-Revision-Date: "
260
+ "YEAR-MO-DA HO:MI+ZONE\\n"
261
+ "Last-Translator: FULL "
262
+ "NAME <EMAIL@ADDRESS>\\n"
263
+ "Language-Team: LANGUAGE "
264
+ "<LL@li.org>\\n"
265
+ "Language: \\n"
266
+ "MIME-Version: 1.0\\n"
267
+ "Content-Type: "
268
+ "text/plain; "
269
+ "charset=CHARSET\\n"
270
+ "Content-Transfer-Encoding: "
271
+ "8bit\\n"
272
+
273
+ #: width.js:1
274
+ msgid ""
275
+ "For a very long time! "
276
+ "For a very long time!"
277
+ msgstr ""
278
+ "
279
+ `;
280
+
281
+ exports[`xgettext command-line options and arguments output file location option --output should write to stdout 1`] = `
282
+ [
283
+ [
284
+ "# SOME DESCRIPTIVE TITLE
285
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
286
+ # This file is distributed under the same license as the PACKAGE package.
287
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
288
+ #
289
+ #, fuzzy
290
+ msgid ""
291
+ msgstr ""
292
+ "Project-Id-Version: PACKAGE VERSION\\n"
293
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
294
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
295
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
296
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
297
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
298
+ "Language: \\n"
299
+ "MIME-Version: 1.0\\n"
300
+ "Content-Type: text/plain; charset=CHARSET\\n"
301
+ "Content-Transfer-Encoding: 8bit\\n"
302
+
303
+ #: option-output.js:1
304
+ msgid "Hello, world!"
305
+ msgstr ""
306
+ ",
307
+ ],
308
+ ]
309
+ `;
310
+
311
+ exports[`xgettext defaults should extract strings from javascript files 1`] = `
312
+ "# SOME DESCRIPTIVE TITLE
313
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
314
+ # This file is distributed under the same license as the PACKAGE package.
315
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
316
+ #
317
+ #, fuzzy
318
+ msgid ""
319
+ msgstr ""
320
+ "Project-Id-Version: PACKAGE VERSION\\n"
321
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
322
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
323
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
324
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
325
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
326
+ "Language: \\n"
327
+ "MIME-Version: 1.0\\n"
328
+ "Content-Type: text/plain; charset=CHARSET\\n"
329
+ "Content-Transfer-Encoding: 8bit\\n"
330
+
331
+ #: hello1.js:2
332
+ msgid "Hello, world!"
333
+ msgstr ""
334
+
335
+ #: goodbye.js:2
336
+ msgid "Goodbye, world!"
337
+ msgstr ""
338
+ "
339
+ `;
340
+
341
+ exports[`xgettext defaults should extract strings from typescript files 1`] = `
342
+ "# SOME DESCRIPTIVE TITLE
343
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
344
+ # This file is distributed under the same license as the PACKAGE package.
345
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
346
+ #
347
+ #, fuzzy
348
+ msgid ""
349
+ msgstr ""
350
+ "Project-Id-Version: PACKAGE VERSION\\n"
351
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
352
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
353
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
354
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
355
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
356
+ "Language: \\n"
357
+ "MIME-Version: 1.0\\n"
358
+ "Content-Type: text/plain; charset=CHARSET\\n"
359
+ "Content-Transfer-Encoding: 8bit\\n"
360
+
361
+ #: hello2.ts:2
362
+ msgid "Hello, world!"
363
+ msgstr ""
364
+
365
+ #: goodbye.ts:2
366
+ msgid "Goodbye, world!"
367
+ msgstr ""
368
+ "
369
+ `;
370
+
371
+ exports[`xgettext defaults should parse po files 1`] = `
372
+ "# SOME DESCRIPTIVE TITLE
373
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
374
+ # This file is distributed under the same license as the PACKAGE package.
375
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
376
+ #
377
+ # SOME DESCRIPTIVE TITLE
378
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
379
+ # This file is distributed under the same license as the PACKAGE package.
380
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
381
+ #
382
+ #, fuzzy
383
+ msgid ""
384
+ msgstr ""
385
+ "Project-Id-Version: PACKAGE VERSION\\n"
386
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
387
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
388
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
389
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
390
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
391
+ "Language: \\n"
392
+ "MIME-Version: 1.0\\n"
393
+ "Content-Type: text/plain; charset=CHARSET\\n"
394
+ "Content-Transfer-Encoding: 8bit\\n"
395
+
396
+ #: src/cli/getopt.ts:122
397
+ #, perl-brace-format
398
+ msgid "'{programName}': unrecognized option '--{option}'"
399
+ msgstr ""
400
+ "
401
+ `;
402
+
403
+ exports[`xgettext defaults should parse pot files 1`] = `
404
+ "# SOME DESCRIPTIVE TITLE
405
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
406
+ # This file is distributed under the same license as the PACKAGE package.
407
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
408
+ #
409
+ # SOME DESCRIPTIVE TITLE
410
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
411
+ # This file is distributed under the same license as the PACKAGE package.
412
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
413
+ #
414
+ #, fuzzy
415
+ msgid ""
416
+ msgstr ""
417
+ "Project-Id-Version: PACKAGE VERSION\\n"
418
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
419
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
420
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
421
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
422
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
423
+ "Language: \\n"
424
+ "MIME-Version: 1.0\\n"
425
+ "Content-Type: text/plain; charset=CHARSET\\n"
426
+ "Content-Transfer-Encoding: 8bit\\n"
427
+
428
+ #: src/cli/getopt.ts:122
429
+ #, perl-brace-format
430
+ msgid "'{programName}': unrecognized option '--{option}'"
431
+ msgstr ""
432
+ "
433
+ `;
434
+
435
+ exports[`xgettext encodings ascii should accept 8 bit characters with iso-8859-1 1`] = `
436
+ [
437
+ "messages.po",
438
+ "# SOME DESCRIPTIVE TITLE
439
+ # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
440
+ # This file is distributed under the same license as the PACKAGE package.
441
+ # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
442
+ #
443
+ #, fuzzy
444
+ msgid ""
445
+ msgstr ""
446
+ "Project-Id-Version: PACKAGE VERSION\\n"
447
+ "Report-Msgid-Bugs-To: MSGID_BUGS_ADDRESS\\n"
448
+ "POT-Creation-Date: 2020-04-23 08:50+0300\\n"
449
+ "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\\n"
450
+ "Last-Translator: FULL NAME <EMAIL@ADDRESS>\\n"
451
+ "Language-Team: LANGUAGE <LL@li.org>\\n"
452
+ "Language: \\n"
453
+ "MIME-Version: 1.0\\n"
454
+ "Content-Type: text/plain; charset=CHARSET\\n"
455
+ "Content-Transfer-Encoding: 8bit\\n"
456
+
457
+ #: hello-ascii.js:2
458
+ msgid "Hellö, wörld!"
459
+ msgstr ""
460
+ ",
461
+ ]
462
+ `;
@@ -0,0 +1,5 @@
1
+ export declare class FileResolver {
2
+ private readonly directories;
3
+ constructor(directories?: Array<string>);
4
+ resolve(filename: string): string;
5
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FileResolver = void 0;
4
+ var path_1 = require("path");
5
+ var fs_1 = require("fs");
6
+ var FileResolver = (function () {
7
+ function FileResolver(directories) {
8
+ if (directories === void 0) { directories = ['']; }
9
+ this.directories = directories;
10
+ }
11
+ FileResolver.prototype.resolve = function (filename) {
12
+ for (var i = 0; i < this.directories.length; ++i) {
13
+ var resolved = (0, path_1.join)(this.directories[i], filename);
14
+ if ((0, fs_1.existsSync)(resolved)) {
15
+ return resolved;
16
+ }
17
+ }
18
+ return null;
19
+ };
20
+ return FileResolver;
21
+ }());
22
+ exports.FileResolver = FileResolver;
23
+ //# sourceMappingURL=file-resolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-resolver.js","sourceRoot":"","sources":["../../src/xgettext/file-resolver.ts"],"names":[],"mappings":";;;AAAA,6BAA4B;AAC5B,yBAAgC;AAEhC;IACC,sBAA6B,WAAiC;QAAjC,4BAAA,EAAA,eAA8B,EAAE,CAAC;QAAjC,gBAAW,GAAX,WAAW,CAAsB;IAAG,CAAC;IAElE,8BAAO,GAAP,UAAQ,QAAgB;QACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;YAClD,IAAM,QAAQ,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YACrD,IAAI,IAAA,eAAU,EAAC,QAAQ,CAAC,EAAE,CAAC;gBAC1B,OAAO,QAAQ,CAAC;YACjB,CAAC;QACF,CAAC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IACF,mBAAC;AAAD,CAAC,AAbD,IAaC;AAbY,oCAAY"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var path_1 = require("path");
4
+ var file_resolver_1 = require("./file-resolver");
5
+ describe('file resolving', function () {
6
+ it('should default to the current directory', function () {
7
+ var resolver = new file_resolver_1.FileResolver();
8
+ var filename = 'package.json';
9
+ expect(resolver.resolve('package.json')).toEqual((0, path_1.join)('', filename));
10
+ });
11
+ it('should search one directory and fail', function () {
12
+ var filename = (0, path_1.basename)(__filename);
13
+ var resolver = new file_resolver_1.FileResolver([__filename]);
14
+ expect(resolver.resolve(filename)).toBeNull();
15
+ });
16
+ it('should search two directories and succeed', function () {
17
+ var filename = (0, path_1.basename)(__filename);
18
+ var resolver = new file_resolver_1.FileResolver([__filename, __dirname]);
19
+ expect(resolver.resolve(filename)).toEqual((0, path_1.join)(__dirname, filename));
20
+ });
21
+ });
22
+ //# sourceMappingURL=file-resolver.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-resolver.spec.js","sourceRoot":"","sources":["../../src/xgettext/file-resolver.spec.ts"],"names":[],"mappings":";;AAAA,6BAAsC;AACtC,iDAA+C;AAE/C,QAAQ,CAAC,gBAAgB,EAAE;IAI1B,EAAE,CAAC,yCAAyC,EAAE;QAC7C,IAAM,QAAQ,GAAG,IAAI,4BAAY,EAAE,CAAC;QACpC,IAAM,QAAQ,GAAG,cAAc,CAAC;QAEhC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,IAAA,WAAI,EAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE;QAC1C,IAAM,QAAQ,GAAG,IAAA,eAAQ,EAAC,UAAU,CAAC,CAAC;QACtC,IAAM,QAAQ,GAAG,IAAI,4BAAY,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;QAEhD,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE;QAC/C,IAAM,QAAQ,GAAG,IAAA,eAAQ,EAAC,UAAU,CAAC,CAAC;QACtC,IAAM,QAAQ,GAAG,IAAI,4BAAY,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;QAE3D,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAA,WAAI,EAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare class FilesCollector {
2
+ readonly filenames: Array<string>;
3
+ constructor(filesFrom: Array<string>, args: Array<string>);
4
+ private getFilesFromFile;
5
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FilesCollector = void 0;
4
+ var fs_1 = require("fs");
5
+ var runtime_1 = require("@esgettext/runtime");
6
+ var gtx = runtime_1.Textdomain.getInstance('tools');
7
+ var FilesCollector = (function () {
8
+ function FilesCollector(filesFrom, args) {
9
+ var _this = this;
10
+ if (typeof filesFrom === 'undefined' && args.length === 0) {
11
+ throw new Error(gtx._('no input file given'));
12
+ }
13
+ var filenames = new Array();
14
+ if (typeof filesFrom !== 'undefined') {
15
+ filesFrom.forEach(function (fromFile) {
16
+ _this.getFilesFromFile(fromFile).forEach(function (filename) {
17
+ filenames.push(filename);
18
+ });
19
+ });
20
+ }
21
+ args.forEach(function (filename) { return filenames.push(filename); });
22
+ this.filenames = Array.from(new Set(filenames));
23
+ }
24
+ FilesCollector.prototype.getFilesFromFile = function (filename) {
25
+ var content;
26
+ if ('-' === filename) {
27
+ content = process.stdin.read();
28
+ }
29
+ else {
30
+ content = (0, fs_1.readFileSync)(filename);
31
+ }
32
+ return content
33
+ .toString()
34
+ .split('\n')
35
+ .map(function (line) { return line.replace(/#.*/, '').trim(); })
36
+ .filter(function (line) { return line.length; });
37
+ };
38
+ return FilesCollector;
39
+ }());
40
+ exports.FilesCollector = FilesCollector;
41
+ //# sourceMappingURL=files-collector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files-collector.js","sourceRoot":"","sources":["../../src/xgettext/files-collector.ts"],"names":[],"mappings":";;;AAAA,yBAAkC;AAClC,8CAAgD;AAEhD,IAAM,GAAG,GAAG,oBAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAE5C;IAGC,wBAAY,SAAwB,EAAE,IAAmB;QAAzD,iBAkBC;QAjBA,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC/C,CAAC;QAED,IAAM,SAAS,GAAG,IAAI,KAAK,EAAU,CAAC;QACtC,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE,CAAC;YACtC,SAAS,CAAC,OAAO,CAAC,UAAA,QAAQ;gBACzB,KAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAA,QAAQ;oBAC/C,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC1B,CAAC,CAAC,CAAC;YACJ,CAAC,CAAC,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,UAAA,QAAQ,IAAI,OAAA,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAxB,CAAwB,CAAC,CAAC;QAGnD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IACjD,CAAC;IAEO,yCAAgB,GAAxB,UAAyB,QAAgB;QACxC,IAAI,OAAe,CAAC;QACpB,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;YACtB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAChC,CAAC;aAAM,CAAC;YACP,OAAO,GAAG,IAAA,iBAAY,EAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QACD,OAAO,OAAO;aACZ,QAAQ,EAAE;aACV,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,EAA9B,CAA8B,CAAC;aAC3C,MAAM,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,MAAM,EAAX,CAAW,CAAC,CAAC;IAC/B,CAAC;IACF,qBAAC;AAAD,CAAC,AApCD,IAoCC;AApCY,wCAAc"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,78 @@
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
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ var fs = __importStar(require("fs"));
27
+ var files_collector_1 = require("./files-collector");
28
+ jest.mock('fs');
29
+ var reader = fs.readFileSync;
30
+ describe('File collector', function () {
31
+ describe('files-from', function () {
32
+ afterEach(function () {
33
+ reader.mockClear();
34
+ });
35
+ it('should read files from a file and ignore comments and empty lines', function () {
36
+ var file1 = "foo\nbar\nbaz\n";
37
+ var file2 = "\n# Ignore comment.\nHuey # The first.\n\nDewey # The second.\n\nLouie # The third.\n";
38
+ reader.mockReturnValueOnce(file1).mockReturnValueOnce(file2);
39
+ var collector = new files_collector_1.FilesCollector(['file1', 'file2'], []);
40
+ expect(collector.filenames).toEqual([
41
+ 'foo',
42
+ 'bar',
43
+ 'baz',
44
+ 'Huey',
45
+ 'Dewey',
46
+ 'Louie',
47
+ ]);
48
+ });
49
+ it('should take files from command-line arguments', function () {
50
+ var collector = new files_collector_1.FilesCollector([], ['file1', 'file2']);
51
+ expect(collector.filenames).toEqual(['file1', 'file2']);
52
+ });
53
+ it('should mix files in the right order', function () {
54
+ var potfiles = "\nfoo\nbar\nbaz\n";
55
+ reader.mockReturnValueOnce(potfiles);
56
+ var collector = new files_collector_1.FilesCollector(['POTFILES'], ['hubba', 'bubba']);
57
+ expect(collector.filenames).toEqual([
58
+ 'foo',
59
+ 'bar',
60
+ 'baz',
61
+ 'hubba',
62
+ 'bubba',
63
+ ]);
64
+ });
65
+ it('should make input files unique', function () {
66
+ var potfiles = "\nfoo\nbar\nbaz\n";
67
+ reader.mockReturnValueOnce(potfiles);
68
+ var collector = new files_collector_1.FilesCollector(['POTFILES'], ['foo', 'bar', 'bazoo']);
69
+ expect(collector.filenames).toEqual(['foo', 'bar', 'baz', 'bazoo']);
70
+ });
71
+ });
72
+ describe('errors', function () {
73
+ it('should throw an exception if no input files given', function () {
74
+ expect(function () { return new files_collector_1.FilesCollector(undefined, []); }).toThrow(new Error('no input file given'));
75
+ });
76
+ });
77
+ });
78
+ //# sourceMappingURL=files-collector.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"files-collector.spec.js","sourceRoot":"","sources":["../../src/xgettext/files-collector.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAyB;AACzB,qDAAmD;AAEnD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEhB,IAAM,MAAM,GAAG,EAAE,CAAC,YAAyB,CAAC;AAE5C,QAAQ,CAAC,gBAAgB,EAAE;IAC1B,QAAQ,CAAC,YAAY,EAAE;QACtB,SAAS,CAAC;YACT,MAAM,CAAC,SAAS,EAAE,CAAC;QACpB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mEAAmE,EAAE;YACvE,IAAM,KAAK,GAAG,iBAGhB,CAAC;YACC,IAAM,KAAK,GAAG,uFAOhB,CAAC;YAEC,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC7D,IAAM,SAAS,GAAG,IAAI,gCAAc,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7D,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC;gBACnC,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,MAAM;gBACN,OAAO;gBACP,OAAO;aACP,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+CAA+C,EAAE;YACnD,IAAM,SAAS,GAAG,IAAI,gCAAc,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YAC7D,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE;YACzC,IAAM,QAAQ,GAAG,mBAInB,CAAC;YACC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACrC,IAAM,SAAS,GAAG,IAAI,gCAAc,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YACvE,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC;gBACnC,KAAK;gBACL,KAAK;gBACL,KAAK;gBACL,OAAO;gBACP,OAAO;aACP,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gCAAgC,EAAE;YACpC,IAAM,QAAQ,GAAG,mBAInB,CAAC;YACC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YACrC,IAAM,SAAS,GAAG,IAAI,gCAAc,CACnC,CAAC,UAAU,CAAC,EACZ,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CACvB,CAAC;YACF,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,QAAQ,EAAE;QAClB,EAAE,CAAC,mDAAmD,EAAE;YACvD,MAAM,CAAC,cAAM,OAAA,IAAI,gCAAc,CAAC,SAAS,EAAE,EAAE,CAAC,EAAjC,CAAiC,CAAC,CAAC,OAAO,CACtD,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAChC,CAAC;QACH,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { Options } from '../cli/getopt';
2
+ export declare class XGettext {
3
+ private readonly options;
4
+ private readonly catalog;
5
+ private exclude;
6
+ constructor(options: Options, date?: string);
7
+ run(): number;
8
+ private parse;
9
+ private readFile;
10
+ private getParserByFilename;
11
+ private getParserByLanguage;
12
+ private warn;
13
+ private output;
14
+ private fillExclusionCatalog;
15
+ private getParserOptions;
16
+ }