@keymanapp/kmc 18.0.10-alpha → 18.0.12-alpha

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 (70) hide show
  1. package/build/src/commands/analyze.d.ts.map +1 -1
  2. package/build/src/commands/analyze.js +106 -107
  3. package/build/src/commands/analyze.js.map +1 -1
  4. package/build/src/commands/build.js +166 -168
  5. package/build/src/commands/build.js.map +1 -1
  6. package/build/src/commands/buildClasses/BuildActivity.js +31 -33
  7. package/build/src/commands/buildClasses/BuildActivity.js.map +1 -1
  8. package/build/src/commands/buildClasses/BuildKeyboardInfo.js +47 -49
  9. package/build/src/commands/buildClasses/BuildKeyboardInfo.js.map +1 -1
  10. package/build/src/commands/buildClasses/BuildKmnKeyboard.js +35 -37
  11. package/build/src/commands/buildClasses/BuildKmnKeyboard.js.map +1 -1
  12. package/build/src/commands/buildClasses/BuildLdmlKeyboard.js +19 -21
  13. package/build/src/commands/buildClasses/BuildLdmlKeyboard.js.map +1 -1
  14. package/build/src/commands/buildClasses/BuildModel.js +13 -15
  15. package/build/src/commands/buildClasses/BuildModel.js.map +1 -1
  16. package/build/src/commands/buildClasses/BuildModelInfo.js +73 -75
  17. package/build/src/commands/buildClasses/BuildModelInfo.js.map +1 -1
  18. package/build/src/commands/buildClasses/BuildPackage.js +13 -15
  19. package/build/src/commands/buildClasses/BuildPackage.js.map +1 -1
  20. package/build/src/commands/buildClasses/BuildProject.js +116 -118
  21. package/build/src/commands/buildClasses/BuildProject.js.map +1 -1
  22. package/build/src/commands/buildClasses/buildActivities.js +21 -23
  23. package/build/src/commands/buildClasses/buildActivities.js.map +1 -1
  24. package/build/src/commands/buildTestData/index.js +39 -41
  25. package/build/src/commands/buildTestData/index.js.map +1 -1
  26. package/build/src/commands/buildWindowsPackageInstaller/index.d.ts +1 -1
  27. package/build/src/commands/buildWindowsPackageInstaller/index.d.ts.map +1 -1
  28. package/build/src/commands/buildWindowsPackageInstaller/index.js +43 -45
  29. package/build/src/commands/buildWindowsPackageInstaller/index.js.map +1 -1
  30. package/build/src/commands/messageCommand.js +237 -239
  31. package/build/src/commands/messageCommand.js.map +1 -1
  32. package/build/src/kmc.js +57 -58
  33. package/build/src/kmc.js.map +1 -1
  34. package/build/src/kmlmc.js +57 -59
  35. package/build/src/kmlmc.js.map +1 -1
  36. package/build/src/kmlmp.js +46 -48
  37. package/build/src/kmlmp.js.map +1 -1
  38. package/build/src/messages/infrastructureMessages.js +75 -77
  39. package/build/src/messages/infrastructureMessages.js.map +1 -1
  40. package/build/src/messages/messageNamespaces.js +39 -41
  41. package/build/src/messages/messageNamespaces.js.map +1 -1
  42. package/build/src/util/NodeCompilerCallbacks.js +221 -223
  43. package/build/src/util/NodeCompilerCallbacks.js.map +1 -1
  44. package/build/src/util/TestKeymanSentry.d.ts +3 -2
  45. package/build/src/util/TestKeymanSentry.d.ts.map +1 -1
  46. package/build/src/util/TestKeymanSentry.js +51 -53
  47. package/build/src/util/TestKeymanSentry.js.map +1 -1
  48. package/build/src/util/baseOptions.js +24 -26
  49. package/build/src/util/baseOptions.js.map +1 -1
  50. package/build/src/util/calculateSourcePath.js +18 -20
  51. package/build/src/util/calculateSourcePath.js.map +1 -1
  52. package/build/src/util/extendedCompilerOptions.js +123 -125
  53. package/build/src/util/extendedCompilerOptions.js.map +1 -1
  54. package/build/src/util/fileLists.js +46 -48
  55. package/build/src/util/fileLists.js.map +1 -1
  56. package/build/src/util/getDeveloperBinPath.js +36 -38
  57. package/build/src/util/getDeveloperBinPath.js.map +1 -1
  58. package/build/src/util/getLastGitCommitDate.js +44 -46
  59. package/build/src/util/getLastGitCommitDate.js.map +1 -1
  60. package/build/src/util/kmcSentryOptions.d.ts +8 -0
  61. package/build/src/util/kmcSentryOptions.d.ts.map +1 -0
  62. package/build/src/util/kmcSentryOptions.js +20 -0
  63. package/build/src/util/kmcSentryOptions.js.map +1 -0
  64. package/build/src/util/projectLoader.js +51 -53
  65. package/build/src/util/projectLoader.js.map +1 -1
  66. package/build/src/util/projectRunner.js +27 -29
  67. package/build/src/util/projectRunner.js.map +1 -1
  68. package/build/src/util/sysexits.js +7 -9
  69. package/build/src/util/sysexits.js.map +1 -1
  70. package/package.json +12 -12
@@ -1,239 +1,237 @@
1
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},n=(new Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="3df1334a-ad47-5a44-b77f-c968ec959a49")}catch(e){}}();
2
- import * as fs from 'fs';
3
- import * as path from 'path';
4
- import { CompilerError } from '@keymanapp/common-types';
5
- import { Option } from 'commander';
6
- import { messageNamespaceKeys, messageSources } from '../messages/messageNamespaces.js';
7
- import { NodeCompilerCallbacks } from '../util/NodeCompilerCallbacks.js';
8
- import { exitProcess } from '../util/sysexits.js';
9
- import { InfrastructureMessages } from '../messages/infrastructureMessages.js';
10
- import { findMessageDetails } from '../util/extendedCompilerOptions.js';
11
- import { escapeMarkdownChar, KeymanUrls } from '@keymanapp/developer-utils';
12
- ;
13
- export function declareMessage(program) {
14
- program
15
- .command('message [messages...]')
16
- .description(`Describe one or more compiler messages. Note: Markdown format is always written to files on disk.`)
17
- .addOption(new Option('-f, --format <format>', 'Output format').choices(['text', 'markdown', 'json']).default('text'))
18
- .option('-o, --out-path <out-path>', 'Output path for Markdown files; output filename for text and json formats')
19
- .option('-a, --all-messages', 'Emit descriptions for all messages (text, json)')
20
- .action(messageCommand);
21
- }
22
- async function messageCommand(messages, _options, commander) {
23
- const commanderOptions = commander.optsWithGlobals();
24
- const options = initialize(commanderOptions);
25
- if (!options) {
26
- await exitProcess(1);
27
- }
28
- const callbacks = new NodeCompilerCallbacks(options);
29
- let result = false;
30
- if (options.format == 'markdown') {
31
- result = messageCommandMarkdown(messages, options, callbacks);
32
- }
33
- else { // json or text format
34
- if (messages.length == 0 && !options.allMessages) {
35
- console.error('Must specify at least one message code or -a for all messages');
36
- callbacks.reportMessage(InfrastructureMessages.Error_MustSpecifyMessageCode());
37
- await exitProcess(1);
38
- }
39
- const messageDetails = messages.length
40
- ? messages.map(message => translateMessageInputToCode(message, callbacks))
41
- : allMessageDetails();
42
- if (callbacks.messageCount > 0) {
43
- await exitProcess(1);
44
- }
45
- let text = null;
46
- if (options.format == 'json') {
47
- const data = getMessagesAsArrayForJson(messageDetails);
48
- if (data) {
49
- text = JSON.stringify(data, null, 2);
50
- }
51
- }
52
- else {
53
- text = getMessagesAsText(messageDetails);
54
- }
55
- result = text != null;
56
- if (result) {
57
- if (options.outPath) {
58
- fs.writeFileSync(options.outPath, text, 'utf-8');
59
- }
60
- else {
61
- process.stdout.write(text);
62
- }
63
- }
64
- }
65
- if (!result) {
66
- await exitProcess(1);
67
- }
68
- }
69
- // We have a redirect pattern for kmn.sh/km<#####> to
70
- // the corresponding compiler message reference document in
71
- // help.keyman.com/developer/latest-version/reference/errors/km<#####>
72
- const helpUrl = (code) => KeymanUrls.COMPILER_ERROR_CODE(CompilerError.formatCode(code).toLowerCase());
73
- const getModuleName = (ms) => `${ms.module}.${ms.class.name}`;
74
- function translateMessageInputToCode(message, callbacks) {
75
- const pattern = /^(KM)?([0-9a-f]+)$/i;
76
- const result = message.match(pattern);
77
- if (!result) {
78
- callbacks.reportMessage(InfrastructureMessages.Error_UnrecognizedMessageCode({ message }));
79
- return null;
80
- }
81
- const code = Number.parseInt(result[2], 16);
82
- return findMessageDetails(code, callbacks);
83
- }
84
- function initialize(options) {
85
- // We don't want to rename command line options to match the precise
86
- // properties that we have in CompilerOptions, but nor do we want to rename
87
- // CompilerOptions properties...
88
- return {
89
- // CompilerBaseOptions
90
- logLevel: options.logLevel,
91
- logFormat: options.logFormat,
92
- color: options.color,
93
- // MessageOptions
94
- format: options.format ?? 'text',
95
- outPath: options.outPath
96
- };
97
- }
98
- const getMessageIdentifiersSorted = (cls) => Object.keys(cls)
99
- .filter(id => typeof cls[id] == 'number')
100
- .sort((a, b) => CompilerError.error(cls[a]) - CompilerError.error(cls[b]));
101
- function allMessageDetails() {
102
- let result = [];
103
- messageNamespaceKeys.forEach((namespace) => {
104
- const ms = messageSources[namespace];
105
- const ids = getMessageIdentifiersSorted(ms.class);
106
- for (const id of ids) {
107
- const code = ms.class[id];
108
- if (typeof code != 'number') {
109
- continue;
110
- }
111
- result.push({
112
- code,
113
- id,
114
- class: ms.class,
115
- module: ms.module
116
- });
117
- }
118
- });
119
- return result;
120
- }
121
- const toTitleCase = (s) => s.substring(0, 1).toUpperCase() + s.substring(1).toLowerCase();
122
- function getMessageDetail(cls, id, escapeMarkdown) {
123
- const o = /^(INFO|HINT|WARN|ERROR|FATAL)_([A-Za-z0-9_]+)$/.exec(id);
124
- if (!o) {
125
- throw new Error(`Unexpected compiler message ${id}, does not match message error format`);
126
- }
127
- const f = toTitleCase(o[1]) + '_' + o[2];
128
- const event = cls[f]?.({} /* ignore arguments*/);
129
- if (!event) {
130
- throw new Error(`Call to ${cls.name}.${f} returned null`);
131
- }
132
- event.detail = (event.detail ?? '').replace(/^[ ]+/gm, ''); // TODO(lowpri): dedent may be too naive?
133
- event.message = event.message ?? '';
134
- event.message = event?.exceptionVar
135
- ? 'This is an internal error; the message will vary'
136
- : (escapeMarkdown ? `${escapeMarkdownChar(event.message, false)}` : event.message);
137
- return event;
138
- }
139
- /*---------------------------------------------------------------------------
140
- * Get messages in text format
141
- *---------------------------------------------------------------------------*/
142
- function getMessagesAsText(messages) {
143
- const result = messages.reduce((prev, message) => {
144
- return prev + '\n' + formatMessageAsText(getModuleName({ class: message.class, module: message.module }), message.class, message.code, message.id);
145
- }, '');
146
- return result;
147
- }
148
- function formatMessageAsText(moduleName, cls, code, id) {
149
- const message = getMessageDetail(cls, id, false);
150
- return `${id}
151
- * Code: ${CompilerError.formatCode(code)}
152
- * Module: ${moduleName}
153
- * Message: ${message.message}
154
- * Reference: ${helpUrl(code)}
155
-
156
- ${message.detail}
157
- `;
158
- }
159
- /*---------------------------------------------------------------------------
160
- * Get messages as array of objects, for export to JSON
161
- *---------------------------------------------------------------------------*/
162
- function getMessagesAsArrayForJson(messages) {
163
- return messages.map(message => ({
164
- code: CompilerError.formatCode(message.code),
165
- id: message.id,
166
- class: message.class.name,
167
- module: message.module,
168
- detail: (() => getMessageDetail(message.class, message.id, false).detail)()
169
- }));
170
- }
171
- /*---------------------------------------------------------------------------
172
- * Export as Markdown
173
- *---------------------------------------------------------------------------*/
174
- function messageCommandMarkdown(messages, options, callbacks) {
175
- if (messages.length) {
176
- callbacks.reportMessage(InfrastructureMessages.Error_MessagesCannotBeFilteredForMarkdownFormat());
177
- return false;
178
- }
179
- if (!options.outPath) {
180
- callbacks.reportMessage(InfrastructureMessages.Error_OutputPathMustBeSpecifiedForMarkdownFormat());
181
- return false;
182
- }
183
- if (!fs.existsSync(options.outPath) || !fs.statSync(options.outPath)?.isDirectory()) {
184
- callbacks.reportMessage(InfrastructureMessages.Error_OutputPathMustExistAndBeADirectory({ outPath: options.outPath }));
185
- return false;
186
- }
187
- exportAllMessagesAsMarkdown(options.outPath);
188
- return true;
189
- }
190
- function exportAllMessagesAsMarkdown(outPath) {
191
- let index = `---
192
- title: Compiler Messages Reference
193
- ---
194
-
195
- `;
196
- messageNamespaceKeys.forEach((namespace) => {
197
- const ms = messageSources[namespace];
198
- const moduleName = getModuleName(ms);
199
- index += `* [${moduleName}](${moduleName.toLowerCase()})\n`;
200
- exportModuleMessagesAsMarkdown(moduleName, ms, outPath);
201
- });
202
- fs.writeFileSync(path.join(outPath, 'index.md'), index, 'utf-8');
203
- }
204
- function exportModuleMessagesAsMarkdown(moduleName, ms, outPath) {
205
- const cls = ms.class;
206
- let index = `---
207
- title: Compiler Messages Reference for @keymanapp/${ms.module}
208
- ---
209
-
210
- Code | Identifier | Message
211
- ------|------------|---------
212
- `;
213
- const ids = getMessageIdentifiersSorted(cls);
214
- for (const id of ids) {
215
- const code = cls[id];
216
- const filename = CompilerError.formatCode(code).toLowerCase();
217
- const message = getMessageDetail(cls, id, true);
218
- const content = formatMessageAsMarkdown(moduleName, id, message);
219
- index += `[${CompilerError.formatCode(code)}](${filename}) | \`${id}\` | ${message.message}\n`;
220
- fs.writeFileSync(path.join(outPath, filename + '.md'), content, 'utf-8');
221
- }
222
- fs.writeFileSync(path.join(outPath, moduleName.toLowerCase() + '.md'), index, 'utf-8');
223
- }
224
- function formatMessageAsMarkdown(moduleName, id, message) {
225
- return `---
226
- title: ${CompilerError.formatCode(message.code)}: ${id}
227
- ---
228
-
229
- | | |
230
- |------------|---------- |
231
- | Message | ${message.message} |
232
- | Module | [${moduleName}](${moduleName.toLowerCase()}) |
233
- | Identifier | \`${id}\` |
234
-
235
- ${message.detail}
236
- `;
237
- }
238
- //# debugId=3df1334a-ad47-5a44-b77f-c968ec959a49
239
- //# sourceMappingURL=messageCommand.js.map
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ import { CompilerError } from '@keymanapp/common-types';
4
+ import { Option } from 'commander';
5
+ import { messageNamespaceKeys, messageSources } from '../messages/messageNamespaces.js';
6
+ import { NodeCompilerCallbacks } from '../util/NodeCompilerCallbacks.js';
7
+ import { exitProcess } from '../util/sysexits.js';
8
+ import { InfrastructureMessages } from '../messages/infrastructureMessages.js';
9
+ import { findMessageDetails } from '../util/extendedCompilerOptions.js';
10
+ import { escapeMarkdownChar, KeymanUrls } from '@keymanapp/developer-utils';
11
+ ;
12
+ export function declareMessage(program) {
13
+ program
14
+ .command('message [messages...]')
15
+ .description(`Describe one or more compiler messages. Note: Markdown format is always written to files on disk.`)
16
+ .addOption(new Option('-f, --format <format>', 'Output format').choices(['text', 'markdown', 'json']).default('text'))
17
+ .option('-o, --out-path <out-path>', 'Output path for Markdown files; output filename for text and json formats')
18
+ .option('-a, --all-messages', 'Emit descriptions for all messages (text, json)')
19
+ .action(messageCommand);
20
+ }
21
+ async function messageCommand(messages, _options, commander) {
22
+ const commanderOptions = commander.optsWithGlobals();
23
+ const options = initialize(commanderOptions);
24
+ if (!options) {
25
+ await exitProcess(1);
26
+ }
27
+ const callbacks = new NodeCompilerCallbacks(options);
28
+ let result = false;
29
+ if (options.format == 'markdown') {
30
+ result = messageCommandMarkdown(messages, options, callbacks);
31
+ }
32
+ else { // json or text format
33
+ if (messages.length == 0 && !options.allMessages) {
34
+ console.error('Must specify at least one message code or -a for all messages');
35
+ callbacks.reportMessage(InfrastructureMessages.Error_MustSpecifyMessageCode());
36
+ await exitProcess(1);
37
+ }
38
+ const messageDetails = messages.length
39
+ ? messages.map(message => translateMessageInputToCode(message, callbacks))
40
+ : allMessageDetails();
41
+ if (callbacks.messageCount > 0) {
42
+ await exitProcess(1);
43
+ }
44
+ let text = null;
45
+ if (options.format == 'json') {
46
+ const data = getMessagesAsArrayForJson(messageDetails);
47
+ if (data) {
48
+ text = JSON.stringify(data, null, 2);
49
+ }
50
+ }
51
+ else {
52
+ text = getMessagesAsText(messageDetails);
53
+ }
54
+ result = text != null;
55
+ if (result) {
56
+ if (options.outPath) {
57
+ fs.writeFileSync(options.outPath, text, 'utf-8');
58
+ }
59
+ else {
60
+ process.stdout.write(text);
61
+ }
62
+ }
63
+ }
64
+ if (!result) {
65
+ await exitProcess(1);
66
+ }
67
+ }
68
+ // We have a redirect pattern for kmn.sh/km<#####> to
69
+ // the corresponding compiler message reference document in
70
+ // help.keyman.com/developer/latest-version/reference/errors/km<#####>
71
+ const helpUrl = (code) => KeymanUrls.COMPILER_ERROR_CODE(CompilerError.formatCode(code).toLowerCase());
72
+ const getModuleName = (ms) => `${ms.module}.${ms.class.name}`;
73
+ function translateMessageInputToCode(message, callbacks) {
74
+ const pattern = /^(KM)?([0-9a-f]+)$/i;
75
+ const result = message.match(pattern);
76
+ if (!result) {
77
+ callbacks.reportMessage(InfrastructureMessages.Error_UnrecognizedMessageCode({ message }));
78
+ return null;
79
+ }
80
+ const code = Number.parseInt(result[2], 16);
81
+ return findMessageDetails(code, callbacks);
82
+ }
83
+ function initialize(options) {
84
+ // We don't want to rename command line options to match the precise
85
+ // properties that we have in CompilerOptions, but nor do we want to rename
86
+ // CompilerOptions properties...
87
+ return {
88
+ // CompilerBaseOptions
89
+ logLevel: options.logLevel,
90
+ logFormat: options.logFormat,
91
+ color: options.color,
92
+ // MessageOptions
93
+ format: options.format ?? 'text',
94
+ outPath: options.outPath
95
+ };
96
+ }
97
+ const getMessageIdentifiersSorted = (cls) => Object.keys(cls)
98
+ .filter(id => typeof cls[id] == 'number')
99
+ .sort((a, b) => CompilerError.error(cls[a]) - CompilerError.error(cls[b]));
100
+ function allMessageDetails() {
101
+ let result = [];
102
+ messageNamespaceKeys.forEach((namespace) => {
103
+ const ms = messageSources[namespace];
104
+ const ids = getMessageIdentifiersSorted(ms.class);
105
+ for (const id of ids) {
106
+ const code = ms.class[id];
107
+ if (typeof code != 'number') {
108
+ continue;
109
+ }
110
+ result.push({
111
+ code,
112
+ id,
113
+ class: ms.class,
114
+ module: ms.module
115
+ });
116
+ }
117
+ });
118
+ return result;
119
+ }
120
+ const toTitleCase = (s) => s.substring(0, 1).toUpperCase() + s.substring(1).toLowerCase();
121
+ function getMessageDetail(cls, id, escapeMarkdown) {
122
+ const o = /^(INFO|HINT|WARN|ERROR|FATAL)_([A-Za-z0-9_]+)$/.exec(id);
123
+ if (!o) {
124
+ throw new Error(`Unexpected compiler message ${id}, does not match message error format`);
125
+ }
126
+ const f = toTitleCase(o[1]) + '_' + o[2];
127
+ const event = cls[f]?.({} /* ignore arguments*/);
128
+ if (!event) {
129
+ throw new Error(`Call to ${cls.name}.${f} returned null`);
130
+ }
131
+ event.detail = (event.detail ?? '').replace(/^[ ]+/gm, ''); // TODO(lowpri): dedent may be too naive?
132
+ event.message = event.message ?? '';
133
+ event.message = event?.exceptionVar
134
+ ? 'This is an internal error; the message will vary'
135
+ : (escapeMarkdown ? `${escapeMarkdownChar(event.message, false)}` : event.message);
136
+ return event;
137
+ }
138
+ /*---------------------------------------------------------------------------
139
+ * Get messages in text format
140
+ *---------------------------------------------------------------------------*/
141
+ function getMessagesAsText(messages) {
142
+ const result = messages.reduce((prev, message) => {
143
+ return prev + '\n' + formatMessageAsText(getModuleName({ class: message.class, module: message.module }), message.class, message.code, message.id);
144
+ }, '');
145
+ return result;
146
+ }
147
+ function formatMessageAsText(moduleName, cls, code, id) {
148
+ const message = getMessageDetail(cls, id, false);
149
+ return `${id}
150
+ * Code: ${CompilerError.formatCode(code)}
151
+ * Module: ${moduleName}
152
+ * Message: ${message.message}
153
+ * Reference: ${helpUrl(code)}
154
+
155
+ ${message.detail}
156
+ `;
157
+ }
158
+ /*---------------------------------------------------------------------------
159
+ * Get messages as array of objects, for export to JSON
160
+ *---------------------------------------------------------------------------*/
161
+ function getMessagesAsArrayForJson(messages) {
162
+ return messages.map(message => ({
163
+ code: CompilerError.formatCode(message.code),
164
+ id: message.id,
165
+ class: message.class.name,
166
+ module: message.module,
167
+ detail: (() => getMessageDetail(message.class, message.id, false).detail)()
168
+ }));
169
+ }
170
+ /*---------------------------------------------------------------------------
171
+ * Export as Markdown
172
+ *---------------------------------------------------------------------------*/
173
+ function messageCommandMarkdown(messages, options, callbacks) {
174
+ if (messages.length) {
175
+ callbacks.reportMessage(InfrastructureMessages.Error_MessagesCannotBeFilteredForMarkdownFormat());
176
+ return false;
177
+ }
178
+ if (!options.outPath) {
179
+ callbacks.reportMessage(InfrastructureMessages.Error_OutputPathMustBeSpecifiedForMarkdownFormat());
180
+ return false;
181
+ }
182
+ if (!fs.existsSync(options.outPath) || !fs.statSync(options.outPath)?.isDirectory()) {
183
+ callbacks.reportMessage(InfrastructureMessages.Error_OutputPathMustExistAndBeADirectory({ outPath: options.outPath }));
184
+ return false;
185
+ }
186
+ exportAllMessagesAsMarkdown(options.outPath);
187
+ return true;
188
+ }
189
+ function exportAllMessagesAsMarkdown(outPath) {
190
+ let index = `---
191
+ title: Compiler Messages Reference
192
+ ---
193
+
194
+ `;
195
+ messageNamespaceKeys.forEach((namespace) => {
196
+ const ms = messageSources[namespace];
197
+ const moduleName = getModuleName(ms);
198
+ index += `* [${moduleName}](${moduleName.toLowerCase()})\n`;
199
+ exportModuleMessagesAsMarkdown(moduleName, ms, outPath);
200
+ });
201
+ fs.writeFileSync(path.join(outPath, 'index.md'), index, 'utf-8');
202
+ }
203
+ function exportModuleMessagesAsMarkdown(moduleName, ms, outPath) {
204
+ const cls = ms.class;
205
+ let index = `---
206
+ title: Compiler Messages Reference for @keymanapp/${ms.module}
207
+ ---
208
+
209
+ Code | Identifier | Message
210
+ ------|------------|---------
211
+ `;
212
+ const ids = getMessageIdentifiersSorted(cls);
213
+ for (const id of ids) {
214
+ const code = cls[id];
215
+ const filename = CompilerError.formatCode(code).toLowerCase();
216
+ const message = getMessageDetail(cls, id, true);
217
+ const content = formatMessageAsMarkdown(moduleName, id, message);
218
+ index += `[${CompilerError.formatCode(code)}](${filename}) | \`${id}\` | ${message.message}\n`;
219
+ fs.writeFileSync(path.join(outPath, filename + '.md'), content, 'utf-8');
220
+ }
221
+ fs.writeFileSync(path.join(outPath, moduleName.toLowerCase() + '.md'), index, 'utf-8');
222
+ }
223
+ function formatMessageAsMarkdown(moduleName, id, message) {
224
+ return `---
225
+ title: ${CompilerError.formatCode(message.code)}: ${id}
226
+ ---
227
+
228
+ | | |
229
+ |------------|---------- |
230
+ | Message | ${message.message} |
231
+ | Module | [${moduleName}](${moduleName.toLowerCase()}) |
232
+ | Identifier | \`${id}\` |
233
+
234
+ ${message.detail}
235
+ `;
236
+ }
237
+ //# sourceMappingURL=messageCommand.js.map
@@ -1 +1 @@
1
- {"debug_id":"3df1334a-ad47-5a44-b77f-c968ec959a49","file":"messageCommand.js","mappings":"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","names":[],"sourceRoot":"","sources":["../../../src/commands/messageCommand.ts"],"version":3}
1
+ {"version":3,"file":"messageCommand.js","sourceRoot":"","sources":["../../../src/commands/messageCommand.ts"],"names":[],"mappings":"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"}