@nlabs/lex 1.45.1 → 1.46.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.
package/.eslintrc CHANGED
@@ -3,8 +3,43 @@
3
3
  "styleguidejs/typescript"
4
4
  ],
5
5
  "rules": {
6
+ "import/order": [
7
+ "error",
8
+ {
9
+ "groups": [
10
+ "builtin",
11
+ "external",
12
+ "internal",
13
+ "parent",
14
+ "sibling",
15
+ "index"
16
+ ],
17
+ "pathGroups": [
18
+ {
19
+ "pattern": "#!",
20
+ "group": "builtin",
21
+ "position": "before"
22
+ },
23
+ {
24
+ "pattern": "/**/*|//*",
25
+ "group": "builtin",
26
+ "position": "after"
27
+ },
28
+ {
29
+ "pattern": "type *",
30
+ "group": "index",
31
+ "position": "after"
32
+ }
33
+ ],
34
+ "newlines-between": "always",
35
+ "alphabetize": {
36
+ "order": "asc",
37
+ "caseInsensitive": true
38
+ }
39
+ }
40
+ ],
6
41
  "import/extensions": 0,
7
42
  "jest/valid-expect": 0,
8
43
  "no-useless-escape": 0
9
44
  }
10
- }
45
+ }
@@ -5,7 +5,7 @@ import { LexConfig } from "../LexConfig.js";
5
5
  import { createSpinner } from "../utils/app.js";
6
6
  import { relativeNodePath } from "../utils/file.js";
7
7
  import { log } from "../utils/log.js";
8
- const test = async (cmd, callback = process.exit) => {
8
+ const test = async (options, args, callback = process.exit) => {
9
9
  const {
10
10
  bail,
11
11
  changedFilesWithAncestor,
@@ -45,11 +45,11 @@ const test = async (cmd, callback = process.exit) => {
45
45
  verbose,
46
46
  watch,
47
47
  watchAll
48
- } = cmd;
48
+ } = options;
49
49
  log(`${cliName} testing...`, "info", quiet);
50
50
  const spinner = createSpinner(quiet);
51
- await LexConfig.parseConfig(cmd);
52
- const { useTypescript } = LexConfig.config;
51
+ await LexConfig.parseConfig(options);
52
+ const { jest, useTypescript } = LexConfig.config;
53
53
  if (useTypescript) {
54
54
  LexConfig.checkTypescriptConfig();
55
55
  }
@@ -165,6 +165,9 @@ const test = async (cmd, callback = process.exit) => {
165
165
  if (watch) {
166
166
  jestOptions.push("--watch", watch);
167
167
  }
168
+ if (args) {
169
+ jestOptions.push(...args);
170
+ }
168
171
  try {
169
172
  await execa(jestPath, jestOptions, {
170
173
  encoding: "utf8",
@@ -184,4 +187,4 @@ ${cliName} Error: Check for unit test errors and/or coverage.`, "error", quiet);
184
187
  export {
185
188
  test
186
189
  };
187
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL3Rlc3QudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB7ZXhlY2F9IGZyb20gJ2V4ZWNhJztcbmltcG9ydCB7cmVzb2x2ZSBhcyBwYXRoUmVzb2x2ZX0gZnJvbSAncGF0aCc7XG5pbXBvcnQge1VSTH0gZnJvbSAndXJsJztcblxuaW1wb3J0IHtMZXhDb25maWd9IGZyb20gJy4uL0xleENvbmZpZy5qcyc7XG5pbXBvcnQge2NyZWF0ZVNwaW5uZXJ9IGZyb20gJy4uL3V0aWxzL2FwcC5qcyc7XG5pbXBvcnQge3JlbGF0aXZlTm9kZVBhdGh9IGZyb20gJy4uL3V0aWxzL2ZpbGUuanMnO1xuaW1wb3J0IHtsb2d9IGZyb20gJy4uL3V0aWxzL2xvZy5qcyc7XG5cbmV4cG9ydCBjb25zdCB0ZXN0ID0gYXN5bmMgKGNtZDogYW55LCBjYWxsYmFjazogYW55ID0gcHJvY2Vzcy5leGl0KTogUHJvbWlzZTxudW1iZXI+ID0+IHtcbiAgY29uc3Qge1xuICAgIGJhaWwsXG4gICAgY2hhbmdlZEZpbGVzV2l0aEFuY2VzdG9yLFxuICAgIGNoYW5nZWRTaW5jZSxcbiAgICBjaSxcbiAgICBjbGlOYW1lID0gJ0xleCcsXG4gICAgY29sbGVjdENvdmVyYWdlRnJvbSxcbiAgICBjb2xvcnMsXG4gICAgY29uZmlnLFxuICAgIGRlYnVnLFxuICAgIGRldGVjdE9wZW5IYW5kbGVzLFxuICAgIGVudixcbiAgICBlcnJvck9uRGVwcmVjYXRlZCxcbiAgICBleHBhbmQsXG4gICAgZm9yY2VFeGl0LFxuICAgIGpzb24sXG4gICAgbGFzdENvbW1pdCxcbiAgICBsaXN0VGVzdHMsXG4gICAgbG9nSGVhcFVzYWdlLFxuICAgIG1heFdvcmtlcnMsXG4gICAgbm9TdGFja1RyYWNlLFxuICAgIG5vdGlmeSxcbiAgICBvbmx5Q2hhbmdlZCxcbiAgICBvdXRwdXRGaWxlLFxuICAgIHBhc3NXaXRoTm9UZXN0cyxcbiAgICBxdWlldCxcbiAgICByZW1vdmVDYWNoZSxcbiAgICBydW5JbkJhbmQsXG4gICAgc2V0dXAsXG4gICAgc2hvd0NvbmZpZyxcbiAgICBzaWxlbnQsXG4gICAgdGVzdExvY2F0aW9uSW5SZXN1bHRzLFxuICAgIHRlc3ROYW1lUGF0dGVybixcbiAgICB0ZXN0UGF0aFBhdHRlcm4sXG4gICAgdXBkYXRlLFxuICAgIHVzZVN0ZGVycixcbiAgICB2ZXJib3NlLFxuICAgIHdhdGNoLFxuICAgIHdhdGNoQWxsXG4gIH0gPSBjbWQ7XG5cbiAgbG9nKGAke2NsaU5hbWV9IHRlc3RpbmcuLi5gLCAnaW5mbycsIHF1aWV0KTtcblxuICAvLyBTcGlubmVyXG4gIGNvbnN0IHNwaW5uZXIgPSBjcmVhdGVTcGlubmVyKHF1aWV0KTtcblxuICAvLyBHZXQgY3VzdG9tIGNvbmZpZ3VyYXRpb25cbiAgYXdhaXQgTGV4Q29uZmlnLnBhcnNlQ29uZmlnKGNtZCk7XG5cbiAgY29uc3Qge3VzZVR5cGVzY3JpcHR9ID0gTGV4Q29uZmlnLmNvbmZpZztcblxuICBpZih1c2VUeXBlc2NyaXB0KSB7XG4gICAgLy8gTWFrZSBzdXJlIHRzY29uZmlnLmpzb24gZXhpc3RzXG4gICAgTGV4Q29uZmlnLmNoZWNrVHlwZXNjcmlwdENvbmZpZygpO1xuICB9XG5cbiAgLy8gQ29uZmlndXJlIGplc3RcbiAgY29uc3QgZGlyTmFtZSA9IG5ldyBVUkwoJy4nLCBpbXBvcnQubWV0YS51cmwpLnBhdGhuYW1lO1xuICBjb25zdCBkaXJQYXRoOiBzdHJpbmcgPSBwYXRoUmVzb2x2ZShkaXJOYW1lLCAnLi4vLi4nKTtcbiAgY29uc3QgamVzdFBhdGg6IHN0cmluZyA9IHJlbGF0aXZlTm9kZVBhdGgoJ2plc3QtY2xpL2Jpbi9qZXN0LmpzJywgZGlyUGF0aCk7XG4gIGNvbnN0IGplc3RDb25maWdGaWxlOiBzdHJpbmcgPSBjb25maWcgfHwgcGF0aFJlc29sdmUoZGlyTmFtZSwgJy4uLy4uL2plc3QuY29uZmlnLmxleC5qcycpO1xuICBjb25zdCBqZXN0U2V0dXBGaWxlOiBzdHJpbmcgPSBzZXR1cCB8fCAnJztcbiAgY29uc3QgamVzdE9wdGlvbnM6IHN0cmluZ1tdID0gWyctLWNvbmZpZycsIGplc3RDb25maWdGaWxlLCAnLS1uby1jYWNoZSddO1xuXG4gIGlmKGJhaWwpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWJhaWwnKTtcbiAgfVxuXG4gIGlmKGNoYW5nZWRGaWxlc1dpdGhBbmNlc3Rvcikge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tY2hhbmdlZEZpbGVzV2l0aEFuY2VzdG9yJyk7XG4gIH1cblxuICBpZihjaGFuZ2VkU2luY2UpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWNoYW5nZWRTaW5jZScpO1xuICB9XG5cbiAgaWYoY2kpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWNpJyk7XG4gIH1cblxuICBpZihjb2xsZWN0Q292ZXJhZ2VGcm9tKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1jb2xsZWN0Q292ZXJhZ2VGcm9tJywgY29sbGVjdENvdmVyYWdlRnJvbSk7XG4gIH1cblxuICBpZihjb2xvcnMpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWNvbG9ycycpO1xuICB9XG5cbiAgaWYoZGVidWcpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWRlYnVnJyk7XG4gIH1cblxuICAvLyBEZXRlY3Qgb3BlbiBoYW5kbGVzXG4gIGlmKGRldGVjdE9wZW5IYW5kbGVzKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1kZXRlY3RPcGVuSGFuZGxlcycpO1xuICB9XG5cbiAgaWYoZW52KSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1lbnYnKTtcbiAgfVxuXG4gIGlmKGVycm9yT25EZXByZWNhdGVkKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1lcnJvck9uRGVwcmVjYXRlZCcpO1xuICB9XG5cbiAgaWYoZXhwYW5kKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1leHBhbmQnKTtcbiAgfVxuXG4gIGlmKGZvcmNlRXhpdCkge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tZm9yY2VFeGl0Jyk7XG4gIH1cblxuICBpZihqc29uKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1qc29uJyk7XG4gIH1cblxuICBpZihsYXN0Q29tbWl0KSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1sYXN0Q29tbWl0Jyk7XG4gIH1cblxuICBpZihsaXN0VGVzdHMpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWxpc3RUZXN0cycpO1xuICB9XG5cbiAgaWYobG9nSGVhcFVzYWdlKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1sb2dIZWFwVXNhZ2UnKTtcbiAgfVxuXG4gIGlmKG1heFdvcmtlcnMpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLW1heFdvcmtlcnMnLCBtYXhXb3JrZXJzKTtcbiAgfVxuXG4gIGlmKG5vU3RhY2tUcmFjZSkge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tbm9TdGFja1RyYWNlJyk7XG4gIH1cblxuICBpZihub3RpZnkpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLW5vdGlmeScpO1xuICB9XG5cbiAgaWYob25seUNoYW5nZWQpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLW9ubHlDaGFuZ2VkJyk7XG4gIH1cblxuICBpZihvdXRwdXRGaWxlKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1vdXRwdXRGaWxlJywgb3V0cHV0RmlsZSk7XG4gIH1cblxuICBpZihwYXNzV2l0aE5vVGVzdHMpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLXBhc3NXaXRoTm9UZXN0cycpO1xuICB9XG5cbiAgaWYocnVuSW5CYW5kKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1ydW5JbkJhbmQnKTtcbiAgfVxuXG4gIGlmKHNob3dDb25maWcpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLXNob3dDb25maWcnKTtcbiAgfVxuXG4gIGlmKHNpbGVudCkge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tc2lsZW50Jyk7XG4gIH1cblxuICBpZih0ZXN0TG9jYXRpb25JblJlc3VsdHMpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLXRlc3RMb2NhdGlvbkluUmVzdWx0cycpO1xuICB9XG5cbiAgaWYodGVzdE5hbWVQYXR0ZXJuKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS10ZXN0TmFtZVBhdHRlcm4nLCB0ZXN0TmFtZVBhdHRlcm4pO1xuICB9XG5cbiAgaWYodGVzdFBhdGhQYXR0ZXJuKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS10ZXN0UGF0aFBhdHRlcm4nLCB0ZXN0UGF0aFBhdHRlcm4pO1xuICB9XG5cbiAgaWYodXNlU3RkZXJyKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS11c2VTdGRlcnInKTtcbiAgfVxuXG4gIGlmKHZlcmJvc2UpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLXZlcmJvc2UnKTtcbiAgfVxuXG4gIGlmKHdhdGNoQWxsKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS13YXRjaEFsbCcpO1xuICB9XG5cbiAgLy8gQ2xlYXIgY2FjaGVcbiAgaWYocmVtb3ZlQ2FjaGUpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLW5vLWNhY2hlJyk7XG4gIH1cblxuICBpZihqZXN0U2V0dXBGaWxlICE9PSAnJykge1xuICAgIGNvbnN0IGN3ZDogc3RyaW5nID0gcHJvY2Vzcy5jd2QoKTtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKGAtLXNldHVwRmlsZXNBZnRlckVudj0ke3BhdGhSZXNvbHZlKGN3ZCwgamVzdFNldHVwRmlsZSl9YCk7XG4gIH1cblxuICAvLyBVcGRhdGUgc25hcHNob3RzXG4gIGlmKHVwZGF0ZSkge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tdXBkYXRlU25hcHNob3QnKTtcbiAgfVxuXG4gIGlmKHdhdGNoKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS13YXRjaCcsIHdhdGNoKTtcbiAgfVxuXG4gIC8vIFRlc3QgYXBwIHVzaW5nIGplc3RcbiAgdHJ5IHtcbiAgICBhd2FpdCBleGVjYShqZXN0UGF0aCwgamVzdE9wdGlvbnMsIHtcbiAgICAgIGVuY29kaW5nOiAndXRmOCcsXG4gICAgICBzdGRpbzogJ2luaGVyaXQnXG4gICAgfSk7XG5cbiAgICBzcGlubmVyLnN1Y2NlZWQoJ1Rlc3RpbmcgY29tcGxldGVkIScpO1xuXG4gICAgLy8gS2lsbCBwcm9jZXNzXG4gICAgY2FsbGJhY2soMCk7XG4gICAgcmV0dXJuIDA7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICAvLyBEaXNwbGF5IGVycm9yIG1lc3NhZ2VcbiAgICBsb2coYFxcbiR7Y2xpTmFtZX0gRXJyb3I6IENoZWNrIGZvciB1bml0IHRlc3QgZXJyb3JzIGFuZC9vciBjb3ZlcmFnZS5gLCAnZXJyb3InLCBxdWlldCk7XG5cbiAgICAvLyBTdG9wIHNwaW5uZXJcbiAgICBzcGlubmVyLmZhaWwoJ1Rlc3RpbmcgZmFpbGVkIScpO1xuXG4gICAgLy8gS2lsbCBwcm9jZXNzXG4gICAgY2FsbGJhY2soMSk7XG4gICAgcmV0dXJuIDE7XG4gIH1cbn07XG4iXSwKICAibWFwcGluZ3MiOiAiQUFBQSxTQUFRLGFBQVk7QUFDcEIsU0FBUSxXQUFXLG1CQUFrQjtBQUNyQyxTQUFRLFdBQVU7QUFFbEIsU0FBUSxpQkFBZ0I7QUFDeEIsU0FBUSxxQkFBb0I7QUFDNUIsU0FBUSx3QkFBdUI7QUFDL0IsU0FBUSxXQUFVO0FBRVgsTUFBTSxPQUFPLE9BQU8sS0FBVSxXQUFnQixRQUFRLFNBQTBCO0FBQ3JGLFFBQU07QUFBQSxJQUNKO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQSxVQUFVO0FBQUEsSUFDVjtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFB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
190
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL3Rlc3QudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB7ZXhlY2F9IGZyb20gJ2V4ZWNhJztcblxuaW1wb3J0IHtyZXNvbHZlIGFzIHBhdGhSZXNvbHZlfSBmcm9tICdwYXRoJztcblxuaW1wb3J0IHtVUkx9IGZyb20gJ3VybCc7XG5cbmltcG9ydCB7TGV4Q29uZmlnfSBmcm9tICcuLi9MZXhDb25maWcuanMnO1xuaW1wb3J0IHtjcmVhdGVTcGlubmVyfSBmcm9tICcuLi91dGlscy9hcHAuanMnO1xuaW1wb3J0IHtyZWxhdGl2ZU5vZGVQYXRofSBmcm9tICcuLi91dGlscy9maWxlLmpzJztcbmltcG9ydCB7bG9nfSBmcm9tICcuLi91dGlscy9sb2cuanMnO1xuXG5leHBvcnQgY29uc3QgdGVzdCA9IGFzeW5jIChvcHRpb25zOiBhbnksIGFyZ3M6IHN0cmluZ1tdLCBjYWxsYmFjazogYW55ID0gcHJvY2Vzcy5leGl0KTogUHJvbWlzZTxudW1iZXI+ID0+IHtcbiAgY29uc3Qge1xuICAgIGJhaWwsXG4gICAgY2hhbmdlZEZpbGVzV2l0aEFuY2VzdG9yLFxuICAgIGNoYW5nZWRTaW5jZSxcbiAgICBjaSxcbiAgICBjbGlOYW1lID0gJ0xleCcsXG4gICAgY29sbGVjdENvdmVyYWdlRnJvbSxcbiAgICBjb2xvcnMsXG4gICAgY29uZmlnLFxuICAgIGRlYnVnLFxuICAgIGRldGVjdE9wZW5IYW5kbGVzLFxuICAgIGVudixcbiAgICBlcnJvck9uRGVwcmVjYXRlZCxcbiAgICBleHBhbmQsXG4gICAgZm9yY2VFeGl0LFxuICAgIGpzb24sXG4gICAgbGFzdENvbW1pdCxcbiAgICBsaXN0VGVzdHMsXG4gICAgbG9nSGVhcFVzYWdlLFxuICAgIG1heFdvcmtlcnMsXG4gICAgbm9TdGFja1RyYWNlLFxuICAgIG5vdGlmeSxcbiAgICBvbmx5Q2hhbmdlZCxcbiAgICBvdXRwdXRGaWxlLFxuICAgIHBhc3NXaXRoTm9UZXN0cyxcbiAgICBxdWlldCxcbiAgICByZW1vdmVDYWNoZSxcbiAgICBydW5JbkJhbmQsXG4gICAgc2V0dXAsXG4gICAgc2hvd0NvbmZpZyxcbiAgICBzaWxlbnQsXG4gICAgdGVzdExvY2F0aW9uSW5SZXN1bHRzLFxuICAgIHRlc3ROYW1lUGF0dGVybixcbiAgICB0ZXN0UGF0aFBhdHRlcm4sXG4gICAgdXBkYXRlLFxuICAgIHVzZVN0ZGVycixcbiAgICB2ZXJib3NlLFxuICAgIHdhdGNoLFxuICAgIHdhdGNoQWxsXG4gIH0gPSBvcHRpb25zO1xuXG4gIGxvZyhgJHtjbGlOYW1lfSB0ZXN0aW5nLi4uYCwgJ2luZm8nLCBxdWlldCk7XG5cbiAgLy8gU3Bpbm5lclxuICBjb25zdCBzcGlubmVyID0gY3JlYXRlU3Bpbm5lcihxdWlldCk7XG5cbiAgLy8gR2V0IGN1c3RvbSBjb25maWd1cmF0aW9uXG4gIGF3YWl0IExleENvbmZpZy5wYXJzZUNvbmZpZyhvcHRpb25zKTtcblxuICBjb25zdCB7amVzdCwgdXNlVHlwZXNjcmlwdH0gPSBMZXhDb25maWcuY29uZmlnO1xuXG4gIGlmKHVzZVR5cGVzY3JpcHQpIHtcbiAgICAvLyBNYWtlIHN1cmUgdHNjb25maWcuanNvbiBleGlzdHNcbiAgICBMZXhDb25maWcuY2hlY2tUeXBlc2NyaXB0Q29uZmlnKCk7XG4gIH1cblxuICAvLyBDb25maWd1cmUgamVzdFxuICBjb25zdCBkaXJOYW1lID0gbmV3IFVSTCgnLicsIGltcG9ydC5tZXRhLnVybCkucGF0aG5hbWU7XG4gIGNvbnN0IGRpclBhdGg6IHN0cmluZyA9IHBhdGhSZXNvbHZlKGRpck5hbWUsICcuLi8uLicpO1xuICBjb25zdCBqZXN0UGF0aDogc3RyaW5nID0gcmVsYXRpdmVOb2RlUGF0aCgnamVzdC1jbGkvYmluL2plc3QuanMnLCBkaXJQYXRoKTtcbiAgY29uc3QgamVzdENvbmZpZ0ZpbGU6IHN0cmluZyA9IGNvbmZpZyB8fCBwYXRoUmVzb2x2ZShkaXJOYW1lLCAnLi4vLi4vamVzdC5jb25maWcubGV4LmpzJyk7XG4gIGNvbnN0IGplc3RTZXR1cEZpbGU6IHN0cmluZyA9IHNldHVwIHx8ICcnO1xuICBjb25zdCBqZXN0T3B0aW9uczogc3RyaW5nW10gPSBbJy0tY29uZmlnJywgamVzdENvbmZpZ0ZpbGUsICctLW5vLWNhY2hlJ107XG5cbiAgaWYoYmFpbCkge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tYmFpbCcpO1xuICB9XG5cbiAgaWYoY2hhbmdlZEZpbGVzV2l0aEFuY2VzdG9yKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1jaGFuZ2VkRmlsZXNXaXRoQW5jZXN0b3InKTtcbiAgfVxuXG4gIGlmKGNoYW5nZWRTaW5jZSkge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tY2hhbmdlZFNpbmNlJyk7XG4gIH1cblxuICBpZihjaSkge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tY2knKTtcbiAgfVxuXG4gIGlmKGNvbGxlY3RDb3ZlcmFnZUZyb20pIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWNvbGxlY3RDb3ZlcmFnZUZyb20nLCBjb2xsZWN0Q292ZXJhZ2VGcm9tKTtcbiAgfVxuXG4gIGlmKGNvbG9ycykge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tY29sb3JzJyk7XG4gIH1cblxuICBpZihkZWJ1Zykge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tZGVidWcnKTtcbiAgfVxuXG4gIC8vIERldGVjdCBvcGVuIGhhbmRsZXNcbiAgaWYoZGV0ZWN0T3BlbkhhbmRsZXMpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWRldGVjdE9wZW5IYW5kbGVzJyk7XG4gIH1cblxuICBpZihlbnYpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWVudicpO1xuICB9XG5cbiAgaWYoZXJyb3JPbkRlcHJlY2F0ZWQpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWVycm9yT25EZXByZWNhdGVkJyk7XG4gIH1cblxuICBpZihleHBhbmQpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWV4cGFuZCcpO1xuICB9XG5cbiAgaWYoZm9yY2VFeGl0KSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1mb3JjZUV4aXQnKTtcbiAgfVxuXG4gIGlmKGpzb24pIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWpzb24nKTtcbiAgfVxuXG4gIGlmKGxhc3RDb21taXQpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWxhc3RDb21taXQnKTtcbiAgfVxuXG4gIGlmKGxpc3RUZXN0cykge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tbGlzdFRlc3RzJyk7XG4gIH1cblxuICBpZihsb2dIZWFwVXNhZ2UpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLWxvZ0hlYXBVc2FnZScpO1xuICB9XG5cbiAgaWYobWF4V29ya2Vycykge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tbWF4V29ya2VycycsIG1heFdvcmtlcnMpO1xuICB9XG5cbiAgaWYobm9TdGFja1RyYWNlKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1ub1N0YWNrVHJhY2UnKTtcbiAgfVxuXG4gIGlmKG5vdGlmeSkge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tbm90aWZ5Jyk7XG4gIH1cblxuICBpZihvbmx5Q2hhbmdlZCkge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tb25seUNoYW5nZWQnKTtcbiAgfVxuXG4gIGlmKG91dHB1dEZpbGUpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLW91dHB1dEZpbGUnLCBvdXRwdXRGaWxlKTtcbiAgfVxuXG4gIGlmKHBhc3NXaXRoTm9UZXN0cykge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tcGFzc1dpdGhOb1Rlc3RzJyk7XG4gIH1cblxuICBpZihydW5JbkJhbmQpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLXJ1bkluQmFuZCcpO1xuICB9XG5cbiAgaWYoc2hvd0NvbmZpZykge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tc2hvd0NvbmZpZycpO1xuICB9XG5cbiAgaWYoc2lsZW50KSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS1zaWxlbnQnKTtcbiAgfVxuXG4gIGlmKHRlc3RMb2NhdGlvbkluUmVzdWx0cykge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tdGVzdExvY2F0aW9uSW5SZXN1bHRzJyk7XG4gIH1cblxuICBpZih0ZXN0TmFtZVBhdHRlcm4pIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLXRlc3ROYW1lUGF0dGVybicsIHRlc3ROYW1lUGF0dGVybik7XG4gIH1cblxuICBpZih0ZXN0UGF0aFBhdHRlcm4pIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLXRlc3RQYXRoUGF0dGVybicsIHRlc3RQYXRoUGF0dGVybik7XG4gIH1cblxuICBpZih1c2VTdGRlcnIpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLXVzZVN0ZGVycicpO1xuICB9XG5cbiAgaWYodmVyYm9zZSkge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tdmVyYm9zZScpO1xuICB9XG5cbiAgaWYod2F0Y2hBbGwpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLXdhdGNoQWxsJyk7XG4gIH1cblxuICAvLyBDbGVhciBjYWNoZVxuICBpZihyZW1vdmVDYWNoZSkge1xuICAgIGplc3RPcHRpb25zLnB1c2goJy0tbm8tY2FjaGUnKTtcbiAgfVxuXG4gIGlmKGplc3RTZXR1cEZpbGUgIT09ICcnKSB7XG4gICAgY29uc3QgY3dkOiBzdHJpbmcgPSBwcm9jZXNzLmN3ZCgpO1xuICAgIGplc3RPcHRpb25zLnB1c2goYC0tc2V0dXBGaWxlc0FmdGVyRW52PSR7cGF0aFJlc29sdmUoY3dkLCBqZXN0U2V0dXBGaWxlKX1gKTtcbiAgfVxuXG4gIC8vIFVwZGF0ZSBzbmFwc2hvdHNcbiAgaWYodXBkYXRlKSB7XG4gICAgamVzdE9wdGlvbnMucHVzaCgnLS11cGRhdGVTbmFwc2hvdCcpO1xuICB9XG5cbiAgaWYod2F0Y2gpIHtcbiAgICBqZXN0T3B0aW9ucy5wdXNoKCctLXdhdGNoJywgd2F0Y2gpO1xuICB9XG5cbiAgaWYoYXJncykge1xuICAgIGplc3RPcHRpb25zLnB1c2goLi4uYXJncyk7XG4gIH1cblxuICB0cnkge1xuICAgIGF3YWl0IGV4ZWNhKGplc3RQYXRoLCBqZXN0T3B0aW9ucywge1xuICAgICAgZW5jb2Rpbmc6ICd1dGY4JyxcbiAgICAgIHN0ZGlvOiAnaW5oZXJpdCdcbiAgICB9KTtcblxuICAgIHNwaW5uZXIuc3VjY2VlZCgnVGVzdGluZyBjb21wbGV0ZWQhJyk7XG5cbiAgICAvLyBLaWxsIHByb2Nlc3NcbiAgICBjYWxsYmFjaygwKTtcbiAgICByZXR1cm4gMDtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIC8vIERpc3BsYXkgZXJyb3IgbWVzc2FnZVxuICAgIGxvZyhgXFxuJHtjbGlOYW1lfSBFcnJvcjogQ2hlY2sgZm9yIHVuaXQgdGVzdCBlcnJvcnMgYW5kL29yIGNvdmVyYWdlLmAsICdlcnJvcicsIHF1aWV0KTtcblxuICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgIHNwaW5uZXIuZmFpbCgnVGVzdGluZyBmYWlsZWQhJyk7XG5cbiAgICAvLyBLaWxsIHByb2Nlc3NcbiAgICBjYWxsYmFjaygxKTtcbiAgICByZXR1cm4gMTtcbiAgfVxufTtcbiJdLAogICJtYXBwaW5ncyI6ICJBQUFBLFNBQVEsYUFBWTtBQUVwQixTQUFRLFdBQVcsbUJBQWtCO0FBRXJDLFNBQVEsV0FBVTtBQUVsQixTQUFRLGlCQUFnQjtBQUN4QixTQUFRLHFCQUFvQjtBQUM1QixTQUFRLHdCQUF1QjtBQUMvQixTQUFRLFdBQVU7QUFFWCxNQUFNLE9BQU8sT0FBTyxTQUFjLE1BQWdCLFdBQWdCLFFBQVEsU0FBMEI7QUFDekcsUUFBTTtBQUFBLElBQ0o7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBLFVBQVU7QUFBQSxJQUNWO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FB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
@@ -1,6 +1,8 @@
1
1
  import { execa } from "execa";
2
+ import { resolve as pathResolve } from "path";
2
3
  import { LexConfig } from "../LexConfig.js";
3
4
  import { createSpinner } from "../utils/app.js";
5
+ import { relativeNodePath } from "../utils/file.js";
4
6
  import { log } from "../utils/log.js";
5
7
  const update = async (cmd, callback = process.exit) => {
6
8
  const { cliName = "Lex", packageManager: cmdPackageManager, quiet, registry } = cmd;
@@ -11,8 +13,11 @@ const update = async (cmd, callback = process.exit) => {
11
13
  const packageManager = cmdPackageManager || configPackageManager || "npm";
12
14
  const isNpm = packageManager === "npm";
13
15
  const updateApp = isNpm ? "npx" : "yarn";
16
+ const dirName = new URL(".", import.meta.url).pathname;
17
+ const dirPath = pathResolve(dirName, "../..");
18
+ const npmCheckUpdatesPath = relativeNodePath("npm-check-updates", dirPath);
14
19
  const updateOptions = isNpm ? [
15
- "npm-check-updates",
20
+ npmCheckUpdatesPath,
16
21
  "--concurrency",
17
22
  "10",
18
23
  "--packageManager",
@@ -56,4 +61,4 @@ ${cliName} Error: ${error.message}`, "error", quiet);
56
61
  export {
57
62
  update
58
63
  };
59
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL3VwZGF0ZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7ZXhlY2F9IGZyb20gJ2V4ZWNhJztcblxuaW1wb3J0IHtMZXhDb25maWd9IGZyb20gJy4uL0xleENvbmZpZy5qcyc7XG5pbXBvcnQge2NyZWF0ZVNwaW5uZXJ9IGZyb20gJy4uL3V0aWxzL2FwcC5qcyc7XG5pbXBvcnQge2xvZ30gZnJvbSAnLi4vdXRpbHMvbG9nLmpzJztcblxuZXhwb3J0IGNvbnN0IHVwZGF0ZSA9IGFzeW5jIChjbWQ6IGFueSwgY2FsbGJhY2s6IGFueSA9IHByb2Nlc3MuZXhpdCk6IFByb21pc2U8bnVtYmVyPiA9PiB7XG4gIGNvbnN0IHtjbGlOYW1lID0gJ0xleCcsIHBhY2thZ2VNYW5hZ2VyOiBjbWRQYWNrYWdlTWFuYWdlciwgcXVpZXQsIHJlZ2lzdHJ5fSA9IGNtZDtcblxuICAvLyBEaXNwbGF5IHN0YXR1c1xuICBsb2coYCR7Y2xpTmFtZX0gdXBkYXRpbmcgcGFja2FnZXMuLi5gLCAnaW5mbycsIHF1aWV0KTtcblxuICAvLyBTcGlubmVyXG4gIGNvbnN0IHNwaW5uZXIgPSBjcmVhdGVTcGlubmVyKHF1aWV0KTtcblxuICAvLyBHZXQgY3VzdG9tIGNvbmZpZ3VyYXRpb25cbiAgYXdhaXQgTGV4Q29uZmlnLnBhcnNlQ29uZmlnKGNtZCk7XG5cbiAgY29uc3Qge3BhY2thZ2VNYW5hZ2VyOiBjb25maWdQYWNrYWdlTWFuYWdlcn0gPSBMZXhDb25maWcuY29uZmlnO1xuICBjb25zdCBwYWNrYWdlTWFuYWdlcjogc3RyaW5nID0gY21kUGFja2FnZU1hbmFnZXIgfHwgY29uZmlnUGFja2FnZU1hbmFnZXIgfHwgJ25wbSc7XG4gIGNvbnN0IGlzTnBtOiBib29sZWFuID0gcGFja2FnZU1hbmFnZXIgPT09ICducG0nO1xuICBjb25zdCB1cGRhdGVBcHA6IHN0cmluZyA9IGlzTnBtID8gJ25weCcgOiAneWFybic7XG4gIGNvbnN0IHVwZGF0ZU9wdGlvbnM6IHN0cmluZ1tdID0gaXNOcG1cbiAgICA/IFsnbnBtLWNoZWNrLXVwZGF0ZXMnLFxuICAgICAgJy0tY29uY3VycmVuY3knLCAnMTAnLFxuICAgICAgJy0tcGFja2FnZU1hbmFnZXInLCBwYWNrYWdlTWFuYWdlcixcbiAgICAgICctLXByZScsICcwJyxcbiAgICAgICctLXRhcmdldCcsICdsYXRlc3QnLFxuICAgICAgY21kLmludGVyYWN0aXZlID8gJy0taW50ZXJhY3RpdmUnIDogJycsXG4gICAgICAnLS11cGdyYWRlJ1xuICAgIF1cbiAgICA6IFtjbWQuaW50ZXJhY3RpdmUgPyAndXBncmFkZS1pbnRlcmFjdGl2ZScgOiAndXBncmFkZScsICctLWxhdGVzdCddO1xuXG4gIGlmKHJlZ2lzdHJ5KSB7XG4gICAgdXBkYXRlT3B0aW9ucy5wdXNoKCctLXJlZ2lzdHJ5JywgcmVnaXN0cnkpO1xuICB9XG5cbiAgdHJ5IHtcbiAgICBhd2FpdCBleGVjYSh1cGRhdGVBcHAsIHVwZGF0ZU9wdGlvbnMsIHtcbiAgICAgIGVuY29kaW5nOiAndXRmOCcsXG4gICAgICBzdGRpbzogJ2luaGVyaXQnXG4gICAgfSk7XG5cbiAgICBpZihpc05wbSkge1xuICAgICAgYXdhaXQgZXhlY2EoJ25wbScsIFsnaScsICctLWZvcmNlJ10sIHtcbiAgICAgICAgZW5jb2Rpbmc6ICd1dGY4JyxcbiAgICAgICAgc3RkaW86ICdpbmhlcml0J1xuICAgICAgfSk7XG5cbiAgICAgIGF3YWl0IGV4ZWNhKCducG0nLCBbJ2F1ZGl0JywgJ2ZpeCddLCB7XG4gICAgICAgIGVuY29kaW5nOiAndXRmOCcsXG4gICAgICAgIHN0ZGlvOiAnaW5oZXJpdCdcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIC8vIFN0b3AgbG9hZGVyXG4gICAgc3Bpbm5lci5zdWNjZWVkKCdTdWNjZXNzZnVsbHkgdXBkYXRlZCBwYWNrYWdlcyEnKTtcblxuICAgIC8vIEtpbGwgcHJvY2Vzc1xuICAgIGNhbGxiYWNrKDApO1xuICAgIHJldHVybiAwO1xuICB9IGNhdGNoKGVycm9yKSB7XG4gICAgLy8gRGlzcGxheSBlcnJvciBtZXNzYWdlXG4gICAgbG9nKGBcXG4ke2NsaU5hbWV9IEVycm9yOiAke2Vycm9yLm1lc3NhZ2V9YCwgJ2Vycm9yJywgcXVpZXQpO1xuXG4gICAgLy8gU3RvcCBzcGlubmVyXG4gICAgc3Bpbm5lci5mYWlsKCdGYWlsZWQgdG8gdXBkYXRlZCBwYWNrYWdlcy4nKTtcblxuICAgIC8vIEtpbGwgcHJvY2Vzc1xuICAgIGNhbGxiYWNrKDEpO1xuICAgIHJldHVybiAxO1xuICB9XG59O1xuIl0sCiAgIm1hcHBpbmdzIjogIkFBSUEsU0FBUSxhQUFZO0FBRXBCLFNBQVEsaUJBQWdCO0FBQ3hCLFNBQVEscUJBQW9CO0FBQzVCLFNBQVEsV0FBVTtBQUVYLE1BQU0sU0FBUyxPQUFPLEtBQVUsV0FBZ0IsUUFBUSxTQUEwQjtBQUN2RixRQUFNLEVBQUMsVUFBVSxPQUFPLGdCQUFnQixtQkFBbUIsT0FBTyxTQUFRLElBQUk7QUFHOUUsTUFBSSxHQUFHLE9BQU8seUJBQXlCLFFBQVEsS0FBSztBQUdwRCxRQUFNLFVBQVUsY0FBYyxLQUFLO0FBR25DLFFBQU0sVUFBVSxZQUFZLEdBQUc7QUFFL0IsUUFBTSxFQUFDLGdCQUFnQixxQkFBb0IsSUFBSSxVQUFVO0FBQ3pELFFBQU0saUJBQXlCLHFCQUFxQix3QkFBd0I7QUFDNUUsUUFBTSxRQUFpQixtQkFBbUI7QUFDMUMsUUFBTSxZQUFvQixRQUFRLFFBQVE7QUFDMUMsUUFBTSxnQkFBMEIsUUFDNUI7QUFBQSxJQUFDO0FBQUEsSUFDRDtBQUFBLElBQWlCO0FBQUEsSUFDakI7QUFBQSxJQUFvQjtBQUFBLElBQ3BCO0FBQUEsSUFBUztBQUFBLElBQ1Q7QUFBQSxJQUFZO0FBQUEsSUFDWixJQUFJLGNBQWMsa0JBQWtCO0FBQUEsSUFDcEM7QUFBQSxFQUNGLElBQ0UsQ0FBQyxJQUFJLGNBQWMsd0JBQXdCLFdBQVcsVUFBVTtBQUVwRSxNQUFHLFVBQVU7QUFDWCxrQkFBYyxLQUFLLGNBQWMsUUFBUTtBQUFBLEVBQzNDO0FBRUEsTUFBSTtBQUNGLFVBQU0sTUFBTSxXQUFXLGVBQWU7QUFBQSxNQUNwQyxVQUFVO0FBQUEsTUFDVixPQUFPO0FBQUEsSUFDVCxDQUFDO0FBRUQsUUFBRyxPQUFPO0FBQ1IsWUFBTSxNQUFNLE9BQU8sQ0FBQyxLQUFLLFNBQVMsR0FBRztBQUFBLFFBQ25DLFVBQVU7QUFBQSxRQUNWLE9BQU87QUFBQSxNQUNULENBQUM7QUFFRCxZQUFNLE1BQU0sT0FBTyxDQUFDLFNBQVMsS0FBSyxHQUFHO0FBQUEsUUFDbkMsVUFBVTtBQUFBLFFBQ1YsT0FBTztBQUFBLE1BQ1QsQ0FBQztBQUFBLElBQ0g7QUFHQSxZQUFRLFFBQVEsZ0NBQWdDO0FBR2hELGFBQVMsQ0FBQztBQUNWLFdBQU87QUFBQSxFQUNULFNBQVEsT0FBTztBQUViLFFBQUk7QUFBQSxFQUFLLE9BQU8sV0FBVyxNQUFNLE9BQU8sSUFBSSxTQUFTLEtBQUs7QUFHMUQsWUFBUSxLQUFLLDZCQUE2QjtBQUcxQyxhQUFTLENBQUM7QUFDVixXQUFPO0FBQUEsRUFDVDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
64
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL3VwZGF0ZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7ZXhlY2F9IGZyb20gJ2V4ZWNhJztcblxuaW1wb3J0IHtyZXNvbHZlIGFzIHBhdGhSZXNvbHZlfSBmcm9tICdwYXRoJztcblxuaW1wb3J0IHtMZXhDb25maWd9IGZyb20gJy4uL0xleENvbmZpZy5qcyc7XG5pbXBvcnQge2NyZWF0ZVNwaW5uZXJ9IGZyb20gJy4uL3V0aWxzL2FwcC5qcyc7XG5pbXBvcnQge3JlbGF0aXZlTm9kZVBhdGh9IGZyb20gJy4uL3V0aWxzL2ZpbGUuanMnO1xuaW1wb3J0IHtsb2d9IGZyb20gJy4uL3V0aWxzL2xvZy5qcyc7XG5cbmV4cG9ydCBjb25zdCB1cGRhdGUgPSBhc3luYyAoY21kOiBhbnksIGNhbGxiYWNrOiBhbnkgPSBwcm9jZXNzLmV4aXQpOiBQcm9taXNlPG51bWJlcj4gPT4ge1xuICBjb25zdCB7Y2xpTmFtZSA9ICdMZXgnLCBwYWNrYWdlTWFuYWdlcjogY21kUGFja2FnZU1hbmFnZXIsIHF1aWV0LCByZWdpc3RyeX0gPSBjbWQ7XG5cbiAgLy8gRGlzcGxheSBzdGF0dXNcbiAgbG9nKGAke2NsaU5hbWV9IHVwZGF0aW5nIHBhY2thZ2VzLi4uYCwgJ2luZm8nLCBxdWlldCk7XG5cbiAgLy8gU3Bpbm5lclxuICBjb25zdCBzcGlubmVyID0gY3JlYXRlU3Bpbm5lcihxdWlldCk7XG5cbiAgLy8gR2V0IGN1c3RvbSBjb25maWd1cmF0aW9uXG4gIGF3YWl0IExleENvbmZpZy5wYXJzZUNvbmZpZyhjbWQpO1xuXG4gIGNvbnN0IHtwYWNrYWdlTWFuYWdlcjogY29uZmlnUGFja2FnZU1hbmFnZXJ9ID0gTGV4Q29uZmlnLmNvbmZpZztcbiAgY29uc3QgcGFja2FnZU1hbmFnZXI6IHN0cmluZyA9IGNtZFBhY2thZ2VNYW5hZ2VyIHx8IGNvbmZpZ1BhY2thZ2VNYW5hZ2VyIHx8ICducG0nO1xuICBjb25zdCBpc05wbTogYm9vbGVhbiA9IHBhY2thZ2VNYW5hZ2VyID09PSAnbnBtJztcbiAgY29uc3QgdXBkYXRlQXBwOiBzdHJpbmcgPSBpc05wbSA/ICducHgnIDogJ3lhcm4nO1xuICBjb25zdCBkaXJOYW1lID0gbmV3IFVSTCgnLicsIGltcG9ydC5tZXRhLnVybCkucGF0aG5hbWU7XG4gIGNvbnN0IGRpclBhdGg6IHN0cmluZyA9IHBhdGhSZXNvbHZlKGRpck5hbWUsICcuLi8uLicpO1xuICBjb25zdCBucG1DaGVja1VwZGF0ZXNQYXRoOiBzdHJpbmcgPSByZWxhdGl2ZU5vZGVQYXRoKCducG0tY2hlY2stdXBkYXRlcycsIGRpclBhdGgpO1xuICBjb25zdCB1cGRhdGVPcHRpb25zOiBzdHJpbmdbXSA9IGlzTnBtXG4gICAgPyBbbnBtQ2hlY2tVcGRhdGVzUGF0aCxcbiAgICAgICctLWNvbmN1cnJlbmN5JywgJzEwJyxcbiAgICAgICctLXBhY2thZ2VNYW5hZ2VyJywgcGFja2FnZU1hbmFnZXIsXG4gICAgICAnLS1wcmUnLCAnMCcsXG4gICAgICAnLS10YXJnZXQnLCAnbGF0ZXN0JyxcbiAgICAgIGNtZC5pbnRlcmFjdGl2ZSA/ICctLWludGVyYWN0aXZlJyA6ICcnLFxuICAgICAgJy0tdXBncmFkZSdcbiAgICBdXG4gICAgOiBbY21kLmludGVyYWN0aXZlID8gJ3VwZ3JhZGUtaW50ZXJhY3RpdmUnIDogJ3VwZ3JhZGUnLCAnLS1sYXRlc3QnXTtcblxuICBpZihyZWdpc3RyeSkge1xuICAgIHVwZGF0ZU9wdGlvbnMucHVzaCgnLS1yZWdpc3RyeScsIHJlZ2lzdHJ5KTtcbiAgfVxuXG4gIHRyeSB7XG4gICAgYXdhaXQgZXhlY2EodXBkYXRlQXBwLCB1cGRhdGVPcHRpb25zLCB7XG4gICAgICBlbmNvZGluZzogJ3V0ZjgnLFxuICAgICAgc3RkaW86ICdpbmhlcml0J1xuICAgIH0pO1xuXG4gICAgaWYoaXNOcG0pIHtcbiAgICAgIGF3YWl0IGV4ZWNhKCducG0nLCBbJ2knLCAnLS1mb3JjZSddLCB7XG4gICAgICAgIGVuY29kaW5nOiAndXRmOCcsXG4gICAgICAgIHN0ZGlvOiAnaW5oZXJpdCdcbiAgICAgIH0pO1xuXG4gICAgICBhd2FpdCBleGVjYSgnbnBtJywgWydhdWRpdCcsICdmaXgnXSwge1xuICAgICAgICBlbmNvZGluZzogJ3V0ZjgnLFxuICAgICAgICBzdGRpbzogJ2luaGVyaXQnXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBTdG9wIGxvYWRlclxuICAgIHNwaW5uZXIuc3VjY2VlZCgnU3VjY2Vzc2Z1bGx5IHVwZGF0ZWQgcGFja2FnZXMhJyk7XG5cbiAgICAvLyBLaWxsIHByb2Nlc3NcbiAgICBjYWxsYmFjaygwKTtcbiAgICByZXR1cm4gMDtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIC8vIERpc3BsYXkgZXJyb3IgbWVzc2FnZVxuICAgIGxvZyhgXFxuJHtjbGlOYW1lfSBFcnJvcjogJHtlcnJvci5tZXNzYWdlfWAsICdlcnJvcicsIHF1aWV0KTtcblxuICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgIHNwaW5uZXIuZmFpbCgnRmFpbGVkIHRvIHVwZGF0ZWQgcGFja2FnZXMuJyk7XG5cbiAgICAvLyBLaWxsIHByb2Nlc3NcbiAgICBjYWxsYmFjaygxKTtcbiAgICByZXR1cm4gMTtcbiAgfVxufTtcbiJdLAogICJtYXBwaW5ncyI6ICJBQUlBLFNBQVEsYUFBWTtBQUVwQixTQUFRLFdBQVcsbUJBQWtCO0FBRXJDLFNBQVEsaUJBQWdCO0FBQ3hCLFNBQVEscUJBQW9CO0FBQzVCLFNBQVEsd0JBQXVCO0FBQy9CLFNBQVEsV0FBVTtBQUVYLE1BQU0sU0FBUyxPQUFPLEtBQVUsV0FBZ0IsUUFBUSxTQUEwQjtBQUN2RixRQUFNLEVBQUMsVUFBVSxPQUFPLGdCQUFnQixtQkFBbUIsT0FBTyxTQUFRLElBQUk7QUFHOUUsTUFBSSxHQUFHLE9BQU8seUJBQXlCLFFBQVEsS0FBSztBQUdwRCxRQUFNLFVBQVUsY0FBYyxLQUFLO0FBR25DLFFBQU0sVUFBVSxZQUFZLEdBQUc7QUFFL0IsUUFBTSxFQUFDLGdCQUFnQixxQkFBb0IsSUFBSSxVQUFVO0FBQ3pELFFBQU0saUJBQXlCLHFCQUFxQix3QkFBd0I7QUFDNUUsUUFBTSxRQUFpQixtQkFBbUI7QUFDMUMsUUFBTSxZQUFvQixRQUFRLFFBQVE7QUFDMUMsUUFBTSxVQUFVLElBQUksSUFBSSxLQUFLLFlBQVksR0FBRyxFQUFFO0FBQzlDLFFBQU0sVUFBa0IsWUFBWSxTQUFTLE9BQU87QUFDcEQsUUFBTSxzQkFBOEIsaUJBQWlCLHFCQUFxQixPQUFPO0FBQ2pGLFFBQU0sZ0JBQTBCLFFBQzVCO0FBQUEsSUFBQztBQUFBLElBQ0Q7QUFBQSxJQUFpQjtBQUFBLElBQ2pCO0FBQUEsSUFBb0I7QUFBQSxJQUNwQjtBQUFBLElBQVM7QUFBQSxJQUNUO0FBQUEsSUFBWTtBQUFBLElBQ1osSUFBSSxjQUFjLGtCQUFrQjtBQUFBLElBQ3BDO0FBQUEsRUFDRixJQUNFLENBQUMsSUFBSSxjQUFjLHdCQUF3QixXQUFXLFVBQVU7QUFFcEUsTUFBRyxVQUFVO0FBQ1gsa0JBQWMsS0FBSyxjQUFjLFFBQVE7QUFBQSxFQUMzQztBQUVBLE1BQUk7QUFDRixVQUFNLE1BQU0sV0FBVyxlQUFlO0FBQUEsTUFDcEMsVUFBVTtBQUFBLE1BQ1YsT0FBTztBQUFBLElBQ1QsQ0FBQztBQUVELFFBQUcsT0FBTztBQUNSLFlBQU0sTUFBTSxPQUFPLENBQUMsS0FBSyxTQUFTLEdBQUc7QUFBQSxRQUNuQyxVQUFVO0FBQUEsUUFDVixPQUFPO0FBQUEsTUFDVCxDQUFDO0FBRUQsWUFBTSxNQUFNLE9BQU8sQ0FBQyxTQUFTLEtBQUssR0FBRztBQUFBLFFBQ25DLFVBQVU7QUFBQSxRQUNWLE9BQU87QUFBQSxNQUNULENBQUM7QUFBQSxJQUNIO0FBR0EsWUFBUSxRQUFRLGdDQUFnQztBQUdoRCxhQUFTLENBQUM7QUFDVixXQUFPO0FBQUEsRUFDVCxTQUFRLE9BQU87QUFFYixRQUFJO0FBQUEsRUFBSyxPQUFPLFdBQVcsTUFBTSxPQUFPLElBQUksU0FBUyxLQUFLO0FBRzFELFlBQVEsS0FBSyw2QkFBNkI7QUFHMUMsYUFBUyxDQUFDO0FBQ1YsV0FBTztBQUFBLEVBQ1Q7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
@@ -1,11 +1,14 @@
1
1
  import { compareVersions } from "compare-versions";
2
2
  import { execa } from "execa";
3
+ import { readFileSync } from "fs";
3
4
  import latestVersion from "latest-version";
4
- import packageJson from "../../package.json" assert { type: "json" };
5
+ import { fileURLToPath } from "url";
5
6
  import { LexConfig } from "../LexConfig.js";
6
7
  import { createSpinner } from "../utils/app.js";
7
8
  import { log } from "../utils/log.js";
8
9
  import { parseVersion } from "./versions.js";
10
+ const packagePath = fileURLToPath(new URL("../../package.json", import.meta.url));
11
+ const packageJson = JSON.parse(readFileSync(packagePath, "utf8"));
9
12
  const upgrade = async (cmd, callback = process.exit) => {
10
13
  const { cliName = "Lex", cliPackage = "@nlabs/lex", quiet } = cmd;
11
14
  log(`Upgrading ${cliName}...`, "info", quiet);
@@ -41,4 +44,4 @@ ${cliName} Error: ${error.message}`, "error", quiet);
41
44
  export {
42
45
  upgrade
43
46
  };
44
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL3VwZ3JhZGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge2NvbXBhcmVWZXJzaW9uc30gZnJvbSAnY29tcGFyZS12ZXJzaW9ucyc7XG5pbXBvcnQge2V4ZWNhfSBmcm9tICdleGVjYSc7XG5pbXBvcnQgbGF0ZXN0VmVyc2lvbiBmcm9tICdsYXRlc3QtdmVyc2lvbic7XG5cbmltcG9ydCBwYWNrYWdlSnNvbiBmcm9tICcuLi8uLi9wYWNrYWdlLmpzb24nIGFzc2VydCB7dHlwZTogJ2pzb24nfTtcbmltcG9ydCB7TGV4Q29uZmlnfSBmcm9tICcuLi9MZXhDb25maWcuanMnO1xuaW1wb3J0IHtjcmVhdGVTcGlubmVyfSBmcm9tICcuLi91dGlscy9hcHAuanMnO1xuaW1wb3J0IHtsb2d9IGZyb20gJy4uL3V0aWxzL2xvZy5qcyc7XG5pbXBvcnQge3BhcnNlVmVyc2lvbn0gZnJvbSAnLi92ZXJzaW9ucy5qcyc7XG5cbmV4cG9ydCBjb25zdCB1cGdyYWRlID0gYXN5bmMgKGNtZDogYW55LCBjYWxsYmFjazogYW55ID0gcHJvY2Vzcy5leGl0KTogUHJvbWlzZTxudW1iZXI+ID0+IHtcbiAgY29uc3Qge2NsaU5hbWUgPSAnTGV4JywgY2xpUGFja2FnZSA9ICdAbmxhYnMvbGV4JywgcXVpZXR9ID0gY21kO1xuXG4gIC8vIERpc3BsYXkgc3RhdHVzXG4gIGxvZyhgVXBncmFkaW5nICR7Y2xpTmFtZX0uLi5gLCAnaW5mbycsIHF1aWV0KTtcblxuICAvLyBTcGlubmVyXG4gIGNvbnN0IHNwaW5uZXIgPSBjcmVhdGVTcGlubmVyKHF1aWV0KTtcblxuICAvLyBHZXQgY3VzdG9tIGNvbmZpZ3VyYXRpb25cbiAgYXdhaXQgTGV4Q29uZmlnLnBhcnNlQ29uZmlnKGNtZCk7XG5cbiAgcmV0dXJuIGxhdGVzdFZlcnNpb24oJ0BubGFicy9sZXgnKVxuICAgIC50aGVuKGFzeW5jIChsYXRlc3Q6IHN0cmluZykgPT4ge1xuICAgICAgY29uc3QgY3VycmVudDogc3RyaW5nID0gcGFyc2VWZXJzaW9uKHBhY2thZ2VKc29uLnZlcnNpb24pO1xuICAgICAgY29uc3QgdmVyc2lvbkRpZmY6IG51bWJlciA9IGNvbXBhcmVWZXJzaW9ucyhsYXRlc3QsIGN1cnJlbnQpO1xuXG4gICAgICBpZih2ZXJzaW9uRGlmZiA9PT0gMCkge1xuICAgICAgICBsb2coYFxcbkN1cnJlbnRseSB1cC10by1kYXRlLiBWZXJzaW9uICR7bGF0ZXN0fSBpcyB0aGUgbGF0ZXN0LmAsICdub3RlJywgcXVpZXQpO1xuICAgICAgICBjYWxsYmFjaygwKTtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgICB9XG5cbiAgICAgIGxvZyhgXFxuQ3VycmVudGx5IG91dCBvZiBkYXRlLiBVcGdyYWRpbmcgZnJvbSB2ZXJzaW9uICR7Y3VycmVudH0gdG8gJHtsYXRlc3R9Li4uYCwgJ25vdGUnLCBxdWlldCk7XG5cbiAgICAgIGNvbnN0IHVwZ3JhZGVPcHRpb25zOiBzdHJpbmdbXSA9IFsnaW5zdGFsbCcsICctZycsIGAke2NsaVBhY2thZ2V9QGxhdGVzdGBdO1xuXG4gICAgICBhd2FpdCBleGVjYSgnbnBtJywgdXBncmFkZU9wdGlvbnMsIHtcbiAgICAgICAgZW5jb2Rpbmc6ICd1dGY4JyxcbiAgICAgICAgc3RkaW86ICdpbmhlcml0J1xuICAgICAgfSk7XG5cbiAgICAgIC8vIFN0b3AgbG9hZGVyXG4gICAgICBzcGlubmVyLnN1Y2NlZWQoYFN1Y2Nlc3NmdWxseSB1cGRhdGVkICR7Y2xpTmFtZX0hYCk7XG5cbiAgICAgIC8vIFN0b3AgcHJvY2Vzc1xuICAgICAgY2FsbGJhY2soMCk7XG4gICAgICByZXR1cm4gMDtcbiAgICB9KVxuICAgIC5jYXRjaCgoZXJyb3IpID0+IHtcbiAgICAgIC8vIERpc3BsYXkgZXJyb3IgbWVzc2FnZVxuICAgICAgbG9nKGBcXG4ke2NsaU5hbWV9IEVycm9yOiAke2Vycm9yLm1lc3NhZ2V9YCwgJ2Vycm9yJywgcXVpZXQpO1xuXG4gICAgICAvLyBTdG9wIHNwaW5uZXJcbiAgICAgIHNwaW5uZXIuZmFpbCgnRmFpbGVkIHRvIHVwZGF0ZWQgcGFja2FnZXMuJyk7XG5cbiAgICAgIC8vIEtpbGwgcHJvY2Vzc1xuICAgICAgY2FsbGJhY2soMSk7XG4gICAgICByZXR1cm4gMTtcbiAgICB9KTtcbn07XG4iXSwKICAibWFwcGluZ3MiOiAiQUFJQSxTQUFRLHVCQUFzQjtBQUM5QixTQUFRLGFBQVk7QUFDcEIsT0FBTyxtQkFBbUI7QUFFMUIsT0FBTyxpQkFBaUIscUJBQXFCLE9BQU8sRUFBQyxNQUFNLE9BQU07QUFDakUsU0FBUSxpQkFBZ0I7QUFDeEIsU0FBUSxxQkFBb0I7QUFDNUIsU0FBUSxXQUFVO0FBQ2xCLFNBQVEsb0JBQW1CO0FBRXBCLE1BQU0sVUFBVSxPQUFPLEtBQVUsV0FBZ0IsUUFBUSxTQUEwQjtBQUN4RixRQUFNLEVBQUMsVUFBVSxPQUFPLGFBQWEsY0FBYyxNQUFLLElBQUk7QUFHNUQsTUFBSSxhQUFhLE9BQU8sT0FBTyxRQUFRLEtBQUs7QUFHNUMsUUFBTSxVQUFVLGNBQWMsS0FBSztBQUduQyxRQUFNLFVBQVUsWUFBWSxHQUFHO0FBRS9CLFNBQU8sY0FBYyxZQUFZLEVBQzlCLEtBQUssT0FBTyxXQUFtQjtBQUM5QixVQUFNLFVBQWtCLGFBQWEsWUFBWSxPQUFPO0FBQ3hELFVBQU0sY0FBc0IsZ0JBQWdCLFFBQVEsT0FBTztBQUUzRCxRQUFHLGdCQUFnQixHQUFHO0FBQ3BCLFVBQUk7QUFBQSxnQ0FBbUMsTUFBTSxtQkFBbUIsUUFBUSxLQUFLO0FBQzdFLGVBQVMsQ0FBQztBQUNWLGFBQU87QUFBQSxJQUNUO0FBRUEsUUFBSTtBQUFBLGdEQUFtRCxPQUFPLE9BQU8sTUFBTSxPQUFPLFFBQVEsS0FBSztBQUUvRixVQUFNLGlCQUEyQixDQUFDLFdBQVcsTUFBTSxHQUFHLFVBQVUsU0FBUztBQUV6RSxVQUFNLE1BQU0sT0FBTyxnQkFBZ0I7QUFBQSxNQUNqQyxVQUFVO0FBQUEsTUFDVixPQUFPO0FBQUEsSUFDVCxDQUFDO0FBR0QsWUFBUSxRQUFRLHdCQUF3QixPQUFPLEdBQUc7QUFHbEQsYUFBUyxDQUFDO0FBQ1YsV0FBTztBQUFBLEVBQ1QsQ0FBQyxFQUNBLE1BQU0sQ0FBQyxVQUFVO0FBRWhCLFFBQUk7QUFBQSxFQUFLLE9BQU8sV0FBVyxNQUFNLE9BQU8sSUFBSSxTQUFTLEtBQUs7QUFHMUQsWUFBUSxLQUFLLDZCQUE2QjtBQUcxQyxhQUFTLENBQUM7QUFDVixXQUFPO0FBQUEsRUFDVCxDQUFDO0FBQ0w7IiwKICAibmFtZXMiOiBbXQp9Cg==
47
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL3VwZ3JhZGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge2NvbXBhcmVWZXJzaW9uc30gZnJvbSAnY29tcGFyZS12ZXJzaW9ucyc7XG5pbXBvcnQge2V4ZWNhfSBmcm9tICdleGVjYSc7XG5pbXBvcnQge3JlYWRGaWxlU3luY30gZnJvbSAnZnMnO1xuaW1wb3J0IGxhdGVzdFZlcnNpb24gZnJvbSAnbGF0ZXN0LXZlcnNpb24nO1xuaW1wb3J0IHtmaWxlVVJMVG9QYXRofSBmcm9tICd1cmwnO1xuXG5pbXBvcnQge0xleENvbmZpZ30gZnJvbSAnLi4vTGV4Q29uZmlnLmpzJztcbmltcG9ydCB7Y3JlYXRlU3Bpbm5lcn0gZnJvbSAnLi4vdXRpbHMvYXBwLmpzJztcbmltcG9ydCB7bG9nfSBmcm9tICcuLi91dGlscy9sb2cuanMnO1xuaW1wb3J0IHtwYXJzZVZlcnNpb259IGZyb20gJy4vdmVyc2lvbnMuanMnO1xuXG5jb25zdCBwYWNrYWdlUGF0aCA9IGZpbGVVUkxUb1BhdGgobmV3IFVSTCgnLi4vLi4vcGFja2FnZS5qc29uJywgaW1wb3J0Lm1ldGEudXJsKSk7XG5jb25zdCBwYWNrYWdlSnNvbiA9IEpTT04ucGFyc2UocmVhZEZpbGVTeW5jKHBhY2thZ2VQYXRoLCAndXRmOCcpKTtcblxuZXhwb3J0IGNvbnN0IHVwZ3JhZGUgPSBhc3luYyAoY21kOiBhbnksIGNhbGxiYWNrOiBhbnkgPSBwcm9jZXNzLmV4aXQpOiBQcm9taXNlPG51bWJlcj4gPT4ge1xuICBjb25zdCB7Y2xpTmFtZSA9ICdMZXgnLCBjbGlQYWNrYWdlID0gJ0BubGFicy9sZXgnLCBxdWlldH0gPSBjbWQ7XG5cbiAgLy8gRGlzcGxheSBzdGF0dXNcbiAgbG9nKGBVcGdyYWRpbmcgJHtjbGlOYW1lfS4uLmAsICdpbmZvJywgcXVpZXQpO1xuXG4gIC8vIFNwaW5uZXJcbiAgY29uc3Qgc3Bpbm5lciA9IGNyZWF0ZVNwaW5uZXIocXVpZXQpO1xuXG4gIC8vIEdldCBjdXN0b20gY29uZmlndXJhdGlvblxuICBhd2FpdCBMZXhDb25maWcucGFyc2VDb25maWcoY21kKTtcblxuICByZXR1cm4gbGF0ZXN0VmVyc2lvbignQG5sYWJzL2xleCcpXG4gICAgLnRoZW4oYXN5bmMgKGxhdGVzdDogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBjdXJyZW50OiBzdHJpbmcgPSBwYXJzZVZlcnNpb24ocGFja2FnZUpzb24udmVyc2lvbik7XG4gICAgICBjb25zdCB2ZXJzaW9uRGlmZjogbnVtYmVyID0gY29tcGFyZVZlcnNpb25zKGxhdGVzdCwgY3VycmVudCk7XG5cbiAgICAgIGlmKHZlcnNpb25EaWZmID09PSAwKSB7XG4gICAgICAgIGxvZyhgXFxuQ3VycmVudGx5IHVwLXRvLWRhdGUuIFZlcnNpb24gJHtsYXRlc3R9IGlzIHRoZSBsYXRlc3QuYCwgJ25vdGUnLCBxdWlldCk7XG4gICAgICAgIGNhbGxiYWNrKDApO1xuICAgICAgICByZXR1cm4gMDtcbiAgICAgIH1cblxuICAgICAgbG9nKGBcXG5DdXJyZW50bHkgb3V0IG9mIGRhdGUuIFVwZ3JhZGluZyBmcm9tIHZlcnNpb24gJHtjdXJyZW50fSB0byAke2xhdGVzdH0uLi5gLCAnbm90ZScsIHF1aWV0KTtcblxuICAgICAgY29uc3QgdXBncmFkZU9wdGlvbnM6IHN0cmluZ1tdID0gWydpbnN0YWxsJywgJy1nJywgYCR7Y2xpUGFja2FnZX1AbGF0ZXN0YF07XG5cbiAgICAgIGF3YWl0IGV4ZWNhKCducG0nLCB1cGdyYWRlT3B0aW9ucywge1xuICAgICAgICBlbmNvZGluZzogJ3V0ZjgnLFxuICAgICAgICBzdGRpbzogJ2luaGVyaXQnXG4gICAgICB9KTtcblxuICAgICAgLy8gU3RvcCBsb2FkZXJcbiAgICAgIHNwaW5uZXIuc3VjY2VlZChgU3VjY2Vzc2Z1bGx5IHVwZGF0ZWQgJHtjbGlOYW1lfSFgKTtcblxuICAgICAgLy8gU3RvcCBwcm9jZXNzXG4gICAgICBjYWxsYmFjaygwKTtcbiAgICAgIHJldHVybiAwO1xuICAgIH0pXG4gICAgLmNhdGNoKChlcnJvcikgPT4ge1xuICAgICAgLy8gRGlzcGxheSBlcnJvciBtZXNzYWdlXG4gICAgICBsb2coYFxcbiR7Y2xpTmFtZX0gRXJyb3I6ICR7ZXJyb3IubWVzc2FnZX1gLCAnZXJyb3InLCBxdWlldCk7XG5cbiAgICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgICAgc3Bpbm5lci5mYWlsKCdGYWlsZWQgdG8gdXBkYXRlZCBwYWNrYWdlcy4nKTtcblxuICAgICAgLy8gS2lsbCBwcm9jZXNzXG4gICAgICBjYWxsYmFjaygxKTtcbiAgICAgIHJldHVybiAxO1xuICAgIH0pO1xufTtcbiJdLAogICJtYXBwaW5ncyI6ICJBQUlBLFNBQVEsdUJBQXNCO0FBQzlCLFNBQVEsYUFBWTtBQUNwQixTQUFRLG9CQUFtQjtBQUMzQixPQUFPLG1CQUFtQjtBQUMxQixTQUFRLHFCQUFvQjtBQUU1QixTQUFRLGlCQUFnQjtBQUN4QixTQUFRLHFCQUFvQjtBQUM1QixTQUFRLFdBQVU7QUFDbEIsU0FBUSxvQkFBbUI7QUFFM0IsTUFBTSxjQUFjLGNBQWMsSUFBSSxJQUFJLHNCQUFzQixZQUFZLEdBQUcsQ0FBQztBQUNoRixNQUFNLGNBQWMsS0FBSyxNQUFNLGFBQWEsYUFBYSxNQUFNLENBQUM7QUFFekQsTUFBTSxVQUFVLE9BQU8sS0FBVSxXQUFnQixRQUFRLFNBQTBCO0FBQ3hGLFFBQU0sRUFBQyxVQUFVLE9BQU8sYUFBYSxjQUFjLE1BQUssSUFBSTtBQUc1RCxNQUFJLGFBQWEsT0FBTyxPQUFPLFFBQVEsS0FBSztBQUc1QyxRQUFNLFVBQVUsY0FBYyxLQUFLO0FBR25DLFFBQU0sVUFBVSxZQUFZLEdBQUc7QUFFL0IsU0FBTyxjQUFjLFlBQVksRUFDOUIsS0FBSyxPQUFPLFdBQW1CO0FBQzlCLFVBQU0sVUFBa0IsYUFBYSxZQUFZLE9BQU87QUFDeEQsVUFBTSxjQUFzQixnQkFBZ0IsUUFBUSxPQUFPO0FBRTNELFFBQUcsZ0JBQWdCLEdBQUc7QUFDcEIsVUFBSTtBQUFBLGdDQUFtQyxNQUFNLG1CQUFtQixRQUFRLEtBQUs7QUFDN0UsZUFBUyxDQUFDO0FBQ1YsYUFBTztBQUFBLElBQ1Q7QUFFQSxRQUFJO0FBQUEsZ0RBQW1ELE9BQU8sT0FBTyxNQUFNLE9BQU8sUUFBUSxLQUFLO0FBRS9GLFVBQU0saUJBQTJCLENBQUMsV0FBVyxNQUFNLEdBQUcsVUFBVSxTQUFTO0FBRXpFLFVBQU0sTUFBTSxPQUFPLGdCQUFnQjtBQUFBLE1BQ2pDLFVBQVU7QUFBQSxNQUNWLE9BQU87QUFBQSxJQUNULENBQUM7QUFHRCxZQUFRLFFBQVEsd0JBQXdCLE9BQU8sR0FBRztBQUdsRCxhQUFTLENBQUM7QUFDVixXQUFPO0FBQUEsRUFDVCxDQUFDLEVBQ0EsTUFBTSxDQUFDLFVBQVU7QUFFaEIsUUFBSTtBQUFBLEVBQUssT0FBTyxXQUFXLE1BQU0sT0FBTyxJQUFJLFNBQVMsS0FBSztBQUcxRCxZQUFRLEtBQUssNkJBQTZCO0FBRzFDLGFBQVMsQ0FBQztBQUNWLFdBQU87QUFBQSxFQUNULENBQUM7QUFDTDsiLAogICJuYW1lcyI6IFtdCn0K
@@ -1,5 +1,8 @@
1
- import packageJson from "../../package.json" assert { type: "json" };
1
+ import { readFileSync } from "fs";
2
+ import { fileURLToPath } from "url";
2
3
  import { log } from "../utils/log.js";
4
+ const packagePath = fileURLToPath(new URL("../../package.json", import.meta.url));
5
+ const packageJson = JSON.parse(readFileSync(packagePath, "utf8"));
3
6
  const parseVersion = (packageVersion) => packageVersion?.replace(/\^/g, "");
4
7
  const packages = {
5
8
  esbuild: parseVersion(packageJson.dependencies.esbuild),
@@ -35,4 +38,4 @@ export {
35
38
  parseVersion,
36
39
  versions
37
40
  };
38
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL3ZlcnNpb25zLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOC1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuLy8gQHRzLWlnbm9yZVxuaW1wb3J0IHBhY2thZ2VKc29uIGZyb20gJy4uLy4uL3BhY2thZ2UuanNvbicgYXNzZXJ0IHt0eXBlOidqc29uJ307XG5pbXBvcnQge2xvZ30gZnJvbSAnLi4vdXRpbHMvbG9nLmpzJztcblxuZXhwb3J0IGNvbnN0IHBhcnNlVmVyc2lvbiA9IChwYWNrYWdlVmVyc2lvbjogc3RyaW5nKTogc3RyaW5nID0+IHBhY2thZ2VWZXJzaW9uPy5yZXBsYWNlKC9cXF4vZywgJycpO1xuXG5leHBvcnQgY29uc3QgcGFja2FnZXMgPSB7XG4gIGVzYnVpbGQ6IHBhcnNlVmVyc2lvbihwYWNrYWdlSnNvbi5kZXBlbmRlbmNpZXMuZXNidWlsZCksXG4gIGplc3Q6IHBhcnNlVmVyc2lvbihwYWNrYWdlSnNvbi5kZXBlbmRlbmNpZXMuamVzdCksXG4gIGxleDogcGFja2FnZUpzb24udmVyc2lvbixcbiAgdHlwZXNjcmlwdDogcGFyc2VWZXJzaW9uKHBhY2thZ2VKc29uLmRlcGVuZGVuY2llcy50eXBlc2NyaXB0KSxcbiAgd2VicGFjazogcGFyc2VWZXJzaW9uKHBhY2thZ2VKc29uLmRlcGVuZGVuY2llcy53ZWJwYWNrKVxufTtcblxuZXhwb3J0IGNvbnN0IGpzb25WZXJzaW9ucyA9IChsZXhQYWNrYWdlcykgPT4gT2JqZWN0LmtleXMobGV4UGFja2FnZXMpLnJlZHVjZSgobGlzdCwga2V5KSA9PiB7XG4gIGxpc3Rba2V5XSA9IHBhY2thZ2VzW2tleV07XG4gIHJldHVybiBsaXN0O1xufSwge30pO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZlcnNpb25zQ21kIHtcbiAgcmVhZG9ubHkganNvbj86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBjb25zdCB2ZXJzaW9ucyA9IChjbWQ6IFZlcnNpb25zQ21kLCBjYWxsYmFjazogKHN0YXR1czogbnVtYmVyKSA9PiB2b2lkKTogUHJvbWlzZTxudW1iZXI+ID0+IHtcbiAgaWYoY21kLmpzb24pIHtcbiAgICBjb25zb2xlLmxvZyhKU09OLnN0cmluZ2lmeShqc29uVmVyc2lvbnMocGFja2FnZXMpKSk7XG4gIH0gZWxzZSB7XG4gICAgbG9nKCdWZXJzaW9uczonLCAnaW5mbycsIGZhbHNlKTtcbiAgICBsb2coYCAgTGV4OiAke3BhY2thZ2VzLmxleH1gLCAnaW5mbycsIGZhbHNlKTtcbiAgICBsb2coJyAgLS0tLS0tLS0tLScsICdub3RlJywgZmFsc2UpO1xuICAgIGxvZyhgICBFU0J1aWxkOiAke3BhY2thZ2VzLmVzYnVpbGR9YCwgJ2luZm8nLCBmYWxzZSk7XG4gICAgbG9nKGAgIEplc3Q6ICR7cGFja2FnZXMuamVzdH1gLCAnaW5mbycsIGZhbHNlKTtcbiAgICBsb2coYCAgVHlwZXNjcmlwdDogJHtwYWNrYWdlcy50eXBlc2NyaXB0fWAsICdpbmZvJywgZmFsc2UpO1xuICAgIGxvZyhgICBXZWJwYWNrOiAke3BhY2thZ2VzLndlYnBhY2t9YCwgJ2luZm8nLCBmYWxzZSk7XG4gIH1cblxuICBpZihjYWxsYmFjaykge1xuICAgIGNhbGxiYWNrKDApO1xuICB9XG5cbiAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgwKTtcbn07XG4iXSwKICAibWFwcGluZ3MiOiAiQUFLQSxPQUFPLGlCQUFpQixxQkFBcUIsT0FBTyxFQUFDLE1BQUssT0FBTTtBQUNoRSxTQUFRLFdBQVU7QUFFWCxNQUFNLGVBQWUsQ0FBQyxtQkFBbUMsZ0JBQWdCLFFBQVEsT0FBTyxFQUFFO0FBRTFGLE1BQU0sV0FBVztBQUFBLEVBQ3RCLFNBQVMsYUFBYSxZQUFZLGFBQWEsT0FBTztBQUFBLEVBQ3RELE1BQU0sYUFBYSxZQUFZLGFBQWEsSUFBSTtBQUFBLEVBQ2hELEtBQUssWUFBWTtBQUFBLEVBQ2pCLFlBQVksYUFBYSxZQUFZLGFBQWEsVUFBVTtBQUFBLEVBQzVELFNBQVMsYUFBYSxZQUFZLGFBQWEsT0FBTztBQUN4RDtBQUVPLE1BQU0sZUFBZSxDQUFDLGdCQUFnQixPQUFPLEtBQUssV0FBVyxFQUFFLE9BQU8sQ0FBQyxNQUFNLFFBQVE7QUFDMUYsT0FBSyxHQUFHLElBQUksU0FBUyxHQUFHO0FBQ3hCLFNBQU87QUFDVCxHQUFHLENBQUMsQ0FBQztBQU1FLE1BQU0sV0FBVyxDQUFDLEtBQWtCLGFBQXdEO0FBQ2pHLE1BQUcsSUFBSSxNQUFNO0FBQ1gsWUFBUSxJQUFJLEtBQUssVUFBVSxhQUFhLFFBQVEsQ0FBQyxDQUFDO0FBQUEsRUFDcEQsT0FBTztBQUNMLFFBQUksYUFBYSxRQUFRLEtBQUs7QUFDOUIsUUFBSSxVQUFVLFNBQVMsR0FBRyxJQUFJLFFBQVEsS0FBSztBQUMzQyxRQUFJLGdCQUFnQixRQUFRLEtBQUs7QUFDakMsUUFBSSxjQUFjLFNBQVMsT0FBTyxJQUFJLFFBQVEsS0FBSztBQUNuRCxRQUFJLFdBQVcsU0FBUyxJQUFJLElBQUksUUFBUSxLQUFLO0FBQzdDLFFBQUksaUJBQWlCLFNBQVMsVUFBVSxJQUFJLFFBQVEsS0FBSztBQUN6RCxRQUFJLGNBQWMsU0FBUyxPQUFPLElBQUksUUFBUSxLQUFLO0FBQUEsRUFDckQ7QUFFQSxNQUFHLFVBQVU7QUFDWCxhQUFTLENBQUM7QUFBQSxFQUNaO0FBRUEsU0FBTyxRQUFRLFFBQVEsQ0FBQztBQUMxQjsiLAogICJuYW1lcyI6IFtdCn0K
41
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL3ZlcnNpb25zLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOC1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHtyZWFkRmlsZVN5bmN9IGZyb20gJ2ZzJztcbmltcG9ydCB7ZmlsZVVSTFRvUGF0aH0gZnJvbSAndXJsJztcblxuaW1wb3J0IHtsb2d9IGZyb20gJy4uL3V0aWxzL2xvZy5qcyc7XG5cbmNvbnN0IHBhY2thZ2VQYXRoID0gZmlsZVVSTFRvUGF0aChuZXcgVVJMKCcuLi8uLi9wYWNrYWdlLmpzb24nLCBpbXBvcnQubWV0YS51cmwpKTtcbmNvbnN0IHBhY2thZ2VKc29uID0gSlNPTi5wYXJzZShyZWFkRmlsZVN5bmMocGFja2FnZVBhdGgsICd1dGY4JykpO1xuXG5leHBvcnQgY29uc3QgcGFyc2VWZXJzaW9uID0gKHBhY2thZ2VWZXJzaW9uOiBzdHJpbmcpOiBzdHJpbmcgPT4gcGFja2FnZVZlcnNpb24/LnJlcGxhY2UoL1xcXi9nLCAnJyk7XG5cbmV4cG9ydCBjb25zdCBwYWNrYWdlcyA9IHtcbiAgZXNidWlsZDogcGFyc2VWZXJzaW9uKHBhY2thZ2VKc29uLmRlcGVuZGVuY2llcy5lc2J1aWxkKSxcbiAgamVzdDogcGFyc2VWZXJzaW9uKHBhY2thZ2VKc29uLmRlcGVuZGVuY2llcy5qZXN0KSxcbiAgbGV4OiBwYWNrYWdlSnNvbi52ZXJzaW9uLFxuICB0eXBlc2NyaXB0OiBwYXJzZVZlcnNpb24ocGFja2FnZUpzb24uZGVwZW5kZW5jaWVzLnR5cGVzY3JpcHQpLFxuICB3ZWJwYWNrOiBwYXJzZVZlcnNpb24ocGFja2FnZUpzb24uZGVwZW5kZW5jaWVzLndlYnBhY2spXG59O1xuXG5leHBvcnQgY29uc3QganNvblZlcnNpb25zID0gKGxleFBhY2thZ2VzKSA9PiBPYmplY3Qua2V5cyhsZXhQYWNrYWdlcykucmVkdWNlKChsaXN0LCBrZXkpID0+IHtcbiAgbGlzdFtrZXldID0gcGFja2FnZXNba2V5XTtcbiAgcmV0dXJuIGxpc3Q7XG59LCB7fSk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVmVyc2lvbnNDbWQge1xuICByZWFkb25seSBqc29uPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IHZlcnNpb25zID0gKGNtZDogVmVyc2lvbnNDbWQsIGNhbGxiYWNrOiAoc3RhdHVzOiBudW1iZXIpID0+IHZvaWQpOiBQcm9taXNlPG51bWJlcj4gPT4ge1xuICBpZihjbWQuanNvbikge1xuICAgIGNvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KGpzb25WZXJzaW9ucyhwYWNrYWdlcykpKTtcbiAgfSBlbHNlIHtcbiAgICBsb2coJ1ZlcnNpb25zOicsICdpbmZvJywgZmFsc2UpO1xuICAgIGxvZyhgICBMZXg6ICR7cGFja2FnZXMubGV4fWAsICdpbmZvJywgZmFsc2UpO1xuICAgIGxvZygnICAtLS0tLS0tLS0tJywgJ25vdGUnLCBmYWxzZSk7XG4gICAgbG9nKGAgIEVTQnVpbGQ6ICR7cGFja2FnZXMuZXNidWlsZH1gLCAnaW5mbycsIGZhbHNlKTtcbiAgICBsb2coYCAgSmVzdDogJHtwYWNrYWdlcy5qZXN0fWAsICdpbmZvJywgZmFsc2UpO1xuICAgIGxvZyhgICBUeXBlc2NyaXB0OiAke3BhY2thZ2VzLnR5cGVzY3JpcHR9YCwgJ2luZm8nLCBmYWxzZSk7XG4gICAgbG9nKGAgIFdlYnBhY2s6ICR7cGFja2FnZXMud2VicGFja31gLCAnaW5mbycsIGZhbHNlKTtcbiAgfVxuXG4gIGlmKGNhbGxiYWNrKSB7XG4gICAgY2FsbGJhY2soMCk7XG4gIH1cblxuICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKDApO1xufTtcbiJdLAogICJtYXBwaW5ncyI6ICJBQUlBLFNBQVEsb0JBQW1CO0FBQzNCLFNBQVEscUJBQW9CO0FBRTVCLFNBQVEsV0FBVTtBQUVsQixNQUFNLGNBQWMsY0FBYyxJQUFJLElBQUksc0JBQXNCLFlBQVksR0FBRyxDQUFDO0FBQ2hGLE1BQU0sY0FBYyxLQUFLLE1BQU0sYUFBYSxhQUFhLE1BQU0sQ0FBQztBQUV6RCxNQUFNLGVBQWUsQ0FBQyxtQkFBbUMsZ0JBQWdCLFFBQVEsT0FBTyxFQUFFO0FBRTFGLE1BQU0sV0FBVztBQUFBLEVBQ3RCLFNBQVMsYUFBYSxZQUFZLGFBQWEsT0FBTztBQUFBLEVBQ3RELE1BQU0sYUFBYSxZQUFZLGFBQWEsSUFBSTtBQUFBLEVBQ2hELEtBQUssWUFBWTtBQUFBLEVBQ2pCLFlBQVksYUFBYSxZQUFZLGFBQWEsVUFBVTtBQUFBLEVBQzVELFNBQVMsYUFBYSxZQUFZLGFBQWEsT0FBTztBQUN4RDtBQUVPLE1BQU0sZUFBZSxDQUFDLGdCQUFnQixPQUFPLEtBQUssV0FBVyxFQUFFLE9BQU8sQ0FBQyxNQUFNLFFBQVE7QUFDMUYsT0FBSyxHQUFHLElBQUksU0FBUyxHQUFHO0FBQ3hCLFNBQU87QUFDVCxHQUFHLENBQUMsQ0FBQztBQU1FLE1BQU0sV0FBVyxDQUFDLEtBQWtCLGFBQXdEO0FBQ2pHLE1BQUcsSUFBSSxNQUFNO0FBQ1gsWUFBUSxJQUFJLEtBQUssVUFBVSxhQUFhLFFBQVEsQ0FBQyxDQUFDO0FBQUEsRUFDcEQsT0FBTztBQUNMLFFBQUksYUFBYSxRQUFRLEtBQUs7QUFDOUIsUUFBSSxVQUFVLFNBQVMsR0FBRyxJQUFJLFFBQVEsS0FBSztBQUMzQyxRQUFJLGdCQUFnQixRQUFRLEtBQUs7QUFDakMsUUFBSSxjQUFjLFNBQVMsT0FBTyxJQUFJLFFBQVEsS0FBSztBQUNuRCxRQUFJLFdBQVcsU0FBUyxJQUFJLElBQUksUUFBUSxLQUFLO0FBQzdDLFFBQUksaUJBQWlCLFNBQVMsVUFBVSxJQUFJLFFBQVEsS0FBSztBQUN6RCxRQUFJLGNBQWMsU0FBUyxPQUFPLElBQUksUUFBUSxLQUFLO0FBQUEsRUFDckQ7QUFFQSxNQUFHLFVBQVU7QUFDWCxhQUFTLENBQUM7QUFBQSxFQUNaO0FBRUEsU0FBTyxRQUFRLFFBQVEsQ0FBQztBQUMxQjsiLAogICJuYW1lcyI6IFtdCn0K
package/dist/lex.js CHANGED
@@ -1,6 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import { Option, program } from "commander";
3
- import packageJson from "../package.json" assert { type: "json" };
3
+ import { readFileSync } from "fs";
4
+ import { fileURLToPath } from "url";
4
5
  import { build } from "./commands/build.js";
5
6
  import { clean } from "./commands/clean.js";
6
7
  import { compile } from "./commands/compile.js";
@@ -16,6 +17,8 @@ import { test } from "./commands/test.js";
16
17
  import { update } from "./commands/update.js";
17
18
  import { upgrade } from "./commands/upgrade.js";
18
19
  import { versions } from "./commands/versions.js";
20
+ const packagePath = fileURLToPath(new URL("../package.json", import.meta.url));
21
+ const packageJson = JSON.parse(readFileSync(packagePath, "utf8"));
19
22
  program.command("build").option("--analyze", "It invokes webpack-bundle-analyzer plugin to get bundle information.", false).addOption(new Option("--bundler <name>", 'Bundler to use ("webpack" or "esbuild"). Default: "webpack".').choices(["webpack", "esbuild"]).default("webpack")).option("--config <path>", "Custom Webpack configuration file path (ie. webpack.config.js).").option("--configName <value...>", "Name of the configuration to use.").option("--defineProcessEnvNodeEnv <value>", "Sets process.env.NODE_ENV to the specified value. (Currently an alias for `--node-env`)").option("--devtool <value>", "A developer tool to enhance debugging (false | eval | [inline-|hidden-|eval-][nosources-][cheap-[module-]]source-map).").option("--disableInterpret", "Disable interpret for loading the config file.", false).option("--entry <value...>", "A module that is loaded upon startup. Only the last one is exported.").option("--env <value>", "Environment passed to the configuration when it is a function.").option("--failOnWarnings", "Stop webpack-cli process with non-zero exit code on warnings from webpack", false).addOption(new Option("--format <value>", 'This sets the output format for the generated JavaScript files. Default: "cjs".').choices(["cjs", "esm"]).default("cjs")).option("--json <value>", "Prints result as JSON or store it in a file.").option("--lexConfig <path>", "Lex configuration file path (lex.config.js).").option("--merge", 'Merge two or more configurations using "webpack-merge".', false).addOption(new Option("--mode <type>", 'Webpack mode ("production" or "development"). Default: "development".').choices(["development", "production"]).default("development")).option("--name <value>", "Name of the configuration. Used when loading multiple configurations.").option("--noDevtool", 'Negative "devtool" option.', false).option("--noStats", 'Negative "stats" option.', false).option("--noTarget", 'Negative "target" option.', false).option("--noWatch", 'Negative "watch" option.', false).option("--noWatchOptionsStdin", 'Negative "watch-options-stdin" option.', false).option("--nodeEnv <value>", "Sets process.env.NODE_ENV to the specified value.").option("--outputPath <value>", "The output directory as **absolute path** (required).").option("--quiet", "No Lex notifications printed in the console.", false).option("--remove", "Removes all files from the output directory before compiling.", false).option("--sourcePath <path>", "Source path").option("--stats <value>", "Stats options object or preset name.").option("--static", "Creates static HTML files when building app.", false).option("--target <value>", "Environment to build for. Environment to build for. An array of environments to build for all of them when possible.").option("--typescript", "Transpile as Typescript.", false).option("--variables <name>", `Environment variables to set in "process.env". (ie. "{NODE_ENV: 'production'}").`).option("--watch", "Watch for changes.", false).option("--watchOptionsStdin", "Stop watching when stdin stream has ended.", false).action((cmd) => build(cmd, process.exit).then(() => {
20
23
  }));
21
24
  program.command("clean").option("--quiet", "No Lex notifications printed in the console.").option("--snapshots", 'Remove all "__snapshots__" directories.').action((cmd) => clean(cmd, process.exit).then(() => {
@@ -38,7 +41,7 @@ program.command("migrate").option("-q, --quiet", "No Lex notifications printed i
38
41
  }));
39
42
  program.command("publish").addOption(new Option("--bump <type>", 'Increments the version. Types include: major, minor, patch, beta, alpha, rc. Default: "patch".').choices(["major", "minor", "patch", "beta", "alpha", "rc"]).default("patch")).option("--newVersion <versionNumber>", "Publish as a specific version.").option("--otp <code>", "Provide a two-factor code.").addOption(new Option("--package-manager <manager>", "Which package manager to use. Default: npm").choices(["npm", "yarn"]).default("npm")).option("--private", "Publishes the module as restricted.").option("--quiet", "No Lex notifications printed in the console.").option("--tag <tag>", "Registers the published package with the given tag.").action((cmd) => publish(cmd, process.exit).then(() => {
40
43
  }));
41
- program.command("test").option("--bail", "Exit the test suite immediately upon the first failing test suite.").option("--changedFilesWithAncestor", "Runs tests related to the current changes and the changes made in the last commit.").option("--changedSince", "Runs tests related the changes since the provided branch.").option("--ci", "When this option is provided, Jest will assume it is running in a CI environment.").option("--clearCache", "Clear Jest cache.").option("--collectCoverageFrom <glob>", "A glob pattern relative to matching the files that coverage info needs to be collected from.").option("--colors", "Forces test results output highlighting even if stdout is not a TTY.").option("--config <path>", "Custom Jest configuration file path (ie. jest.config.js).").option("--debug", "Print debugging info about your Jest config.").option("--detectOpenHandles", "Attempt to collect and print open handles preventing Jest from exiting cleanly").option("--environment <name>", 'Target environment. "node" or "web". Default: "node".').option("--env", "The test environment used for all tests. This can point to any file or node module. Examples: jsdom, node or path/to/my-environment.js.").option("--errorOnDeprecated", "Make calling deprecated APIs throw helpful error messages.").option("--expand", "Use this flag to show full diffs and errors instead of a patch.").option("--forceExit", "Force Jest to exit after all tests have completed running.").option("--json", "Prints the test results in JSON.").option("--lastCommit", "Run all tests affected by file changes in the last commit made.").option("--lexConfig <path>", "Custom Lex configuration file path (ie. lex.config.js).").option("--listTests", "Lists all tests as JSON that Jest will run given the arguments, and exits.").option("--logHeapUsage", "Logs the heap usage after every test.").option("--maxWorkers <num>", "Specifies the maximum number of workers the worker-pool will spawn for running tests. ").option("--noStackTrace", "Disables stack trace in test results output.").option("--notify", "Activates notifications for test results.").option("--onlyChanged", "un based on which files have changed in the current repository. ").option("--outputFile <filename>", "Write test results to a file when the --json option is also specified.").option("--passWithNoTests", "Allows the test suite to pass when no files are found.").option("--quiet", "No Lex notifications printed in the console.").option("--runInBand", "Run all tests serially in the current process, rather than creating a worker pool of child processes that run tests.").option("--setup <path>", "Jest setup file path.").option("--showConfig", "Print your Jest config and then exits.").option("--silent", "Prevent tests from printing messages through the console.").option("--testLocationInResults", "Adds a location field to test results.").option("--testNamePattern <regex>", "Run only tests with a name that matches the regex. ").option("--testPathPattern <regex>", "A regexp pattern string that is matched against all tests paths before executing the test.").option("--typescript", "Transpile as Typescript.").option("--update", 'Update snapshots. Runs "jest --updateSnapshots"').option("--useStderr", "Divert all output to stderr.").option("--verbose", "Display individual test results with the test suite hierarchy.").option("--watch <path>", "Watch files for changes and rerun tests related to changed files.").option("--watchAll", "Watch files for changes and rerun all tests when something changes.").action((cmd) => test(cmd, process.exit).then(() => {
44
+ program.command("test").option("--bail", "Exit the test suite immediately upon the first failing test suite.").option("--changedFilesWithAncestor", "Runs tests related to the current changes and the changes made in the last commit.").option("--changedSince", "Runs tests related the changes since the provided branch.").option("--ci", "When this option is provided, Jest will assume it is running in a CI environment.").option("--clearCache", "Clear Jest cache.").option("--collectCoverageFrom <glob>", "A glob pattern relative to matching the files that coverage info needs to be collected from.").option("--colors", "Forces test results output highlighting even if stdout is not a TTY.").option("--config <path>", "Custom Jest configuration file path (ie. jest.config.js).").option("--debug", "Print debugging info about your Jest config.").option("--detectOpenHandles", "Attempt to collect and print open handles preventing Jest from exiting cleanly").option("--environment <name>", 'Target environment. "node" or "web". Default: "node".').option("--env", "The test environment used for all tests. This can point to any file or node module. Examples: jsdom, node or path/to/my-environment.js.").option("--errorOnDeprecated", "Make calling deprecated APIs throw helpful error messages.").option("--expand", "Use this flag to show full diffs and errors instead of a patch.").option("--forceExit", "Force Jest to exit after all tests have completed running.").option("--json", "Prints the test results in JSON.").option("--lastCommit", "Run all tests affected by file changes in the last commit made.").option("--lexConfig <path>", "Custom Lex configuration file path (ie. lex.config.js).").option("--listTests", "Lists all tests as JSON that Jest will run given the arguments, and exits.").option("--logHeapUsage", "Logs the heap usage after every test.").option("--maxWorkers <num>", "Specifies the maximum number of workers the worker-pool will spawn for running tests. ").option("--noStackTrace", "Disables stack trace in test results output.").option("--notify", "Activates notifications for test results.").option("--onlyChanged", "un based on which files have changed in the current repository. ").option("--outputFile <filename>", "Write test results to a file when the --json option is also specified.").option("--passWithNoTests", "Allows the test suite to pass when no files are found.").option("--quiet", "No Lex notifications printed in the console.").option("--runInBand", "Run all tests serially in the current process, rather than creating a worker pool of child processes that run tests.").option("--setup <path>", "Jest setup file path.").option("--showConfig", "Print your Jest config and then exits.").option("--silent", "Prevent tests from printing messages through the console.").option("--testLocationInResults", "Adds a location field to test results.").option("--testNamePattern <regex>", "Run only tests with a name that matches the regex. ").option("--testPathPattern <regex>", "A regexp pattern string that is matched against all tests paths before executing the test.").option("--typescript", "Transpile as Typescript.").option("--update", 'Update snapshots. Runs "jest --updateSnapshots"').option("--useStderr", "Divert all output to stderr.").option("--verbose", "Display individual test results with the test suite hierarchy.").option("--watch <path>", "Watch files for changes and rerun tests related to changed files.").option("--watchAll", "Watch files for changes and rerun all tests when something changes.").action((options, cmd) => test(options, cmd.args, process.exit).then(() => {
42
45
  }));
43
46
  program.command("update").option("--interactive", "Choose which packages to update.").addOption(new Option("--package-manager <manager>", "Which package manager to use. Default: npm").choices(["npm", "yarn"]).default("npm")).option("--quiet", "No Lex notifications printed in the console.").option("--registry", "Add a custom registry url.").action((cmd) => update(cmd, process.exit).then(() => {
44
47
  }));
@@ -47,4 +50,4 @@ program.command("upgrade").addOption(new Option("--package-manager <manager>", "
47
50
  program.command("versions").option("--json", "Print the version as a JSON object.").action((cmd) => versions(cmd, process.exit).then(() => {
48
51
  }));
49
52
  program.version(packageJson.version).parse(process.argv);
50
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2xleC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiIyEvdXNyL2Jpbi9lbnYgbm9kZVxuLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7T3B0aW9uLCBwcm9ncmFtfSBmcm9tICdjb21tYW5kZXInO1xuXG5pbXBvcnQgcGFja2FnZUpzb24gZnJvbSAnLi4vcGFja2FnZS5qc29uJyBhc3NlcnQge3R5cGU6ICdqc29uJ307XG5pbXBvcnQge2J1aWxkfSBmcm9tICcuL2NvbW1hbmRzL2J1aWxkLmpzJztcbmltcG9ydCB7Y2xlYW59IGZyb20gJy4vY29tbWFuZHMvY2xlYW4uanMnO1xuaW1wb3J0IHtjb21waWxlfSBmcm9tICcuL2NvbW1hbmRzL2NvbXBpbGUuanMnO1xuaW1wb3J0IHtjb25maWd9IGZyb20gJy4vY29tbWFuZHMvY29uZmlnLmpzJztcbmltcG9ydCB7Y3JlYXRlfSBmcm9tICcuL2NvbW1hbmRzL2NyZWF0ZS5qcyc7XG5pbXBvcnQge2Rldn0gZnJvbSAnLi9jb21tYW5kcy9kZXYuanMnO1xuaW1wb3J0IHtpbml0fSBmcm9tICcuL2NvbW1hbmRzL2luaXQuanMnO1xuaW1wb3J0IHtsaW5rZWR9IGZyb20gJy4vY29tbWFuZHMvbGluay5qcyc7XG5pbXBvcnQge2xpbnR9IGZyb20gJy4vY29tbWFuZHMvbGludC5qcyc7XG5pbXBvcnQge21pZ3JhdGV9IGZyb20gJy4vY29tbWFuZHMvbWlncmF0ZS5qcyc7XG5pbXBvcnQge3B1Ymxpc2h9IGZyb20gJy4vY29tbWFuZHMvcHVibGlzaC5qcyc7XG5pbXBvcnQge3Rlc3R9IGZyb20gJy4vY29tbWFuZHMvdGVzdC5qcyc7XG5pbXBvcnQge3VwZGF0ZX0gZnJvbSAnLi9jb21tYW5kcy91cGRhdGUuanMnO1xuaW1wb3J0IHt1cGdyYWRlfSBmcm9tICcuL2NvbW1hbmRzL3VwZ3JhZGUuanMnO1xuaW1wb3J0IHt2ZXJzaW9uc30gZnJvbSAnLi9jb21tYW5kcy92ZXJzaW9ucy5qcyc7XG5cbi8vIENvbW1hbmRzXG5wcm9ncmFtLmNvbW1hbmQoJ2J1aWxkJylcbiAgLm9wdGlvbignLS1hbmFseXplJywgJ0l0IGludm9rZXMgd2VicGFjay1idW5kbGUtYW5hbHl6ZXIgcGx1Z2luIHRvIGdldCBidW5kbGUgaW5mb3JtYXRpb24uJywgZmFsc2UpXG4gIC5hZGRPcHRpb24obmV3IE9wdGlvbignLS1idW5kbGVyIDxuYW1lPicsICdCdW5kbGVyIHRvIHVzZSAoXCJ3ZWJwYWNrXCIgb3IgXCJlc2J1aWxkXCIpLiBEZWZhdWx0OiBcIndlYnBhY2tcIi4nKS5jaG9pY2VzKFsnd2VicGFjaycsICdlc2J1aWxkJ10pLmRlZmF1bHQoJ3dlYnBhY2snKSlcbiAgLm9wdGlvbignLS1jb25maWcgPHBhdGg+JywgJ0N1c3RvbSBXZWJwYWNrIGNvbmZpZ3VyYXRpb24gZmlsZSBwYXRoIChpZS4gd2VicGFjay5jb25maWcuanMpLicpXG4gIC5vcHRpb24oJy0tY29uZmlnTmFtZSA8dmFsdWUuLi4+JywgJ05hbWUgb2YgdGhlIGNvbmZpZ3VyYXRpb24gdG8gdXNlLicpXG4gIC5vcHRpb24oJy0tZGVmaW5lUHJvY2Vzc0Vudk5vZGVFbnYgPHZhbHVlPicsICdTZXRzIHByb2Nlc3MuZW52Lk5PREVfRU5WIHRvIHRoZSBzcGVjaWZpZWQgdmFsdWUuIChDdXJyZW50bHkgYW4gYWxpYXMgZm9yIGAtLW5vZGUtZW52YCknKVxuICAub3B0aW9uKCctLWRldnRvb2wgPHZhbHVlPicsICdBIGRldmVsb3BlciB0b29sIHRvIGVuaGFuY2UgZGVidWdnaW5nIChmYWxzZSB8IGV2YWwgfCBbaW5saW5lLXxoaWRkZW4tfGV2YWwtXVtub3NvdXJjZXMtXVtjaGVhcC1bbW9kdWxlLV1dc291cmNlLW1hcCkuJylcbiAgLm9wdGlvbignLS1kaXNhYmxlSW50ZXJwcmV0JywgJ0Rpc2FibGUgaW50ZXJwcmV0IGZvciBsb2FkaW5nIHRoZSBjb25maWcgZmlsZS4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1lbnRyeSA8dmFsdWUuLi4+JywgJ0EgbW9kdWxlIHRoYXQgaXMgbG9hZGVkIHVwb24gc3RhcnR1cC4gT25seSB0aGUgbGFzdCBvbmUgaXMgZXhwb3J0ZWQuJylcbiAgLm9wdGlvbignLS1lbnYgPHZhbHVlPicsICdFbnZpcm9ubWVudCBwYXNzZWQgdG8gdGhlIGNvbmZpZ3VyYXRpb24gd2hlbiBpdCBpcyBhIGZ1bmN0aW9uLicpXG4gIC5vcHRpb24oJy0tZmFpbE9uV2FybmluZ3MnLCAnU3RvcCB3ZWJwYWNrLWNsaSBwcm9jZXNzIHdpdGggbm9uLXplcm8gZXhpdCBjb2RlIG9uIHdhcm5pbmdzIGZyb20gd2VicGFjaycsIGZhbHNlKVxuICAuYWRkT3B0aW9uKG5ldyBPcHRpb24oJy0tZm9ybWF0IDx2YWx1ZT4nLCAnVGhpcyBzZXRzIHRoZSBvdXRwdXQgZm9ybWF0IGZvciB0aGUgZ2VuZXJhdGVkIEphdmFTY3JpcHQgZmlsZXMuIERlZmF1bHQ6IFwiY2pzXCIuJykuY2hvaWNlcyhbJ2NqcycsICdlc20nXSkuZGVmYXVsdCgnY2pzJykpXG4gIC5vcHRpb24oJy0tanNvbiA8dmFsdWU+JywgJ1ByaW50cyByZXN1bHQgYXMgSlNPTiBvciBzdG9yZSBpdCBpbiBhIGZpbGUuJylcbiAgLm9wdGlvbignLS1sZXhDb25maWcgPHBhdGg+JywgJ0xleCBjb25maWd1cmF0aW9uIGZpbGUgcGF0aCAobGV4LmNvbmZpZy5qcykuJylcbiAgLm9wdGlvbignLS1tZXJnZScsICdNZXJnZSB0d28gb3IgbW9yZSBjb25maWd1cmF0aW9ucyB1c2luZyBcIndlYnBhY2stbWVyZ2VcIi4nLCBmYWxzZSlcbiAgLmFkZE9wdGlvbihuZXcgT3B0aW9uKCctLW1vZGUgPHR5cGU+JywgJ1dlYnBhY2sgbW9kZSAoXCJwcm9kdWN0aW9uXCIgb3IgXCJkZXZlbG9wbWVudFwiKS4gRGVmYXVsdDogXCJkZXZlbG9wbWVudFwiLicpLmNob2ljZXMoWydkZXZlbG9wbWVudCcsICdwcm9kdWN0aW9uJ10pLmRlZmF1bHQoJ2RldmVsb3BtZW50JykpXG4gIC5vcHRpb24oJy0tbmFtZSA8dmFsdWU+JywgJ05hbWUgb2YgdGhlIGNvbmZpZ3VyYXRpb24uIFVzZWQgd2hlbiBsb2FkaW5nIG11bHRpcGxlIGNvbmZpZ3VyYXRpb25zLicpXG4gIC5vcHRpb24oJy0tbm9EZXZ0b29sJywgJ05lZ2F0aXZlIFwiZGV2dG9vbFwiIG9wdGlvbi4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1ub1N0YXRzJywgJ05lZ2F0aXZlIFwic3RhdHNcIiBvcHRpb24uJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tbm9UYXJnZXQnLCAnTmVnYXRpdmUgXCJ0YXJnZXRcIiBvcHRpb24uJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tbm9XYXRjaCcsICdOZWdhdGl2ZSBcIndhdGNoXCIgb3B0aW9uLicsIGZhbHNlKVxuICAub3B0aW9uKCctLW5vV2F0Y2hPcHRpb25zU3RkaW4nLCAnTmVnYXRpdmUgXCJ3YXRjaC1vcHRpb25zLXN0ZGluXCIgb3B0aW9uLicsIGZhbHNlKVxuICAub3B0aW9uKCctLW5vZGVFbnYgPHZhbHVlPicsICdTZXRzIHByb2Nlc3MuZW52Lk5PREVfRU5WIHRvIHRoZSBzcGVjaWZpZWQgdmFsdWUuJylcbiAgLm9wdGlvbignLS1vdXRwdXRQYXRoIDx2YWx1ZT4nLCAnVGhlIG91dHB1dCBkaXJlY3RvcnkgYXMgKiphYnNvbHV0ZSBwYXRoKiogKHJlcXVpcmVkKS4nKVxuICAub3B0aW9uKCctLXF1aWV0JywgJ05vIExleCBub3RpZmljYXRpb25zIHByaW50ZWQgaW4gdGhlIGNvbnNvbGUuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tcmVtb3ZlJywgJ1JlbW92ZXMgYWxsIGZpbGVzIGZyb20gdGhlIG91dHB1dCBkaXJlY3RvcnkgYmVmb3JlIGNvbXBpbGluZy4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1zb3VyY2VQYXRoIDxwYXRoPicsICdTb3VyY2UgcGF0aCcpXG4gIC5vcHRpb24oJy0tc3RhdHMgPHZhbHVlPicsICdTdGF0cyBvcHRpb25zIG9iamVjdCBvciBwcmVzZXQgbmFtZS4nKVxuICAub3B0aW9uKCctLXN0YXRpYycsICdDcmVhdGVzIHN0YXRpYyBIVE1MIGZpbGVzIHdoZW4gYnVpbGRpbmcgYXBwLicsIGZhbHNlKVxuICAub3B0aW9uKCctLXRhcmdldCA8dmFsdWU+JywgJ0Vudmlyb25tZW50IHRvIGJ1aWxkIGZvci4gRW52aXJvbm1lbnQgdG8gYnVpbGQgZm9yLiBBbiBhcnJheSBvZiBlbnZpcm9ubWVudHMgdG8gYnVpbGQgZm9yIGFsbCBvZiB0aGVtIHdoZW4gcG9zc2libGUuJylcbiAgLm9wdGlvbignLS10eXBlc2NyaXB0JywgJ1RyYW5zcGlsZSBhcyBUeXBlc2NyaXB0LicsIGZhbHNlKVxuICAub3B0aW9uKCctLXZhcmlhYmxlcyA8bmFtZT4nLCAnRW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIHNldCBpbiBcInByb2Nlc3MuZW52XCIuIChpZS4gXCJ7Tk9ERV9FTlY6IFxcJ3Byb2R1Y3Rpb25cXCd9XCIpLicpXG4gIC5vcHRpb24oJy0td2F0Y2gnLCAnV2F0Y2ggZm9yIGNoYW5nZXMuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0td2F0Y2hPcHRpb25zU3RkaW4nLCAnU3RvcCB3YXRjaGluZyB3aGVuIHN0ZGluIHN0cmVhbSBoYXMgZW5kZWQuJywgZmFsc2UpXG4gIC5hY3Rpb24oKGNtZCkgPT4gYnVpbGQoY21kLCBwcm9jZXNzLmV4aXQpLnRoZW4oKCkgPT4ge30pKTtcblxucHJvZ3JhbS5jb21tYW5kKCdjbGVhbicpXG4gIC5vcHRpb24oJy0tcXVpZXQnLCAnTm8gTGV4IG5vdGlmaWNhdGlvbnMgcHJpbnRlZCBpbiB0aGUgY29uc29sZS4nKVxuICAub3B0aW9uKCctLXNuYXBzaG90cycsICdSZW1vdmUgYWxsIFwiX19zbmFwc2hvdHNfX1wiIGRpcmVjdG9yaWVzLicpXG4gIC5hY3Rpb24oKGNtZCkgPT4gY2xlYW4oY21kLCBwcm9jZXNzLmV4aXQpLnRoZW4oKCkgPT4ge30pKTtcblxucHJvZ3JhbS5jb21tYW5kKCdjb25maWcgPHR5cGU+JylcbiAgLm9wdGlvbignLS1xdWlldCcsICdObyBMZXggbm90aWZpY2F0aW9ucyBwcmludGVkIGluIHRoZSBjb25zb2xlLicpXG4gIC5vcHRpb24oJy0tanNvbiA8cGF0aD4nLCAnU2F2ZSBvdXRwdXQgdG8ganNvbiBmaWxlLicpXG4gIC5hY3Rpb24oKHR5cGUsIGNtZCkgPT4gY29uZmlnKHR5cGUsIGNtZCwgcHJvY2Vzcy5leGl0KS50aGVuKCgpID0+IHt9KSk7XG5cbnByb2dyYW0uY29tbWFuZCgnY29tcGlsZScpXG4gIC5vcHRpb24oJy0tY29uZmlnIDxwYXRoPicsICdUcmFuc3BpbGVyIGNvbmZpZ3VyYXRpb24gZmlsZSBwYXRoIChpZS4gdHNjb25maWcuanNvbikuJylcbiAgLm9wdGlvbignLS1lbnZpcm9ubWVudCA8bmFtZT4nLCAnVGFyZ2V0IGVudmlyb25tZW50LiBcIm5vZGVcIiBvciBcIndlYlwiLiBEZWZhdWx0OiBcIm5vZGVcIi4nKVxuICAub3B0aW9uKCctLWxleENvbmZpZyA8cGF0aD4nLCAnQ3VzdG9tIExleCBjb25maWd1cmF0aW9uIGZpbGUgcGF0aCAoaWUuIGxleC5jb25maWcuanMpLicpXG4gIC5vcHRpb24oJy0tb3V0cHV0UGF0aCA8cGF0aD4nLCAnT3V0cHV0IHBhdGgnKVxuICAub3B0aW9uKCctLXJlbW92ZScsICdSZW1vdmVzIGFsbCBmaWxlcyBmcm9tIHRoZSBvdXRwdXQgZGlyZWN0b3J5IGJlZm9yZSBjb21waWxpbmcuJylcbiAgLm9wdGlvbignLS1zb3VyY2VQYXRoIDxwYXRoPicsICdTb3VyY2UgcGF0aCcpXG4gIC5vcHRpb24oJy0tdHlwZXNjcmlwdCcsICdUcmFuc3BpbGUgYXMgVHlwZXNjcmlwdC4nKVxuICAub3B0aW9uKCctLXF1aWV0JywgJ05vIExleCBub3RpZmljYXRpb25zIHByaW50ZWQgaW4gdGhlIGNvbnNvbGUuJylcbiAgLm9wdGlvbignLS13YXRjaCcsICdXYXRjaGVzIGZvciBjaGFuZ2VzIGFuZCBjb21waWxlcy4nKVxuICAuYWN0aW9uKChjbWQpID0+IGNvbXBpbGUoY21kLCBwcm9jZXNzLmV4aXQpLnRoZW4oKCkgPT4ge30pKTtcblxucHJvZ3JhbS5jb21tYW5kKCdjcmVhdGUgPHR5cGU+JylcbiAgLm9wdGlvbignLS1vdXRwdXRGaWxlIDxwYXRoPicsICdPdXRwdXQgZmlsZW5hbWUuJylcbiAgLm9wdGlvbignLS1vdXRwdXROYW1lIDxuYW1lPicsICdPdXRwdXQgbmFtZS4nKVxuICAub3B0aW9uKCctLXF1aWV0JywgJ05vIExleCBub3RpZmljYXRpb25zIHByaW50ZWQgaW4gdGhlIGNvbnNvbGUuJylcbiAgLm9wdGlvbignLS10eXBlc2NyaXB0JywgJ0NyZWF0ZSBUeXBlc2NyaXB0IHZlcnNpb24uJylcbiAgLmFjdGlvbigodHlwZSwgY21kKSA9PiBjcmVhdGUodHlwZSwgY21kLCBwcm9jZXNzLmV4aXQpLnRoZW4oKCkgPT4ge30pKTtcblxucHJvZ3JhbS5jb21tYW5kKCdkZXYnKVxuICAub3B0aW9uKCctLWJ1bmRsZUFuYWx5emVyJywgJ1J1biBidW5kbGUgYW5hbHl6ZXIuJylcbiAgLm9wdGlvbignLS1jb25maWcgPHBhdGg+JywgJ0N1c3RvbSBXZWJwYWNrIGNvbmZpZ3VyYXRpb24gZmlsZSBwYXRoIChpZS4gd2VicGFjay5jb25maWcuanMpLicpXG4gIC5vcHRpb24oJy0tbGV4Q29uZmlnIDxwYXRoPicsICdDdXN0b20gTGV4IGNvbmZpZ3VyYXRpb24gZmlsZSBwYXRoIChpZS4gbGV4LmNvbmZpZy5qcykuJylcbiAgLm9wdGlvbignLS1vcGVuJywgJ0F1dG9tYXRpY2FsbHkgb3BlbiBkZXYgc2VydmVyIGluIGEgbmV3IGJyb3dzZXIgd2luZG93LicpXG4gIC5vcHRpb24oJy0tb3V0cHV0UGF0aCA8cGF0aD4nLCAnT3V0cHV0IHBhdGgnKVxuICAub3B0aW9uKCctLXF1aWV0JywgJ05vIExleCBub3RpZmljYXRpb25zIHByaW50ZWQgaW4gdGhlIGNvbnNvbGUuJylcbiAgLm9wdGlvbignLS1yZW1vdmUnLCAnUmVtb3ZlcyBhbGwgZmlsZXMgZnJvbSB0aGUgb3V0cHV0IGRpcmVjdG9yeSBiZWZvcmUgY29tcGlsaW5nLicpXG4gIC5vcHRpb24oJy0tc291cmNlUGF0aCA8cGF0aD4nLCAnU291cmNlIHBhdGgnKVxuICAub3B0aW9uKCctLXR5cGVzY3JpcHQnLCAnVHJhbnNwaWxlIGFzIFR5cGVzY3JpcHQuJylcbiAgLm9wdGlvbignLS12YXJpYWJsZXMgPG5hbWU+JywgJ0Vudmlyb25tZW50IHZhcmlhYmxlcyB0byBzZXQgaW4gXCJwcm9jZXNzLmVudlwiLiAoaWUuIFwie05PREVfRU5WOiBcXCdkZXZlbG9wbWVudFxcJ31cIikuJylcbiAgLm9wdGlvbignLS13YXRjaCcsICdXYXRjaCBmb3IgY2hhbmdlcy4nKVxuICAuYWN0aW9uKChjbWQpID0+IGRldihjbWQsIHByb2Nlc3MuZXhpdCkudGhlbigoKSA9PiB7fSkpO1xuXG5wcm9ncmFtLmNvbW1hbmQoJ2luaXQgPGFwcE5hbWU+IFtwYWNrYWdlTmFtZV0nKVxuICAub3B0aW9uKCctLWluc3RhbGwnLCAnSW5zdGFsbCBkZXBlbmRlbmNpZXMuJylcbiAgLmFkZE9wdGlvbihuZXcgT3B0aW9uKCctLXBhY2thZ2UtbWFuYWdlciA8bWFuYWdlcj4nLCAnV2hpY2ggcGFja2FnZSBtYW5hZ2VyIHRvIHVzZS4gRGVmYXVsdDogbnBtJykuY2hvaWNlcyhbJ25wbScsICd5YXJuJ10pLmRlZmF1bHQoJ25wbScpKVxuICAub3B0aW9uKCctLXF1aWV0JywgJ05vIExleCBub3RpZmljYXRpb25zIHByaW50ZWQgaW4gdGhlIGNvbnNvbGUuJylcbiAgLm9wdGlvbignLS10eXBlc2NyaXB0JywgJ1VzZSBhIFR5cGVzY3JpcHQgYmFzZWQgYXBwLicpXG4gIC5hY3Rpb24oKGFwcE5hbWUsIHBhY2thZ2VOYW1lLCBjbWQpID0+IGluaXQoYXBwTmFtZSwgcGFja2FnZU5hbWUsIGNtZCwgcHJvY2Vzcy5leGl0KS50aGVuKCgpID0+IHt9KSk7XG5cbnByb2dyYW0uY29tbWFuZCgnbGlua2VkJylcbiAgLm9wdGlvbignLS1xdWlldCcsICdObyBMZXggbm90aWZpY2F0aW9ucyBwcmludGVkIGluIHRoZSBjb25zb2xlLicpXG4gIC5hY3Rpb24oKGNtZCkgPT4gbGlua2VkKGNtZCwgcHJvY2Vzcy5leGl0KS50aGVuKCgpID0+IHt9KSk7XG5cbnByb2dyYW0uY29tbWFuZCgnbGludCcpXG4gIC5vcHRpb24oJy0tY2FjaGUnLCAnT25seSBjaGVjayBjaGFuZ2VkIGZpbGVzLiBEZWZhdWx0OiBmYWxzZS4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1jYWNoZUxvY2F0aW9uIDxwYXRoPicsICdQYXRoIHRvIHRoZSBjYWNoZSBmaWxlIG9yIGRpcmVjdG9yeS4nKVxuICAub3B0aW9uKCctLWNvbG9yJywgJ0ZvcmNlIGVuYWJsaW5nIG9mIGNvbG9yLicsIGZhbHNlKVxuICAub3B0aW9uKCctLWNvbmZpZyA8cGF0aD4nLCAnVXNlIHRoaXMgY29uZmlndXJhdGlvbiwgb3ZlcnJpZGluZyAuZXNsaW50cmMuKiBjb25maWcgb3B0aW9ucyBpZiBwcmVzZW50LicpXG4gIC5vcHRpb24oJy0tZGVidWcnLCAnT3V0cHV0IGRlYnVnZ2luZyBpbmZvcm1hdGlvbi4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1lbnZJbmZvJywgJ091dHB1dCBleGVjdXRpb24gZW52aXJvbm1lbnQgaW5mb3JtYXRpb24uIERlZmF1bHQ6IGZhbHNlLicsIGZhbHNlKVxuICAub3B0aW9uKCctLWVudiA8bmFtZT4nLCAnU3BlY2lmeSBlbnZpcm9ubWVudHMuJylcbiAgLm9wdGlvbignLS1leHQgPHR5cGU+JywgJ1NwZWNpZnkgSmF2YVNjcmlwdCBmaWxlIGV4dGVuc2lvbnMuIERlZmF1bHQ6IC5qcy4nKVxuICAub3B0aW9uKCctLWZpeCcsICdBdXRvbWF0aWNhbGx5IGZpeCBwcm9ibGVtcy4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1maXhEcnlSdW4nLCAnQXV0b21hdGljYWxseSBmaXggcHJvYmxlbXMgd2l0aG91dCBzYXZpbmcgdGhlIGNoYW5nZXMgdG8gdGhlIGZpbGUgc3lzdGVtLicsIGZhbHNlKVxuICAub3B0aW9uKCctLWZpeFR5cGUgPHR5cGU+JywgJ1NwZWNpZnkgdGhlIHR5cGVzIG9mIGZpeGVzIHRvIGFwcGx5IChwcm9ibGVtLCBzdWdnZXN0aW9uLCBsYXlvdXQpLicpXG4gIC5vcHRpb24oJy0tZm9ybWF0IDxuYW1lPicsICdVc2UgYSBzcGVjaWZpYyBvdXRwdXQgZm9ybWF0LiBEZWZhdWx0OiBzdHlsaXNoLicpXG4gIC5vcHRpb24oJy0tZ2xvYmFsIDx2YXJpYWJsZXM+JywgJ0RlZmluZSBnbG9iYWwgdmFyaWFibGVzLicpXG4gIC5vcHRpb24oJy0taWdub3JlUGF0aCA8cGF0aD4nLCAnU3BlY2lmeSBwYXRoIG9mIGlnbm9yZSBmaWxlLicpXG4gIC5vcHRpb24oJy0taWdub3JlUGF0dGVybiA8cGF0dGVybj4nLCAnUGF0dGVybiBvZiBmaWxlcyB0byBpZ25vcmUgKGluIGFkZGl0aW9uIHRvIHRob3NlIGluIC5lc2xpbnRpZ25vcmUpLicpXG4gIC5vcHRpb24oJy0taW5pdCcsICdSdW4gY29uZmlnIGluaXRpYWxpemF0aW9uIHdpemFyZC4gRGVmYXVsdDogZmFsc2UuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tbWF4V2FybmluZ3MgPG51bT4nLCAnTnVtYmVyIG9mIHdhcm5pbmdzIHRvIHRyaWdnZXIgbm9uemVybyBleGl0IGNvZGUuIERlZmF1bHQ6IC0xLicpXG4gIC5vcHRpb24oJy0tbm9Db2xvcicsICdGb3JjZSBkaXNhYmxpbmcgb2YgY29sb3IuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tbm9Fc2xpbnRyYycsICdEaXNhYmxlIHVzZSBvZiBjb25maWd1cmF0aW9uIGZyb20gLmVzbGludHJjLiouJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tbm9JZ25vcmUnLCAnRGlzYWJsZSB1c2Ugb2YgaWdub3JlIGZpbGVzIGFuZCBwYXR0ZXJucy4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1ub0lubGluZUNvbmZpZycsICdQcmV2ZW50IGNvbW1lbnRzIGZyb20gY2hhbmdpbmcgY29uZmlnIG9yIHJ1bGVzLicsIGZhbHNlKVxuICAub3B0aW9uKCctLW91dHB1dEZpbGUgPHBhdGg+JywgJ1NwZWNpZnkgZmlsZSB0byB3cml0ZSByZXBvcnQgdG8uJylcbiAgLm9wdGlvbignLS1wYXJzZXIgPG5hbWU+JywgJ1NwZWNpZnkgdGhlIHBhcnNlciB0byBiZSB1c2VkLicpXG4gIC5vcHRpb24oJy0tcGFyc2VyT3B0aW9ucyA8b3B0aW9ucz4nLCAnU3BlY2lmeSBwYXJzZXIgb3B0aW9ucy4nKVxuICAub3B0aW9uKCctLXBsdWdpbiA8cGx1Z2lucz4nLCAnU3BlY2lmeSBwbHVnaW5zLicpXG4gIC5vcHRpb24oJy0tcHJpbnRDb25maWcgPHBhdGg+JywgJ1ByaW50IHRoZSBjb25maWd1cmF0aW9uIGZvciB0aGUgZ2l2ZW4gZmlsZS4nKVxuICAub3B0aW9uKCctLXF1aWV0JywgJ05vIExleCBub3RpZmljYXRpb25zIHByaW50ZWQgaW4gdGhlIGNvbnNvbGUuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tcmVwb3J0VW51c2VkRGlzYWJsZURpcmVjdGl2ZXMnLCAnQWRkcyByZXBvcnRlZCBlcnJvcnMgZm9yIHVudXNlZCBlc2xpbnQtZGlzYWJsZSBkaXJlY3RpdmVzLicsIGZhbHNlKVxuICAub3B0aW9uKCctLXJlc29sdmVQbHVnaW5zUmVsYXRpdmVUbyA8cGF0aD4nLCAnQSBmb2xkZXIgd2hlcmUgcGx1Z2lucyBzaG91bGQgYmUgcmVzb2x2ZWQgZnJvbS4nKVxuICAub3B0aW9uKCctLXJ1bGUgPHBhdGg+JywgJ1NwZWNpZnkgcnVsZXMuJylcbiAgLm9wdGlvbignLS1ydWxlc2RpciA8cGF0aD4nLCAnVXNlIGFkZGl0aW9uYWwgcnVsZXMgZnJvbSB0aGlzIGRpcmVjdG9yeS4nKVxuICAub3B0aW9uKCctLXN0ZGluJywgJ0xpbnQgY29kZSBwcm92aWRlZCBvbiA8U1RESU4+IC0gRGVmYXVsdDogZmFsc2UuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tc3RkaW5GaWxlbmFtZSA8bmFtZT4nLCAnU3BlY2lmeSBmaWxlbmFtZSB0byBwcm9jZXNzIFNURElOIGFzLicpXG4gIC5hY3Rpb24oKGNtZCkgPT4gbGludChjbWQsIHByb2Nlc3MuZXhpdCkudGhlbigoKSA9PiB7fSkpO1xuXG5wcm9ncmFtLmNvbW1hbmQoJ21pZ3JhdGUnKVxuICAub3B0aW9uKCctcSwgLS1xdWlldCcsICdObyBMZXggbm90aWZpY2F0aW9ucyBwcmludGVkIGluIHRoZSBjb25zb2xlLicpXG4gIC5hY3Rpb24oKGNtZCkgPT4gbWlncmF0ZShjbWQsIHByb2Nlc3MuZXhpdCkudGhlbigoKSA9PiB7fSkpO1xuXG5wcm9ncmFtLmNvbW1hbmQoJ3B1Ymxpc2gnKVxuICAuYWRkT3B0aW9uKG5ldyBPcHRpb24oJy0tYnVtcCA8dHlwZT4nLCAnSW5jcmVtZW50cyB0aGUgdmVyc2lvbi4gVHlwZXMgaW5jbHVkZTogbWFqb3IsIG1pbm9yLCBwYXRjaCwgYmV0YSwgYWxwaGEsIHJjLiBEZWZhdWx0OiBcInBhdGNoXCIuJykuY2hvaWNlcyhbJ21ham9yJywgJ21pbm9yJywgJ3BhdGNoJywgJ2JldGEnLCAnYWxwaGEnLCAncmMnXSkuZGVmYXVsdCgncGF0Y2gnKSlcbiAgLm9wdGlvbignLS1uZXdWZXJzaW9uIDx2ZXJzaW9uTnVtYmVyPicsICdQdWJsaXNoIGFzIGEgc3BlY2lmaWMgdmVyc2lvbi4nKVxuICAub3B0aW9uKCctLW90cCA8Y29kZT4nLCAnUHJvdmlkZSBhIHR3by1mYWN0b3IgY29kZS4nKVxuICAuYWRkT3B0aW9uKG5ldyBPcHRpb24oJy0tcGFja2FnZS1tYW5hZ2VyIDxtYW5hZ2VyPicsICdXaGljaCBwYWNrYWdlIG1hbmFnZXIgdG8gdXNlLiBEZWZhdWx0OiBucG0nKS5jaG9pY2VzKFsnbnBtJywgJ3lhcm4nXSkuZGVmYXVsdCgnbnBtJykpXG4gIC5vcHRpb24oJy0tcHJpdmF0ZScsICdQdWJsaXNoZXMgdGhlIG1vZHVsZSBhcyByZXN0cmljdGVkLicpXG4gIC5vcHRpb24oJy0tcXVpZXQnLCAnTm8gTGV4IG5vdGlmaWNhdGlvbnMgcHJpbnRlZCBpbiB0aGUgY29uc29sZS4nKVxuICAub3B0aW9uKCctLXRhZyA8dGFnPicsICdSZWdpc3RlcnMgdGhlIHB1Ymxpc2hlZCBwYWNrYWdlIHdpdGggdGhlIGdpdmVuIHRhZy4nKVxuICAuYWN0aW9uKChjbWQpID0+IHB1Ymxpc2goY21kLCBwcm9jZXNzLmV4aXQpLnRoZW4oKCkgPT4ge30pKTtcblxucHJvZ3JhbS5jb21tYW5kKCd0ZXN0JylcbiAgLm9wdGlvbignLS1iYWlsJywgJ0V4aXQgdGhlIHRlc3Qgc3VpdGUgaW1tZWRpYXRlbHkgdXBvbiB0aGUgZmlyc3QgZmFpbGluZyB0ZXN0IHN1aXRlLicpXG4gIC5vcHRpb24oJy0tY2hhbmdlZEZpbGVzV2l0aEFuY2VzdG9yJywgJ1J1bnMgdGVzdHMgcmVsYXRlZCB0byB0aGUgY3VycmVudCBjaGFuZ2VzIGFuZCB0aGUgY2hhbmdlcyBtYWRlIGluIHRoZSBsYXN0IGNvbW1pdC4nKVxuICAub3B0aW9uKCctLWNoYW5nZWRTaW5jZScsICdSdW5zIHRlc3RzIHJlbGF0ZWQgdGhlIGNoYW5nZXMgc2luY2UgdGhlIHByb3ZpZGVkIGJyYW5jaC4nKVxuICAub3B0aW9uKCctLWNpJywgJ1doZW4gdGhpcyBvcHRpb24gaXMgcHJvdmlkZWQsIEplc3Qgd2lsbCBhc3N1bWUgaXQgaXMgcnVubmluZyBpbiBhIENJIGVudmlyb25tZW50LicpXG4gIC5vcHRpb24oJy0tY2xlYXJDYWNoZScsICdDbGVhciBKZXN0IGNhY2hlLicpXG4gIC5vcHRpb24oJy0tY29sbGVjdENvdmVyYWdlRnJvbSA8Z2xvYj4nLCAnQSBnbG9iIHBhdHRlcm4gcmVsYXRpdmUgdG8gbWF0Y2hpbmcgdGhlIGZpbGVzIHRoYXQgY292ZXJhZ2UgaW5mbyBuZWVkcyB0byBiZSBjb2xsZWN0ZWQgZnJvbS4nKVxuICAub3B0aW9uKCctLWNvbG9ycycsICdGb3JjZXMgdGVzdCByZXN1bHRzIG91dHB1dCBoaWdobGlnaHRpbmcgZXZlbiBpZiBzdGRvdXQgaXMgbm90IGEgVFRZLicpXG4gIC5vcHRpb24oJy0tY29uZmlnIDxwYXRoPicsICdDdXN0b20gSmVzdCBjb25maWd1cmF0aW9uIGZpbGUgcGF0aCAoaWUuIGplc3QuY29uZmlnLmpzKS4nKVxuICAub3B0aW9uKCctLWRlYnVnJywgJ1ByaW50IGRlYnVnZ2luZyBpbmZvIGFib3V0IHlvdXIgSmVzdCBjb25maWcuJylcbiAgLm9wdGlvbignLS1kZXRlY3RPcGVuSGFuZGxlcycsICdBdHRlbXB0IHRvIGNvbGxlY3QgYW5kIHByaW50IG9wZW4gaGFuZGxlcyBwcmV2ZW50aW5nIEplc3QgZnJvbSBleGl0aW5nIGNsZWFubHknKVxuICAub3B0aW9uKCctLWVudmlyb25tZW50IDxuYW1lPicsICdUYXJnZXQgZW52aXJvbm1lbnQuIFwibm9kZVwiIG9yIFwid2ViXCIuIERlZmF1bHQ6IFwibm9kZVwiLicpXG4gIC5vcHRpb24oJy0tZW52JywgJ1RoZSB0ZXN0IGVudmlyb25tZW50IHVzZWQgZm9yIGFsbCB0ZXN0cy4gVGhpcyBjYW4gcG9pbnQgdG8gYW55IGZpbGUgb3Igbm9kZSBtb2R1bGUuIEV4YW1wbGVzOiBqc2RvbSwgbm9kZSBvciBwYXRoL3RvL215LWVudmlyb25tZW50LmpzLicpXG4gIC5vcHRpb24oJy0tZXJyb3JPbkRlcHJlY2F0ZWQnLCAnTWFrZSBjYWxsaW5nIGRlcHJlY2F0ZWQgQVBJcyB0aHJvdyBoZWxwZnVsIGVycm9yIG1lc3NhZ2VzLicpXG4gIC5vcHRpb24oJy0tZXhwYW5kJywgJ1VzZSB0aGlzIGZsYWcgdG8gc2hvdyBmdWxsIGRpZmZzIGFuZCBlcnJvcnMgaW5zdGVhZCBvZiBhIHBhdGNoLicpXG4gIC5vcHRpb24oJy0tZm9yY2VFeGl0JywgJ0ZvcmNlIEplc3QgdG8gZXhpdCBhZnRlciBhbGwgdGVzdHMgaGF2ZSBjb21wbGV0ZWQgcnVubmluZy4nKVxuICAub3B0aW9uKCctLWpzb24nLCAnUHJpbnRzIHRoZSB0ZXN0IHJlc3VsdHMgaW4gSlNPTi4nKVxuICAub3B0aW9uKCctLWxhc3RDb21taXQnLCAnUnVuIGFsbCB0ZXN0cyBhZmZlY3RlZCBieSBmaWxlIGNoYW5nZXMgaW4gdGhlIGxhc3QgY29tbWl0IG1hZGUuJylcbiAgLm9wdGlvbignLS1sZXhDb25maWcgPHBhdGg+JywgJ0N1c3RvbSBMZXggY29uZmlndXJhdGlvbiBmaWxlIHBhdGggKGllLiBsZXguY29uZmlnLmpzKS4nKVxuICAub3B0aW9uKCctLWxpc3RUZXN0cycsICdMaXN0cyBhbGwgdGVzdHMgYXMgSlNPTiB0aGF0IEplc3Qgd2lsbCBydW4gZ2l2ZW4gdGhlIGFyZ3VtZW50cywgYW5kIGV4aXRzLicpXG4gIC5vcHRpb24oJy0tbG9nSGVhcFVzYWdlJywgJ0xvZ3MgdGhlIGhlYXAgdXNhZ2UgYWZ0ZXIgZXZlcnkgdGVzdC4nKVxuICAub3B0aW9uKCctLW1heFdvcmtlcnMgPG51bT4nLCAnU3BlY2lmaWVzIHRoZSBtYXhpbXVtIG51bWJlciBvZiB3b3JrZXJzIHRoZSB3b3JrZXItcG9vbCB3aWxsIHNwYXduIGZvciBydW5uaW5nIHRlc3RzLiAnKVxuICAub3B0aW9uKCctLW5vU3RhY2tUcmFjZScsICdEaXNhYmxlcyBzdGFjayB0cmFjZSBpbiB0ZXN0IHJlc3VsdHMgb3V0cHV0LicpXG4gIC5vcHRpb24oJy0tbm90aWZ5JywgJ0FjdGl2YXRlcyBub3RpZmljYXRpb25zIGZvciB0ZXN0IHJlc3VsdHMuJylcbiAgLm9wdGlvbignLS1vbmx5Q2hhbmdlZCcsICd1biBiYXNlZCBvbiB3aGljaCBmaWxlcyBoYXZlIGNoYW5nZWQgaW4gdGhlIGN1cnJlbnQgcmVwb3NpdG9yeS4gJylcbiAgLm9wdGlvbignLS1vdXRwdXRGaWxlIDxmaWxlbmFtZT4nLCAnV3JpdGUgdGVzdCByZXN1bHRzIHRvIGEgZmlsZSB3aGVuIHRoZSAtLWpzb24gb3B0aW9uIGlzIGFsc28gc3BlY2lmaWVkLicpXG4gIC5vcHRpb24oJy0tcGFzc1dpdGhOb1Rlc3RzJywgJ0FsbG93cyB0aGUgdGVzdCBzdWl0ZSB0byBwYXNzIHdoZW4gbm8gZmlsZXMgYXJlIGZvdW5kLicpXG4gIC5vcHRpb24oJy0tcXVpZXQnLCAnTm8gTGV4IG5vdGlmaWNhdGlvbnMgcHJpbnRlZCBpbiB0aGUgY29uc29sZS4nKVxuICAub3B0aW9uKCctLXJ1bkluQmFuZCcsICdSdW4gYWxsIHRlc3RzIHNlcmlhbGx5IGluIHRoZSBjdXJyZW50IHByb2Nlc3MsIHJhdGhlciB0aGFuIGNyZWF0aW5nIGEgd29ya2VyIHBvb2wgb2YgY2hpbGQgcHJvY2Vzc2VzIHRoYXQgcnVuIHRlc3RzLicpXG4gIC5vcHRpb24oJy0tc2V0dXAgPHBhdGg+JywgJ0plc3Qgc2V0dXAgZmlsZSBwYXRoLicpXG4gIC5vcHRpb24oJy0tc2hvd0NvbmZpZycsICdQcmludCB5b3VyIEplc3QgY29uZmlnIGFuZCB0aGVuIGV4aXRzLicpXG4gIC5vcHRpb24oJy0tc2lsZW50JywgJ1ByZXZlbnQgdGVzdHMgZnJvbSBwcmludGluZyBtZXNzYWdlcyB0aHJvdWdoIHRoZSBjb25zb2xlLicpXG4gIC5vcHRpb24oJy0tdGVzdExvY2F0aW9uSW5SZXN1bHRzJywgJ0FkZHMgYSBsb2NhdGlvbiBmaWVsZCB0byB0ZXN0IHJlc3VsdHMuJylcbiAgLm9wdGlvbignLS10ZXN0TmFtZVBhdHRlcm4gPHJlZ2V4PicsICdSdW4gb25seSB0ZXN0cyB3aXRoIGEgbmFtZSB0aGF0IG1hdGNoZXMgdGhlIHJlZ2V4LiAnKVxuICAub3B0aW9uKCctLXRlc3RQYXRoUGF0dGVybiA8cmVnZXg+JywgJ0EgcmVnZXhwIHBhdHRlcm4gc3RyaW5nIHRoYXQgaXMgbWF0Y2hlZCBhZ2FpbnN0IGFsbCB0ZXN0cyBwYXRocyBiZWZvcmUgZXhlY3V0aW5nIHRoZSB0ZXN0LicpXG4gIC5vcHRpb24oJy0tdHlwZXNjcmlwdCcsICdUcmFuc3BpbGUgYXMgVHlwZXNjcmlwdC4nKVxuICAub3B0aW9uKCctLXVwZGF0ZScsICdVcGRhdGUgc25hcHNob3RzLiBSdW5zIFwiamVzdCAtLXVwZGF0ZVNuYXBzaG90c1wiJylcbiAgLm9wdGlvbignLS11c2VTdGRlcnInLCAnRGl2ZXJ0IGFsbCBvdXRwdXQgdG8gc3RkZXJyLicpXG4gIC5vcHRpb24oJy0tdmVyYm9zZScsICdEaXNwbGF5IGluZGl2aWR1YWwgdGVzdCByZXN1bHRzIHdpdGggdGhlIHRlc3Qgc3VpdGUgaGllcmFyY2h5LicpXG4gIC5vcHRpb24oJy0td2F0Y2ggPHBhdGg+JywgJ1dhdGNoIGZpbGVzIGZvciBjaGFuZ2VzIGFuZCByZXJ1biB0ZXN0cyByZWxhdGVkIHRvIGNoYW5nZWQgZmlsZXMuJylcbiAgLm9wdGlvbignLS13YXRjaEFsbCcsICdXYXRjaCBmaWxlcyBmb3IgY2hhbmdlcyBhbmQgcmVydW4gYWxsIHRlc3RzIHdoZW4gc29tZXRoaW5nIGNoYW5nZXMuJylcbiAgLmFjdGlvbigoY21kKSA9PiB0ZXN0KGNtZCwgcHJvY2Vzcy5leGl0KS50aGVuKCgpID0+IHt9KSk7XG5cbnByb2dyYW0uY29tbWFuZCgndXBkYXRlJylcbiAgLm9wdGlvbignLS1pbnRlcmFjdGl2ZScsICdDaG9vc2Ugd2hpY2ggcGFja2FnZXMgdG8gdXBkYXRlLicpXG4gIC5hZGRPcHRpb24obmV3IE9wdGlvbignLS1wYWNrYWdlLW1hbmFnZXIgPG1hbmFnZXI+JywgJ1doaWNoIHBhY2thZ2UgbWFuYWdlciB0byB1c2UuIERlZmF1bHQ6IG5wbScpLmNob2ljZXMoWyducG0nLCAneWFybiddKS5kZWZhdWx0KCducG0nKSlcbiAgLm9wdGlvbignLS1xdWlldCcsICdObyBMZXggbm90aWZpY2F0aW9ucyBwcmludGVkIGluIHRoZSBjb25zb2xlLicpXG4gIC5vcHRpb24oJy0tcmVnaXN0cnknLCAnQWRkIGEgY3VzdG9tIHJlZ2lzdHJ5IHVybC4nKVxuICAuYWN0aW9uKChjbWQpID0+IHVwZGF0ZShjbWQsIHByb2Nlc3MuZXhpdCkudGhlbigoKSA9PiB7fSkpO1xuXG5wcm9ncmFtLmNvbW1hbmQoJ3VwZ3JhZGUnKVxuICAuYWRkT3B0aW9uKG5ldyBPcHRpb24oJy0tcGFja2FnZS1tYW5hZ2VyIDxtYW5hZ2VyPicsICdXaGljaCBwYWNrYWdlIG1hbmFnZXIgdG8gdXNlLiBEZWZhdWx0OiBucG0nKS5jaG9pY2VzKFsnbnBtJywgJ3lhcm4nXSkuZGVmYXVsdCgnbnBtJykpXG4gIC5vcHRpb24oJy0tcXVpZXQnLCAnTm8gTGV4IG5vdGlmaWNhdGlvbnMgcHJpbnRlZCBpbiB0aGUgY29uc29sZS4nKVxuICAuYWN0aW9uKChjbWQpID0+IHVwZ3JhZGUoY21kLCBwcm9jZXNzLmV4aXQpLnRoZW4oKCkgPT4ge30pKTtcblxucHJvZ3JhbS5jb21tYW5kKCd2ZXJzaW9ucycpXG4gIC5vcHRpb24oJy0tanNvbicsICdQcmludCB0aGUgdmVyc2lvbiBhcyBhIEpTT04gb2JqZWN0LicpXG4gIC5hY3Rpb24oKGNtZCkgPT4gdmVyc2lvbnMoY21kLCBwcm9jZXNzLmV4aXQpLnRoZW4oKCkgPT4ge30pKTtcblxuLy8gSW5pdGlhbGl6ZVxucHJvZ3JhbVxuICAudmVyc2lvbihwYWNrYWdlSnNvbi52ZXJzaW9uKVxuICAucGFyc2UocHJvY2Vzcy5hcmd2KTtcbiJdLAogICJtYXBwaW5ncyI6ICI7QUFLQSxTQUFRLFFBQVEsZUFBYztBQUU5QixPQUFPLGlCQUFpQixrQkFBa0IsT0FBTyxFQUFDLE1BQU0sT0FBTTtBQUM5RCxTQUFRLGFBQVk7QUFDcEIsU0FBUSxhQUFZO0FBQ3BCLFNBQVEsZUFBYztBQUN0QixTQUFRLGNBQWE7QUFDckIsU0FBUSxjQUFhO0FBQ3JCLFNBQVEsV0FBVTtBQUNsQixTQUFRLFlBQVc7QUFDbkIsU0FBUSxjQUFhO0FBQ3JCLFNBQVEsWUFBVztBQUNuQixTQUFRLGVBQWM7QUFDdEIsU0FBUSxlQUFjO0FBQ3RCLFNBQVEsWUFBVztBQUNuQixTQUFRLGNBQWE7QUFDckIsU0FBUSxlQUFjO0FBQ3RCLFNBQVEsZ0JBQWU7QUFHdkIsUUFBUSxRQUFRLE9BQU8sRUFDcEIsT0FBTyxhQUFhLHdFQUF3RSxLQUFLLEVB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
53
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2xleC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiIyEvdXNyL2Jpbi9lbnYgbm9kZVxuLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7T3B0aW9uLCBwcm9ncmFtfSBmcm9tICdjb21tYW5kZXInO1xuaW1wb3J0IHtyZWFkRmlsZVN5bmN9IGZyb20gJ2ZzJztcbmltcG9ydCB7ZmlsZVVSTFRvUGF0aH0gZnJvbSAndXJsJztcblxuaW1wb3J0IHtidWlsZH0gZnJvbSAnLi9jb21tYW5kcy9idWlsZC5qcyc7XG5pbXBvcnQge2NsZWFufSBmcm9tICcuL2NvbW1hbmRzL2NsZWFuLmpzJztcbmltcG9ydCB7Y29tcGlsZX0gZnJvbSAnLi9jb21tYW5kcy9jb21waWxlLmpzJztcbmltcG9ydCB7Y29uZmlnfSBmcm9tICcuL2NvbW1hbmRzL2NvbmZpZy5qcyc7XG5pbXBvcnQge2NyZWF0ZX0gZnJvbSAnLi9jb21tYW5kcy9jcmVhdGUuanMnO1xuaW1wb3J0IHtkZXZ9IGZyb20gJy4vY29tbWFuZHMvZGV2LmpzJztcbmltcG9ydCB7aW5pdH0gZnJvbSAnLi9jb21tYW5kcy9pbml0LmpzJztcbmltcG9ydCB7bGlua2VkfSBmcm9tICcuL2NvbW1hbmRzL2xpbmsuanMnO1xuaW1wb3J0IHtsaW50fSBmcm9tICcuL2NvbW1hbmRzL2xpbnQuanMnO1xuaW1wb3J0IHttaWdyYXRlfSBmcm9tICcuL2NvbW1hbmRzL21pZ3JhdGUuanMnO1xuaW1wb3J0IHtwdWJsaXNofSBmcm9tICcuL2NvbW1hbmRzL3B1Ymxpc2guanMnO1xuaW1wb3J0IHt0ZXN0fSBmcm9tICcuL2NvbW1hbmRzL3Rlc3QuanMnO1xuaW1wb3J0IHt1cGRhdGV9IGZyb20gJy4vY29tbWFuZHMvdXBkYXRlLmpzJztcbmltcG9ydCB7dXBncmFkZX0gZnJvbSAnLi9jb21tYW5kcy91cGdyYWRlLmpzJztcbmltcG9ydCB7dmVyc2lvbnN9IGZyb20gJy4vY29tbWFuZHMvdmVyc2lvbnMuanMnO1xuXG5jb25zdCBwYWNrYWdlUGF0aCA9IGZpbGVVUkxUb1BhdGgobmV3IFVSTCgnLi4vcGFja2FnZS5qc29uJywgaW1wb3J0Lm1ldGEudXJsKSk7XG5jb25zdCBwYWNrYWdlSnNvbiA9IEpTT04ucGFyc2UocmVhZEZpbGVTeW5jKHBhY2thZ2VQYXRoLCAndXRmOCcpKTtcblxucHJvZ3JhbS5jb21tYW5kKCdidWlsZCcpXG4gIC5vcHRpb24oJy0tYW5hbHl6ZScsICdJdCBpbnZva2VzIHdlYnBhY2stYnVuZGxlLWFuYWx5emVyIHBsdWdpbiB0byBnZXQgYnVuZGxlIGluZm9ybWF0aW9uLicsIGZhbHNlKVxuICAuYWRkT3B0aW9uKG5ldyBPcHRpb24oJy0tYnVuZGxlciA8bmFtZT4nLCAnQnVuZGxlciB0byB1c2UgKFwid2VicGFja1wiIG9yIFwiZXNidWlsZFwiKS4gRGVmYXVsdDogXCJ3ZWJwYWNrXCIuJykuY2hvaWNlcyhbJ3dlYnBhY2snLCAnZXNidWlsZCddKS5kZWZhdWx0KCd3ZWJwYWNrJykpXG4gIC5vcHRpb24oJy0tY29uZmlnIDxwYXRoPicsICdDdXN0b20gV2VicGFjayBjb25maWd1cmF0aW9uIGZpbGUgcGF0aCAoaWUuIHdlYnBhY2suY29uZmlnLmpzKS4nKVxuICAub3B0aW9uKCctLWNvbmZpZ05hbWUgPHZhbHVlLi4uPicsICdOYW1lIG9mIHRoZSBjb25maWd1cmF0aW9uIHRvIHVzZS4nKVxuICAub3B0aW9uKCctLWRlZmluZVByb2Nlc3NFbnZOb2RlRW52IDx2YWx1ZT4nLCAnU2V0cyBwcm9jZXNzLmVudi5OT0RFX0VOViB0byB0aGUgc3BlY2lmaWVkIHZhbHVlLiAoQ3VycmVudGx5IGFuIGFsaWFzIGZvciBgLS1ub2RlLWVudmApJylcbiAgLm9wdGlvbignLS1kZXZ0b29sIDx2YWx1ZT4nLCAnQSBkZXZlbG9wZXIgdG9vbCB0byBlbmhhbmNlIGRlYnVnZ2luZyAoZmFsc2UgfCBldmFsIHwgW2lubGluZS18aGlkZGVuLXxldmFsLV1bbm9zb3VyY2VzLV1bY2hlYXAtW21vZHVsZS1dXXNvdXJjZS1tYXApLicpXG4gIC5vcHRpb24oJy0tZGlzYWJsZUludGVycHJldCcsICdEaXNhYmxlIGludGVycHJldCBmb3IgbG9hZGluZyB0aGUgY29uZmlnIGZpbGUuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tZW50cnkgPHZhbHVlLi4uPicsICdBIG1vZHVsZSB0aGF0IGlzIGxvYWRlZCB1cG9uIHN0YXJ0dXAuIE9ubHkgdGhlIGxhc3Qgb25lIGlzIGV4cG9ydGVkLicpXG4gIC5vcHRpb24oJy0tZW52IDx2YWx1ZT4nLCAnRW52aXJvbm1lbnQgcGFzc2VkIHRvIHRoZSBjb25maWd1cmF0aW9uIHdoZW4gaXQgaXMgYSBmdW5jdGlvbi4nKVxuICAub3B0aW9uKCctLWZhaWxPbldhcm5pbmdzJywgJ1N0b3Agd2VicGFjay1jbGkgcHJvY2VzcyB3aXRoIG5vbi16ZXJvIGV4aXQgY29kZSBvbiB3YXJuaW5ncyBmcm9tIHdlYnBhY2snLCBmYWxzZSlcbiAgLmFkZE9wdGlvbihuZXcgT3B0aW9uKCctLWZvcm1hdCA8dmFsdWU+JywgJ1RoaXMgc2V0cyB0aGUgb3V0cHV0IGZvcm1hdCBmb3IgdGhlIGdlbmVyYXRlZCBKYXZhU2NyaXB0IGZpbGVzLiBEZWZhdWx0OiBcImNqc1wiLicpLmNob2ljZXMoWydjanMnLCAnZXNtJ10pLmRlZmF1bHQoJ2NqcycpKVxuICAub3B0aW9uKCctLWpzb24gPHZhbHVlPicsICdQcmludHMgcmVzdWx0IGFzIEpTT04gb3Igc3RvcmUgaXQgaW4gYSBmaWxlLicpXG4gIC5vcHRpb24oJy0tbGV4Q29uZmlnIDxwYXRoPicsICdMZXggY29uZmlndXJhdGlvbiBmaWxlIHBhdGggKGxleC5jb25maWcuanMpLicpXG4gIC5vcHRpb24oJy0tbWVyZ2UnLCAnTWVyZ2UgdHdvIG9yIG1vcmUgY29uZmlndXJhdGlvbnMgdXNpbmcgXCJ3ZWJwYWNrLW1lcmdlXCIuJywgZmFsc2UpXG4gIC5hZGRPcHRpb24obmV3IE9wdGlvbignLS1tb2RlIDx0eXBlPicsICdXZWJwYWNrIG1vZGUgKFwicHJvZHVjdGlvblwiIG9yIFwiZGV2ZWxvcG1lbnRcIikuIERlZmF1bHQ6IFwiZGV2ZWxvcG1lbnRcIi4nKS5jaG9pY2VzKFsnZGV2ZWxvcG1lbnQnLCAncHJvZHVjdGlvbiddKS5kZWZhdWx0KCdkZXZlbG9wbWVudCcpKVxuICAub3B0aW9uKCctLW5hbWUgPHZhbHVlPicsICdOYW1lIG9mIHRoZSBjb25maWd1cmF0aW9uLiBVc2VkIHdoZW4gbG9hZGluZyBtdWx0aXBsZSBjb25maWd1cmF0aW9ucy4nKVxuICAub3B0aW9uKCctLW5vRGV2dG9vbCcsICdOZWdhdGl2ZSBcImRldnRvb2xcIiBvcHRpb24uJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tbm9TdGF0cycsICdOZWdhdGl2ZSBcInN0YXRzXCIgb3B0aW9uLicsIGZhbHNlKVxuICAub3B0aW9uKCctLW5vVGFyZ2V0JywgJ05lZ2F0aXZlIFwidGFyZ2V0XCIgb3B0aW9uLicsIGZhbHNlKVxuICAub3B0aW9uKCctLW5vV2F0Y2gnLCAnTmVnYXRpdmUgXCJ3YXRjaFwiIG9wdGlvbi4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1ub1dhdGNoT3B0aW9uc1N0ZGluJywgJ05lZ2F0aXZlIFwid2F0Y2gtb3B0aW9ucy1zdGRpblwiIG9wdGlvbi4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1ub2RlRW52IDx2YWx1ZT4nLCAnU2V0cyBwcm9jZXNzLmVudi5OT0RFX0VOViB0byB0aGUgc3BlY2lmaWVkIHZhbHVlLicpXG4gIC5vcHRpb24oJy0tb3V0cHV0UGF0aCA8dmFsdWU+JywgJ1RoZSBvdXRwdXQgZGlyZWN0b3J5IGFzICoqYWJzb2x1dGUgcGF0aCoqIChyZXF1aXJlZCkuJylcbiAgLm9wdGlvbignLS1xdWlldCcsICdObyBMZXggbm90aWZpY2F0aW9ucyBwcmludGVkIGluIHRoZSBjb25zb2xlLicsIGZhbHNlKVxuICAub3B0aW9uKCctLXJlbW92ZScsICdSZW1vdmVzIGFsbCBmaWxlcyBmcm9tIHRoZSBvdXRwdXQgZGlyZWN0b3J5IGJlZm9yZSBjb21waWxpbmcuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tc291cmNlUGF0aCA8cGF0aD4nLCAnU291cmNlIHBhdGgnKVxuICAub3B0aW9uKCctLXN0YXRzIDx2YWx1ZT4nLCAnU3RhdHMgb3B0aW9ucyBvYmplY3Qgb3IgcHJlc2V0IG5hbWUuJylcbiAgLm9wdGlvbignLS1zdGF0aWMnLCAnQ3JlYXRlcyBzdGF0aWMgSFRNTCBmaWxlcyB3aGVuIGJ1aWxkaW5nIGFwcC4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS10YXJnZXQgPHZhbHVlPicsICdFbnZpcm9ubWVudCB0byBidWlsZCBmb3IuIEVudmlyb25tZW50IHRvIGJ1aWxkIGZvci4gQW4gYXJyYXkgb2YgZW52aXJvbm1lbnRzIHRvIGJ1aWxkIGZvciBhbGwgb2YgdGhlbSB3aGVuIHBvc3NpYmxlLicpXG4gIC5vcHRpb24oJy0tdHlwZXNjcmlwdCcsICdUcmFuc3BpbGUgYXMgVHlwZXNjcmlwdC4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS12YXJpYWJsZXMgPG5hbWU+JywgJ0Vudmlyb25tZW50IHZhcmlhYmxlcyB0byBzZXQgaW4gXCJwcm9jZXNzLmVudlwiLiAoaWUuIFwie05PREVfRU5WOiBcXCdwcm9kdWN0aW9uXFwnfVwiKS4nKVxuICAub3B0aW9uKCctLXdhdGNoJywgJ1dhdGNoIGZvciBjaGFuZ2VzLicsIGZhbHNlKVxuICAub3B0aW9uKCctLXdhdGNoT3B0aW9uc1N0ZGluJywgJ1N0b3Agd2F0Y2hpbmcgd2hlbiBzdGRpbiBzdHJlYW0gaGFzIGVuZGVkLicsIGZhbHNlKVxuICAuYWN0aW9uKChjbWQpID0+IGJ1aWxkKGNtZCwgcHJvY2Vzcy5leGl0KS50aGVuKCgpID0+IHt9KSk7XG5cbnByb2dyYW0uY29tbWFuZCgnY2xlYW4nKVxuICAub3B0aW9uKCctLXF1aWV0JywgJ05vIExleCBub3RpZmljYXRpb25zIHByaW50ZWQgaW4gdGhlIGNvbnNvbGUuJylcbiAgLm9wdGlvbignLS1zbmFwc2hvdHMnLCAnUmVtb3ZlIGFsbCBcIl9fc25hcHNob3RzX19cIiBkaXJlY3Rvcmllcy4nKVxuICAuYWN0aW9uKChjbWQpID0+IGNsZWFuKGNtZCwgcHJvY2Vzcy5leGl0KS50aGVuKCgpID0+IHt9KSk7XG5cbnByb2dyYW0uY29tbWFuZCgnY29uZmlnIDx0eXBlPicpXG4gIC5vcHRpb24oJy0tcXVpZXQnLCAnTm8gTGV4IG5vdGlmaWNhdGlvbnMgcHJpbnRlZCBpbiB0aGUgY29uc29sZS4nKVxuICAub3B0aW9uKCctLWpzb24gPHBhdGg+JywgJ1NhdmUgb3V0cHV0IHRvIGpzb24gZmlsZS4nKVxuICAuYWN0aW9uKCh0eXBlLCBjbWQpID0+IGNvbmZpZyh0eXBlLCBjbWQsIHByb2Nlc3MuZXhpdCkudGhlbigoKSA9PiB7fSkpO1xuXG5wcm9ncmFtLmNvbW1hbmQoJ2NvbXBpbGUnKVxuICAub3B0aW9uKCctLWNvbmZpZyA8cGF0aD4nLCAnVHJhbnNwaWxlciBjb25maWd1cmF0aW9uIGZpbGUgcGF0aCAoaWUuIHRzY29uZmlnLmpzb24pLicpXG4gIC5vcHRpb24oJy0tZW52aXJvbm1lbnQgPG5hbWU+JywgJ1RhcmdldCBlbnZpcm9ubWVudC4gXCJub2RlXCIgb3IgXCJ3ZWJcIi4gRGVmYXVsdDogXCJub2RlXCIuJylcbiAgLm9wdGlvbignLS1sZXhDb25maWcgPHBhdGg+JywgJ0N1c3RvbSBMZXggY29uZmlndXJhdGlvbiBmaWxlIHBhdGggKGllLiBsZXguY29uZmlnLmpzKS4nKVxuICAub3B0aW9uKCctLW91dHB1dFBhdGggPHBhdGg+JywgJ091dHB1dCBwYXRoJylcbiAgLm9wdGlvbignLS1yZW1vdmUnLCAnUmVtb3ZlcyBhbGwgZmlsZXMgZnJvbSB0aGUgb3V0cHV0IGRpcmVjdG9yeSBiZWZvcmUgY29tcGlsaW5nLicpXG4gIC5vcHRpb24oJy0tc291cmNlUGF0aCA8cGF0aD4nLCAnU291cmNlIHBhdGgnKVxuICAub3B0aW9uKCctLXR5cGVzY3JpcHQnLCAnVHJhbnNwaWxlIGFzIFR5cGVzY3JpcHQuJylcbiAgLm9wdGlvbignLS1xdWlldCcsICdObyBMZXggbm90aWZpY2F0aW9ucyBwcmludGVkIGluIHRoZSBjb25zb2xlLicpXG4gIC5vcHRpb24oJy0td2F0Y2gnLCAnV2F0Y2hlcyBmb3IgY2hhbmdlcyBhbmQgY29tcGlsZXMuJylcbiAgLmFjdGlvbigoY21kKSA9PiBjb21waWxlKGNtZCwgcHJvY2Vzcy5leGl0KS50aGVuKCgpID0+IHt9KSk7XG5cbnByb2dyYW0uY29tbWFuZCgnY3JlYXRlIDx0eXBlPicpXG4gIC5vcHRpb24oJy0tb3V0cHV0RmlsZSA8cGF0aD4nLCAnT3V0cHV0IGZpbGVuYW1lLicpXG4gIC5vcHRpb24oJy0tb3V0cHV0TmFtZSA8bmFtZT4nLCAnT3V0cHV0IG5hbWUuJylcbiAgLm9wdGlvbignLS1xdWlldCcsICdObyBMZXggbm90aWZpY2F0aW9ucyBwcmludGVkIGluIHRoZSBjb25zb2xlLicpXG4gIC5vcHRpb24oJy0tdHlwZXNjcmlwdCcsICdDcmVhdGUgVHlwZXNjcmlwdCB2ZXJzaW9uLicpXG4gIC5hY3Rpb24oKHR5cGUsIGNtZCkgPT4gY3JlYXRlKHR5cGUsIGNtZCwgcHJvY2Vzcy5leGl0KS50aGVuKCgpID0+IHt9KSk7XG5cbnByb2dyYW0uY29tbWFuZCgnZGV2JylcbiAgLm9wdGlvbignLS1idW5kbGVBbmFseXplcicsICdSdW4gYnVuZGxlIGFuYWx5emVyLicpXG4gIC5vcHRpb24oJy0tY29uZmlnIDxwYXRoPicsICdDdXN0b20gV2VicGFjayBjb25maWd1cmF0aW9uIGZpbGUgcGF0aCAoaWUuIHdlYnBhY2suY29uZmlnLmpzKS4nKVxuICAub3B0aW9uKCctLWxleENvbmZpZyA8cGF0aD4nLCAnQ3VzdG9tIExleCBjb25maWd1cmF0aW9uIGZpbGUgcGF0aCAoaWUuIGxleC5jb25maWcuanMpLicpXG4gIC5vcHRpb24oJy0tb3BlbicsICdBdXRvbWF0aWNhbGx5IG9wZW4gZGV2IHNlcnZlciBpbiBhIG5ldyBicm93c2VyIHdpbmRvdy4nKVxuICAub3B0aW9uKCctLW91dHB1dFBhdGggPHBhdGg+JywgJ091dHB1dCBwYXRoJylcbiAgLm9wdGlvbignLS1xdWlldCcsICdObyBMZXggbm90aWZpY2F0aW9ucyBwcmludGVkIGluIHRoZSBjb25zb2xlLicpXG4gIC5vcHRpb24oJy0tcmVtb3ZlJywgJ1JlbW92ZXMgYWxsIGZpbGVzIGZyb20gdGhlIG91dHB1dCBkaXJlY3RvcnkgYmVmb3JlIGNvbXBpbGluZy4nKVxuICAub3B0aW9uKCctLXNvdXJjZVBhdGggPHBhdGg+JywgJ1NvdXJjZSBwYXRoJylcbiAgLm9wdGlvbignLS10eXBlc2NyaXB0JywgJ1RyYW5zcGlsZSBhcyBUeXBlc2NyaXB0LicpXG4gIC5vcHRpb24oJy0tdmFyaWFibGVzIDxuYW1lPicsICdFbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gc2V0IGluIFwicHJvY2Vzcy5lbnZcIi4gKGllLiBcIntOT0RFX0VOVjogXFwnZGV2ZWxvcG1lbnRcXCd9XCIpLicpXG4gIC5vcHRpb24oJy0td2F0Y2gnLCAnV2F0Y2ggZm9yIGNoYW5nZXMuJylcbiAgLmFjdGlvbigoY21kKSA9PiBkZXYoY21kLCBwcm9jZXNzLmV4aXQpLnRoZW4oKCkgPT4ge30pKTtcblxucHJvZ3JhbS5jb21tYW5kKCdpbml0IDxhcHBOYW1lPiBbcGFja2FnZU5hbWVdJylcbiAgLm9wdGlvbignLS1pbnN0YWxsJywgJ0luc3RhbGwgZGVwZW5kZW5jaWVzLicpXG4gIC5hZGRPcHRpb24obmV3IE9wdGlvbignLS1wYWNrYWdlLW1hbmFnZXIgPG1hbmFnZXI+JywgJ1doaWNoIHBhY2thZ2UgbWFuYWdlciB0byB1c2UuIERlZmF1bHQ6IG5wbScpLmNob2ljZXMoWyducG0nLCAneWFybiddKS5kZWZhdWx0KCducG0nKSlcbiAgLm9wdGlvbignLS1xdWlldCcsICdObyBMZXggbm90aWZpY2F0aW9ucyBwcmludGVkIGluIHRoZSBjb25zb2xlLicpXG4gIC5vcHRpb24oJy0tdHlwZXNjcmlwdCcsICdVc2UgYSBUeXBlc2NyaXB0IGJhc2VkIGFwcC4nKVxuICAuYWN0aW9uKChhcHBOYW1lLCBwYWNrYWdlTmFtZSwgY21kKSA9PiBpbml0KGFwcE5hbWUsIHBhY2thZ2VOYW1lLCBjbWQsIHByb2Nlc3MuZXhpdCkudGhlbigoKSA9PiB7fSkpO1xuXG5wcm9ncmFtLmNvbW1hbmQoJ2xpbmtlZCcpXG4gIC5vcHRpb24oJy0tcXVpZXQnLCAnTm8gTGV4IG5vdGlmaWNhdGlvbnMgcHJpbnRlZCBpbiB0aGUgY29uc29sZS4nKVxuICAuYWN0aW9uKChjbWQpID0+IGxpbmtlZChjbWQsIHByb2Nlc3MuZXhpdCkudGhlbigoKSA9PiB7fSkpO1xuXG5wcm9ncmFtLmNvbW1hbmQoJ2xpbnQnKVxuICAub3B0aW9uKCctLWNhY2hlJywgJ09ubHkgY2hlY2sgY2hhbmdlZCBmaWxlcy4gRGVmYXVsdDogZmFsc2UuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tY2FjaGVMb2NhdGlvbiA8cGF0aD4nLCAnUGF0aCB0byB0aGUgY2FjaGUgZmlsZSBvciBkaXJlY3RvcnkuJylcbiAgLm9wdGlvbignLS1jb2xvcicsICdGb3JjZSBlbmFibGluZyBvZiBjb2xvci4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1jb25maWcgPHBhdGg+JywgJ1VzZSB0aGlzIGNvbmZpZ3VyYXRpb24sIG92ZXJyaWRpbmcgLmVzbGludHJjLiogY29uZmlnIG9wdGlvbnMgaWYgcHJlc2VudC4nKVxuICAub3B0aW9uKCctLWRlYnVnJywgJ091dHB1dCBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24uJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tZW52SW5mbycsICdPdXRwdXQgZXhlY3V0aW9uIGVudmlyb25tZW50IGluZm9ybWF0aW9uLiBEZWZhdWx0OiBmYWxzZS4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1lbnYgPG5hbWU+JywgJ1NwZWNpZnkgZW52aXJvbm1lbnRzLicpXG4gIC5vcHRpb24oJy0tZXh0IDx0eXBlPicsICdTcGVjaWZ5IEphdmFTY3JpcHQgZmlsZSBleHRlbnNpb25zLiBEZWZhdWx0OiAuanMuJylcbiAgLm9wdGlvbignLS1maXgnLCAnQXV0b21hdGljYWxseSBmaXggcHJvYmxlbXMuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tZml4RHJ5UnVuJywgJ0F1dG9tYXRpY2FsbHkgZml4IHByb2JsZW1zIHdpdGhvdXQgc2F2aW5nIHRoZSBjaGFuZ2VzIHRvIHRoZSBmaWxlIHN5c3RlbS4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1maXhUeXBlIDx0eXBlPicsICdTcGVjaWZ5IHRoZSB0eXBlcyBvZiBmaXhlcyB0byBhcHBseSAocHJvYmxlbSwgc3VnZ2VzdGlvbiwgbGF5b3V0KS4nKVxuICAub3B0aW9uKCctLWZvcm1hdCA8bmFtZT4nLCAnVXNlIGEgc3BlY2lmaWMgb3V0cHV0IGZvcm1hdC4gRGVmYXVsdDogc3R5bGlzaC4nKVxuICAub3B0aW9uKCctLWdsb2JhbCA8dmFyaWFibGVzPicsICdEZWZpbmUgZ2xvYmFsIHZhcmlhYmxlcy4nKVxuICAub3B0aW9uKCctLWlnbm9yZVBhdGggPHBhdGg+JywgJ1NwZWNpZnkgcGF0aCBvZiBpZ25vcmUgZmlsZS4nKVxuICAub3B0aW9uKCctLWlnbm9yZVBhdHRlcm4gPHBhdHRlcm4+JywgJ1BhdHRlcm4gb2YgZmlsZXMgdG8gaWdub3JlIChpbiBhZGRpdGlvbiB0byB0aG9zZSBpbiAuZXNsaW50aWdub3JlKS4nKVxuICAub3B0aW9uKCctLWluaXQnLCAnUnVuIGNvbmZpZyBpbml0aWFsaXphdGlvbiB3aXphcmQuIERlZmF1bHQ6IGZhbHNlLicsIGZhbHNlKVxuICAub3B0aW9uKCctLW1heFdhcm5pbmdzIDxudW0+JywgJ051bWJlciBvZiB3YXJuaW5ncyB0byB0cmlnZ2VyIG5vbnplcm8gZXhpdCBjb2RlLiBEZWZhdWx0OiAtMS4nKVxuICAub3B0aW9uKCctLW5vQ29sb3InLCAnRm9yY2UgZGlzYWJsaW5nIG9mIGNvbG9yLicsIGZhbHNlKVxuICAub3B0aW9uKCctLW5vRXNsaW50cmMnLCAnRGlzYWJsZSB1c2Ugb2YgY29uZmlndXJhdGlvbiBmcm9tIC5lc2xpbnRyYy4qLicsIGZhbHNlKVxuICAub3B0aW9uKCctLW5vSWdub3JlJywgJ0Rpc2FibGUgdXNlIG9mIGlnbm9yZSBmaWxlcyBhbmQgcGF0dGVybnMuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tbm9JbmxpbmVDb25maWcnLCAnUHJldmVudCBjb21tZW50cyBmcm9tIGNoYW5naW5nIGNvbmZpZyBvciBydWxlcy4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1vdXRwdXRGaWxlIDxwYXRoPicsICdTcGVjaWZ5IGZpbGUgdG8gd3JpdGUgcmVwb3J0IHRvLicpXG4gIC5vcHRpb24oJy0tcGFyc2VyIDxuYW1lPicsICdTcGVjaWZ5IHRoZSBwYXJzZXIgdG8gYmUgdXNlZC4nKVxuICAub3B0aW9uKCctLXBhcnNlck9wdGlvbnMgPG9wdGlvbnM+JywgJ1NwZWNpZnkgcGFyc2VyIG9wdGlvbnMuJylcbiAgLm9wdGlvbignLS1wbHVnaW4gPHBsdWdpbnM+JywgJ1NwZWNpZnkgcGx1Z2lucy4nKVxuICAub3B0aW9uKCctLXByaW50Q29uZmlnIDxwYXRoPicsICdQcmludCB0aGUgY29uZmlndXJhdGlvbiBmb3IgdGhlIGdpdmVuIGZpbGUuJylcbiAgLm9wdGlvbignLS1xdWlldCcsICdObyBMZXggbm90aWZpY2F0aW9ucyBwcmludGVkIGluIHRoZSBjb25zb2xlLicsIGZhbHNlKVxuICAub3B0aW9uKCctLXJlcG9ydFVudXNlZERpc2FibGVEaXJlY3RpdmVzJywgJ0FkZHMgcmVwb3J0ZWQgZXJyb3JzIGZvciB1bnVzZWQgZXNsaW50LWRpc2FibGUgZGlyZWN0aXZlcy4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1yZXNvbHZlUGx1Z2luc1JlbGF0aXZlVG8gPHBhdGg+JywgJ0EgZm9sZGVyIHdoZXJlIHBsdWdpbnMgc2hvdWxkIGJlIHJlc29sdmVkIGZyb20uJylcbiAgLm9wdGlvbignLS1ydWxlIDxwYXRoPicsICdTcGVjaWZ5IHJ1bGVzLicpXG4gIC5vcHRpb24oJy0tcnVsZXNkaXIgPHBhdGg+JywgJ1VzZSBhZGRpdGlvbmFsIHJ1bGVzIGZyb20gdGhpcyBkaXJlY3RvcnkuJylcbiAgLm9wdGlvbignLS1zdGRpbicsICdMaW50IGNvZGUgcHJvdmlkZWQgb24gPFNURElOPiAtIERlZmF1bHQ6IGZhbHNlLicsIGZhbHNlKVxuICAub3B0aW9uKCctLXN0ZGluRmlsZW5hbWUgPG5hbWU+JywgJ1NwZWNpZnkgZmlsZW5hbWUgdG8gcHJvY2VzcyBTVERJTiBhcy4nKVxuICAuYWN0aW9uKChjbWQpID0+IGxpbnQoY21kLCBwcm9jZXNzLmV4aXQpLnRoZW4oKCkgPT4ge30pKTtcblxucHJvZ3JhbS5jb21tYW5kKCdtaWdyYXRlJylcbiAgLm9wdGlvbignLXEsIC0tcXVpZXQnLCAnTm8gTGV4IG5vdGlmaWNhdGlvbnMgcHJpbnRlZCBpbiB0aGUgY29uc29sZS4nKVxuICAuYWN0aW9uKChjbWQpID0+IG1pZ3JhdGUoY21kLCBwcm9jZXNzLmV4aXQpLnRoZW4oKCkgPT4ge30pKTtcblxucHJvZ3JhbS5jb21tYW5kKCdwdWJsaXNoJylcbiAgLmFkZE9wdGlvbihuZXcgT3B0aW9uKCctLWJ1bXAgPHR5cGU+JywgJ0luY3JlbWVudHMgdGhlIHZlcnNpb24uIFR5cGVzIGluY2x1ZGU6IG1ham9yLCBtaW5vciwgcGF0Y2gsIGJldGEsIGFscGhhLCByYy4gRGVmYXVsdDogXCJwYXRjaFwiLicpLmNob2ljZXMoWydtYWpvcicsICdtaW5vcicsICdwYXRjaCcsICdiZXRhJywgJ2FscGhhJywgJ3JjJ10pLmRlZmF1bHQoJ3BhdGNoJykpXG4gIC5vcHRpb24oJy0tbmV3VmVyc2lvbiA8dmVyc2lvbk51bWJlcj4nLCAnUHVibGlzaCBhcyBhIHNwZWNpZmljIHZlcnNpb24uJylcbiAgLm9wdGlvbignLS1vdHAgPGNvZGU+JywgJ1Byb3ZpZGUgYSB0d28tZmFjdG9yIGNvZGUuJylcbiAgLmFkZE9wdGlvbihuZXcgT3B0aW9uKCctLXBhY2thZ2UtbWFuYWdlciA8bWFuYWdlcj4nLCAnV2hpY2ggcGFja2FnZSBtYW5hZ2VyIHRvIHVzZS4gRGVmYXVsdDogbnBtJykuY2hvaWNlcyhbJ25wbScsICd5YXJuJ10pLmRlZmF1bHQoJ25wbScpKVxuICAub3B0aW9uKCctLXByaXZhdGUnLCAnUHVibGlzaGVzIHRoZSBtb2R1bGUgYXMgcmVzdHJpY3RlZC4nKVxuICAub3B0aW9uKCctLXF1aWV0JywgJ05vIExleCBub3RpZmljYXRpb25zIHByaW50ZWQgaW4gdGhlIGNvbnNvbGUuJylcbiAgLm9wdGlvbignLS10YWcgPHRhZz4nLCAnUmVnaXN0ZXJzIHRoZSBwdWJsaXNoZWQgcGFja2FnZSB3aXRoIHRoZSBnaXZlbiB0YWcuJylcbiAgLmFjdGlvbigoY21kKSA9PiBwdWJsaXNoKGNtZCwgcHJvY2Vzcy5leGl0KS50aGVuKCgpID0+IHt9KSk7XG5cbnByb2dyYW0uY29tbWFuZCgndGVzdCcpXG4gIC5vcHRpb24oJy0tYmFpbCcsICdFeGl0IHRoZSB0ZXN0IHN1aXRlIGltbWVkaWF0ZWx5IHVwb24gdGhlIGZpcnN0IGZhaWxpbmcgdGVzdCBzdWl0ZS4nKVxuICAub3B0aW9uKCctLWNoYW5nZWRGaWxlc1dpdGhBbmNlc3RvcicsICdSdW5zIHRlc3RzIHJlbGF0ZWQgdG8gdGhlIGN1cnJlbnQgY2hhbmdlcyBhbmQgdGhlIGNoYW5nZXMgbWFkZSBpbiB0aGUgbGFzdCBjb21taXQuJylcbiAgLm9wdGlvbignLS1jaGFuZ2VkU2luY2UnLCAnUnVucyB0ZXN0cyByZWxhdGVkIHRoZSBjaGFuZ2VzIHNpbmNlIHRoZSBwcm92aWRlZCBicmFuY2guJylcbiAgLm9wdGlvbignLS1jaScsICdXaGVuIHRoaXMgb3B0aW9uIGlzIHByb3ZpZGVkLCBKZXN0IHdpbGwgYXNzdW1lIGl0IGlzIHJ1bm5pbmcgaW4gYSBDSSBlbnZpcm9ubWVudC4nKVxuICAub3B0aW9uKCctLWNsZWFyQ2FjaGUnLCAnQ2xlYXIgSmVzdCBjYWNoZS4nKVxuICAub3B0aW9uKCctLWNvbGxlY3RDb3ZlcmFnZUZyb20gPGdsb2I+JywgJ0EgZ2xvYiBwYXR0ZXJuIHJlbGF0aXZlIHRvIG1hdGNoaW5nIHRoZSBmaWxlcyB0aGF0IGNvdmVyYWdlIGluZm8gbmVlZHMgdG8gYmUgY29sbGVjdGVkIGZyb20uJylcbiAgLm9wdGlvbignLS1jb2xvcnMnLCAnRm9yY2VzIHRlc3QgcmVzdWx0cyBvdXRwdXQgaGlnaGxpZ2h0aW5nIGV2ZW4gaWYgc3Rkb3V0IGlzIG5vdCBhIFRUWS4nKVxuICAub3B0aW9uKCctLWNvbmZpZyA8cGF0aD4nLCAnQ3VzdG9tIEplc3QgY29uZmlndXJhdGlvbiBmaWxlIHBhdGggKGllLiBqZXN0LmNvbmZpZy5qcykuJylcbiAgLm9wdGlvbignLS1kZWJ1ZycsICdQcmludCBkZWJ1Z2dpbmcgaW5mbyBhYm91dCB5b3VyIEplc3QgY29uZmlnLicpXG4gIC5vcHRpb24oJy0tZGV0ZWN0T3BlbkhhbmRsZXMnLCAnQXR0ZW1wdCB0byBjb2xsZWN0IGFuZCBwcmludCBvcGVuIGhhbmRsZXMgcHJldmVudGluZyBKZXN0IGZyb20gZXhpdGluZyBjbGVhbmx5JylcbiAgLm9wdGlvbignLS1lbnZpcm9ubWVudCA8bmFtZT4nLCAnVGFyZ2V0IGVudmlyb25tZW50LiBcIm5vZGVcIiBvciBcIndlYlwiLiBEZWZhdWx0OiBcIm5vZGVcIi4nKVxuICAub3B0aW9uKCctLWVudicsICdUaGUgdGVzdCBlbnZpcm9ubWVudCB1c2VkIGZvciBhbGwgdGVzdHMuIFRoaXMgY2FuIHBvaW50IHRvIGFueSBmaWxlIG9yIG5vZGUgbW9kdWxlLiBFeGFtcGxlczoganNkb20sIG5vZGUgb3IgcGF0aC90by9teS1lbnZpcm9ubWVudC5qcy4nKVxuICAub3B0aW9uKCctLWVycm9yT25EZXByZWNhdGVkJywgJ01ha2UgY2FsbGluZyBkZXByZWNhdGVkIEFQSXMgdGhyb3cgaGVscGZ1bCBlcnJvciBtZXNzYWdlcy4nKVxuICAub3B0aW9uKCctLWV4cGFuZCcsICdVc2UgdGhpcyBmbGFnIHRvIHNob3cgZnVsbCBkaWZmcyBhbmQgZXJyb3JzIGluc3RlYWQgb2YgYSBwYXRjaC4nKVxuICAub3B0aW9uKCctLWZvcmNlRXhpdCcsICdGb3JjZSBKZXN0IHRvIGV4aXQgYWZ0ZXIgYWxsIHRlc3RzIGhhdmUgY29tcGxldGVkIHJ1bm5pbmcuJylcbiAgLm9wdGlvbignLS1qc29uJywgJ1ByaW50cyB0aGUgdGVzdCByZXN1bHRzIGluIEpTT04uJylcbiAgLm9wdGlvbignLS1sYXN0Q29tbWl0JywgJ1J1biBhbGwgdGVzdHMgYWZmZWN0ZWQgYnkgZmlsZSBjaGFuZ2VzIGluIHRoZSBsYXN0IGNvbW1pdCBtYWRlLicpXG4gIC5vcHRpb24oJy0tbGV4Q29uZmlnIDxwYXRoPicsICdDdXN0b20gTGV4IGNvbmZpZ3VyYXRpb24gZmlsZSBwYXRoIChpZS4gbGV4LmNvbmZpZy5qcykuJylcbiAgLm9wdGlvbignLS1saXN0VGVzdHMnLCAnTGlzdHMgYWxsIHRlc3RzIGFzIEpTT04gdGhhdCBKZXN0IHdpbGwgcnVuIGdpdmVuIHRoZSBhcmd1bWVudHMsIGFuZCBleGl0cy4nKVxuICAub3B0aW9uKCctLWxvZ0hlYXBVc2FnZScsICdMb2dzIHRoZSBoZWFwIHVzYWdlIGFmdGVyIGV2ZXJ5IHRlc3QuJylcbiAgLm9wdGlvbignLS1tYXhXb3JrZXJzIDxudW0+JywgJ1NwZWNpZmllcyB0aGUgbWF4aW11bSBudW1iZXIgb2Ygd29ya2VycyB0aGUgd29ya2VyLXBvb2wgd2lsbCBzcGF3biBmb3IgcnVubmluZyB0ZXN0cy4gJylcbiAgLm9wdGlvbignLS1ub1N0YWNrVHJhY2UnLCAnRGlzYWJsZXMgc3RhY2sgdHJhY2UgaW4gdGVzdCByZXN1bHRzIG91dHB1dC4nKVxuICAub3B0aW9uKCctLW5vdGlmeScsICdBY3RpdmF0ZXMgbm90aWZpY2F0aW9ucyBmb3IgdGVzdCByZXN1bHRzLicpXG4gIC5vcHRpb24oJy0tb25seUNoYW5nZWQnLCAndW4gYmFzZWQgb24gd2hpY2ggZmlsZXMgaGF2ZSBjaGFuZ2VkIGluIHRoZSBjdXJyZW50IHJlcG9zaXRvcnkuICcpXG4gIC5vcHRpb24oJy0tb3V0cHV0RmlsZSA8ZmlsZW5hbWU+JywgJ1dyaXRlIHRlc3QgcmVzdWx0cyB0byBhIGZpbGUgd2hlbiB0aGUgLS1qc29uIG9wdGlvbiBpcyBhbHNvIHNwZWNpZmllZC4nKVxuICAub3B0aW9uKCctLXBhc3NXaXRoTm9UZXN0cycsICdBbGxvd3MgdGhlIHRlc3Qgc3VpdGUgdG8gcGFzcyB3aGVuIG5vIGZpbGVzIGFyZSBmb3VuZC4nKVxuICAub3B0aW9uKCctLXF1aWV0JywgJ05vIExleCBub3RpZmljYXRpb25zIHByaW50ZWQgaW4gdGhlIGNvbnNvbGUuJylcbiAgLm9wdGlvbignLS1ydW5JbkJhbmQnLCAnUnVuIGFsbCB0ZXN0cyBzZXJpYWxseSBpbiB0aGUgY3VycmVudCBwcm9jZXNzLCByYXRoZXIgdGhhbiBjcmVhdGluZyBhIHdvcmtlciBwb29sIG9mIGNoaWxkIHByb2Nlc3NlcyB0aGF0IHJ1biB0ZXN0cy4nKVxuICAub3B0aW9uKCctLXNldHVwIDxwYXRoPicsICdKZXN0IHNldHVwIGZpbGUgcGF0aC4nKVxuICAub3B0aW9uKCctLXNob3dDb25maWcnLCAnUHJpbnQgeW91ciBKZXN0IGNvbmZpZyBhbmQgdGhlbiBleGl0cy4nKVxuICAub3B0aW9uKCctLXNpbGVudCcsICdQcmV2ZW50IHRlc3RzIGZyb20gcHJpbnRpbmcgbWVzc2FnZXMgdGhyb3VnaCB0aGUgY29uc29sZS4nKVxuICAub3B0aW9uKCctLXRlc3RMb2NhdGlvbkluUmVzdWx0cycsICdBZGRzIGEgbG9jYXRpb24gZmllbGQgdG8gdGVzdCByZXN1bHRzLicpXG4gIC5vcHRpb24oJy0tdGVzdE5hbWVQYXR0ZXJuIDxyZWdleD4nLCAnUnVuIG9ubHkgdGVzdHMgd2l0aCBhIG5hbWUgdGhhdCBtYXRjaGVzIHRoZSByZWdleC4gJylcbiAgLm9wdGlvbignLS10ZXN0UGF0aFBhdHRlcm4gPHJlZ2V4PicsICdBIHJlZ2V4cCBwYXR0ZXJuIHN0cmluZyB0aGF0IGlzIG1hdGNoZWQgYWdhaW5zdCBhbGwgdGVzdHMgcGF0aHMgYmVmb3JlIGV4ZWN1dGluZyB0aGUgdGVzdC4nKVxuICAub3B0aW9uKCctLXR5cGVzY3JpcHQnLCAnVHJhbnNwaWxlIGFzIFR5cGVzY3JpcHQuJylcbiAgLm9wdGlvbignLS11cGRhdGUnLCAnVXBkYXRlIHNuYXBzaG90cy4gUnVucyBcImplc3QgLS11cGRhdGVTbmFwc2hvdHNcIicpXG4gIC5vcHRpb24oJy0tdXNlU3RkZXJyJywgJ0RpdmVydCBhbGwgb3V0cHV0IHRvIHN0ZGVyci4nKVxuICAub3B0aW9uKCctLXZlcmJvc2UnLCAnRGlzcGxheSBpbmRpdmlkdWFsIHRlc3QgcmVzdWx0cyB3aXRoIHRoZSB0ZXN0IHN1aXRlIGhpZXJhcmNoeS4nKVxuICAub3B0aW9uKCctLXdhdGNoIDxwYXRoPicsICdXYXRjaCBmaWxlcyBmb3IgY2hhbmdlcyBhbmQgcmVydW4gdGVzdHMgcmVsYXRlZCB0byBjaGFuZ2VkIGZpbGVzLicpXG4gIC5vcHRpb24oJy0td2F0Y2hBbGwnLCAnV2F0Y2ggZmlsZXMgZm9yIGNoYW5nZXMgYW5kIHJlcnVuIGFsbCB0ZXN0cyB3aGVuIHNvbWV0aGluZyBjaGFuZ2VzLicpXG4gIC5hY3Rpb24oKG9wdGlvbnMsIGNtZCkgPT4gdGVzdChvcHRpb25zLCBjbWQuYXJncywgcHJvY2Vzcy5leGl0KS50aGVuKCgpID0+IHt9KSk7XG5cbnByb2dyYW0uY29tbWFuZCgndXBkYXRlJylcbiAgLm9wdGlvbignLS1pbnRlcmFjdGl2ZScsICdDaG9vc2Ugd2hpY2ggcGFja2FnZXMgdG8gdXBkYXRlLicpXG4gIC5hZGRPcHRpb24obmV3IE9wdGlvbignLS1wYWNrYWdlLW1hbmFnZXIgPG1hbmFnZXI+JywgJ1doaWNoIHBhY2thZ2UgbWFuYWdlciB0byB1c2UuIERlZmF1bHQ6IG5wbScpLmNob2ljZXMoWyducG0nLCAneWFybiddKS5kZWZhdWx0KCducG0nKSlcbiAgLm9wdGlvbignLS1xdWlldCcsICdObyBMZXggbm90aWZpY2F0aW9ucyBwcmludGVkIGluIHRoZSBjb25zb2xlLicpXG4gIC5vcHRpb24oJy0tcmVnaXN0cnknLCAnQWRkIGEgY3VzdG9tIHJlZ2lzdHJ5IHVybC4nKVxuICAuYWN0aW9uKChjbWQpID0+IHVwZGF0ZShjbWQsIHByb2Nlc3MuZXhpdCkudGhlbigoKSA9PiB7fSkpO1xuXG5wcm9ncmFtLmNvbW1hbmQoJ3VwZ3JhZGUnKVxuICAuYWRkT3B0aW9uKG5ldyBPcHRpb24oJy0tcGFja2FnZS1tYW5hZ2VyIDxtYW5hZ2VyPicsICdXaGljaCBwYWNrYWdlIG1hbmFnZXIgdG8gdXNlLiBEZWZhdWx0OiBucG0nKS5jaG9pY2VzKFsnbnBtJywgJ3lhcm4nXSkuZGVmYXVsdCgnbnBtJykpXG4gIC5vcHRpb24oJy0tcXVpZXQnLCAnTm8gTGV4IG5vdGlmaWNhdGlvbnMgcHJpbnRlZCBpbiB0aGUgY29uc29sZS4nKVxuICAuYWN0aW9uKChjbWQpID0+IHVwZ3JhZGUoY21kLCBwcm9jZXNzLmV4aXQpLnRoZW4oKCkgPT4ge30pKTtcblxucHJvZ3JhbS5jb21tYW5kKCd2ZXJzaW9ucycpXG4gIC5vcHRpb24oJy0tanNvbicsICdQcmludCB0aGUgdmVyc2lvbiBhcyBhIEpTT04gb2JqZWN0LicpXG4gIC5hY3Rpb24oKGNtZCkgPT4gdmVyc2lvbnMoY21kLCBwcm9jZXNzLmV4aXQpLnRoZW4oKCkgPT4ge30pKTtcblxucHJvZ3JhbVxuICAudmVyc2lvbihwYWNrYWdlSnNvbi52ZXJzaW9uKVxuICAucGFyc2UocHJvY2Vzcy5hcmd2KTtcbiJdLAogICJtYXBwaW5ncyI6ICI7QUFLQSxTQUFRLFFBQVEsZUFBYztBQUM5QixTQUFRLG9CQUFtQjtBQUMzQixTQUFRLHFCQUFvQjtBQUU1QixTQUFRLGFBQVk7QUFDcEIsU0FBUSxhQUFZO0FBQ3BCLFNBQVEsZUFBYztBQUN0QixTQUFRLGNBQWE7QUFDckIsU0FBUSxjQUFhO0FBQ3JCLFNBQVEsV0FBVTtBQUNsQixTQUFRLFlBQVc7QUFDbkIsU0FBUSxjQUFhO0FBQ3JCLFNBQVEsWUFBVztBQUNuQixT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
package/dist/lint.js CHANGED
@@ -1,8 +1,11 @@
1
1
  #!/usr/bin/env node
2
2
  import { program } from "commander";
3
- import packageJson from "../package.json" assert { type: "json" };
3
+ import { readFileSync } from "fs";
4
+ import { fileURLToPath } from "url";
4
5
  import { lint } from "./commands/lint.js";
6
+ const packagePath = fileURLToPath(new URL("../../package.json", import.meta.url));
7
+ const packageJson = JSON.parse(readFileSync(packagePath, "utf8"));
5
8
  program.option("--cache", "Only check changed files. Default: false.", false).option("--cache-location <path>", "Path to the cache file or directory.").option("--color", "Force enabling of color.", false).option("--config <path>", "Use this configuration, overriding .eslintrc.* config options if present.").option("--debug", "Output debugging information.", false).option("--env-info", "Output execution environment information. Default: false.", false).option("--env <name>", "Specify environments.").option("--ext <type>", "Specify JavaScript file extensions. Default: .js.").option("--fix", "Automatically fix problems.", false).option("--fix-dry-run", "Automatically fix problems without saving the changes to the file system.", false).option("--fix-type <type>", "Specify the types of fixes to apply (problem, suggestion, layout).").option("--format <name>", "Use a specific output format. Default: stylish.").option("--global <variables>", "Define global variables.").option("--ignore-path <path>", "Specify path of ignore file.").option("--ignore-pattern <pattern>", "Pattern of files to ignore (in addition to those in .eslintignore).").option("--init", "Run config initialization wizard. Default: false.", false).option("--max-warnings <num>", "Number of warnings to trigger nonzero exit code. Default: -1.").option("--no-color", "Force disabling of color.", false).option("--no-eslintrc", "Disable use of configuration from .eslintrc.*.", false).option("--no-ignore", "Disable use of ignore files and patterns.", false).option("--no-inline-config", "Prevent comments from changing config or rules.", false).option("--output-file <path>", "Specify file to write report to.").option("--parser <name>", "Specify the parser to be used.").option("--parser-options <options>", "Specify parser options.").option("--plugin <plugins>", "Specify plugins.").option("--print-config <path>", "Print the configuration for the given file.").option("--quiet", "No Lex notifications printed in the console.", false).option("--report-unused-disable-directives", "Adds reported errors for unused eslint-disable directives.", false).option("--resolve-plugins-relative-to <path>", "A folder where plugins should be resolved from.").option("--rule <path>", "Specify rules.").option("--rulesdir <path>", "Use additional rules from this directory.").option("--stdin", "Lint code provided on <STDIN> - Default: false.", false).option("--stdin-filename <name>", "Specify filename to process STDIN as.").action((cmd) => lint(cmd, process.exit).then(() => {
6
9
  }));
7
10
  program.version(packageJson.version).parse(process.argv);
8
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2xpbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIiMhL3Vzci9iaW4vZW52IG5vZGVcbi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDIzLVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge3Byb2dyYW19IGZyb20gJ2NvbW1hbmRlcic7XG5cbmltcG9ydCBwYWNrYWdlSnNvbiBmcm9tICcuLi9wYWNrYWdlLmpzb24nIGFzc2VydCB7dHlwZTogJ2pzb24nfTtcbmltcG9ydCB7bGludH0gZnJvbSAnLi9jb21tYW5kcy9saW50LmpzJztcblxucHJvZ3JhbVxuICAub3B0aW9uKCctLWNhY2hlJywgJ09ubHkgY2hlY2sgY2hhbmdlZCBmaWxlcy4gRGVmYXVsdDogZmFsc2UuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tY2FjaGUtbG9jYXRpb24gPHBhdGg+JywgJ1BhdGggdG8gdGhlIGNhY2hlIGZpbGUgb3IgZGlyZWN0b3J5LicpXG4gIC5vcHRpb24oJy0tY29sb3InLCAnRm9yY2UgZW5hYmxpbmcgb2YgY29sb3IuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tY29uZmlnIDxwYXRoPicsICdVc2UgdGhpcyBjb25maWd1cmF0aW9uLCBvdmVycmlkaW5nIC5lc2xpbnRyYy4qIGNvbmZpZyBvcHRpb25zIGlmIHByZXNlbnQuJylcbiAgLm9wdGlvbignLS1kZWJ1ZycsICdPdXRwdXQgZGVidWdnaW5nIGluZm9ybWF0aW9uLicsIGZhbHNlKVxuICAub3B0aW9uKCctLWVudi1pbmZvJywgJ091dHB1dCBleGVjdXRpb24gZW52aXJvbm1lbnQgaW5mb3JtYXRpb24uIERlZmF1bHQ6IGZhbHNlLicsIGZhbHNlKVxuICAub3B0aW9uKCctLWVudiA8bmFtZT4nLCAnU3BlY2lmeSBlbnZpcm9ubWVudHMuJylcbiAgLm9wdGlvbignLS1leHQgPHR5cGU+JywgJ1NwZWNpZnkgSmF2YVNjcmlwdCBmaWxlIGV4dGVuc2lvbnMuIERlZmF1bHQ6IC5qcy4nKVxuICAub3B0aW9uKCctLWZpeCcsICdBdXRvbWF0aWNhbGx5IGZpeCBwcm9ibGVtcy4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1maXgtZHJ5LXJ1bicsICdBdXRvbWF0aWNhbGx5IGZpeCBwcm9ibGVtcyB3aXRob3V0IHNhdmluZyB0aGUgY2hhbmdlcyB0byB0aGUgZmlsZSBzeXN0ZW0uJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tZml4LXR5cGUgPHR5cGU+JywgJ1NwZWNpZnkgdGhlIHR5cGVzIG9mIGZpeGVzIHRvIGFwcGx5IChwcm9ibGVtLCBzdWdnZXN0aW9uLCBsYXlvdXQpLicpXG4gIC5vcHRpb24oJy0tZm9ybWF0IDxuYW1lPicsICdVc2UgYSBzcGVjaWZpYyBvdXRwdXQgZm9ybWF0LiBEZWZhdWx0OiBzdHlsaXNoLicpXG4gIC5vcHRpb24oJy0tZ2xvYmFsIDx2YXJpYWJsZXM+JywgJ0RlZmluZSBnbG9iYWwgdmFyaWFibGVzLicpXG4gIC5vcHRpb24oJy0taWdub3JlLXBhdGggPHBhdGg+JywgJ1NwZWNpZnkgcGF0aCBvZiBpZ25vcmUgZmlsZS4nKVxuICAub3B0aW9uKCctLWlnbm9yZS1wYXR0ZXJuIDxwYXR0ZXJuPicsICdQYXR0ZXJuIG9mIGZpbGVzIHRvIGlnbm9yZSAoaW4gYWRkaXRpb24gdG8gdGhvc2UgaW4gLmVzbGludGlnbm9yZSkuJylcbiAgLm9wdGlvbignLS1pbml0JywgJ1J1biBjb25maWcgaW5pdGlhbGl6YXRpb24gd2l6YXJkLiBEZWZhdWx0OiBmYWxzZS4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1tYXgtd2FybmluZ3MgPG51bT4nLCAnTnVtYmVyIG9mIHdhcm5pbmdzIHRvIHRyaWdnZXIgbm9uemVybyBleGl0IGNvZGUuIERlZmF1bHQ6IC0xLicpXG4gIC5vcHRpb24oJy0tbm8tY29sb3InLCAnRm9yY2UgZGlzYWJsaW5nIG9mIGNvbG9yLicsIGZhbHNlKVxuICAub3B0aW9uKCctLW5vLWVzbGludHJjJywgJ0Rpc2FibGUgdXNlIG9mIGNvbmZpZ3VyYXRpb24gZnJvbSAuZXNsaW50cmMuKi4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1uby1pZ25vcmUnLCAnRGlzYWJsZSB1c2Ugb2YgaWdub3JlIGZpbGVzIGFuZCBwYXR0ZXJucy4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1uby1pbmxpbmUtY29uZmlnJywgJ1ByZXZlbnQgY29tbWVudHMgZnJvbSBjaGFuZ2luZyBjb25maWcgb3IgcnVsZXMuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tb3V0cHV0LWZpbGUgPHBhdGg+JywgJ1NwZWNpZnkgZmlsZSB0byB3cml0ZSByZXBvcnQgdG8uJylcbiAgLm9wdGlvbignLS1wYXJzZXIgPG5hbWU+JywgJ1NwZWNpZnkgdGhlIHBhcnNlciB0byBiZSB1c2VkLicpXG4gIC5vcHRpb24oJy0tcGFyc2VyLW9wdGlvbnMgPG9wdGlvbnM+JywgJ1NwZWNpZnkgcGFyc2VyIG9wdGlvbnMuJylcbiAgLm9wdGlvbignLS1wbHVnaW4gPHBsdWdpbnM+JywgJ1NwZWNpZnkgcGx1Z2lucy4nKVxuICAub3B0aW9uKCctLXByaW50LWNvbmZpZyA8cGF0aD4nLCAnUHJpbnQgdGhlIGNvbmZpZ3VyYXRpb24gZm9yIHRoZSBnaXZlbiBmaWxlLicpXG4gIC5vcHRpb24oJy0tcXVpZXQnLCAnTm8gTGV4IG5vdGlmaWNhdGlvbnMgcHJpbnRlZCBpbiB0aGUgY29uc29sZS4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1yZXBvcnQtdW51c2VkLWRpc2FibGUtZGlyZWN0aXZlcycsICdBZGRzIHJlcG9ydGVkIGVycm9ycyBmb3IgdW51c2VkIGVzbGludC1kaXNhYmxlIGRpcmVjdGl2ZXMuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tcmVzb2x2ZS1wbHVnaW5zLXJlbGF0aXZlLXRvIDxwYXRoPicsICdBIGZvbGRlciB3aGVyZSBwbHVnaW5zIHNob3VsZCBiZSByZXNvbHZlZCBmcm9tLicpXG4gIC5vcHRpb24oJy0tcnVsZSA8cGF0aD4nLCAnU3BlY2lmeSBydWxlcy4nKVxuICAub3B0aW9uKCctLXJ1bGVzZGlyIDxwYXRoPicsICdVc2UgYWRkaXRpb25hbCBydWxlcyBmcm9tIHRoaXMgZGlyZWN0b3J5LicpXG4gIC5vcHRpb24oJy0tc3RkaW4nLCAnTGludCBjb2RlIHByb3ZpZGVkIG9uIDxTVERJTj4gLSBEZWZhdWx0OiBmYWxzZS4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1zdGRpbi1maWxlbmFtZSA8bmFtZT4nLCAnU3BlY2lmeSBmaWxlbmFtZSB0byBwcm9jZXNzIFNURElOIGFzLicpXG4gIC5hY3Rpb24oKGNtZCkgPT4gbGludChjbWQsIHByb2Nlc3MuZXhpdCkudGhlbigoKSA9PiB7fSkpO1xuXG5wcm9ncmFtXG4gIC52ZXJzaW9uKHBhY2thZ2VKc29uLnZlcnNpb24pXG4gIC5wYXJzZShwcm9jZXNzLmFyZ3YpO1xuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUtBLFNBQVEsZUFBYztBQUV0QixPQUFPLGlCQUFpQixrQkFBa0IsT0FBTyxFQUFDLE1BQU0sT0FBTTtBQUM5RCxTQUFRLFlBQVc7QUFFbkIsUUFDRyxPQUFPLFdBQVcsNkNBQTZDLEtBQUssRUFDcEUsT0FBTywyQkFBMkIsc0NBQXNDLEVBQ3hFLE9BQU8sV0FBVyw0QkFBNEIsS0FBSyxFQUNuRCxPQUFPLG1CQUFtQiwyRUFBMkUsRUFDckcsT0FBTyxXQUFXLGlDQUFpQyxLQUFLLEVBQ3hELE9BQU8sY0FBYyw2REFBNkQsS0FBSyxFQUN2RixPQUFPLGdCQUFnQix1QkFBdUIsRUFDOUMsT0FBTyxnQkFBZ0IsbURBQW1ELEVBQzFFLE9BQU8sU0FBUywrQkFBK0IsS0FBSyxFQUNwRCxPQUFPLGlCQUFpQiw2RUFBNkUsS0FBSyxFQUMxRyxPQUFPLHFCQUFxQixvRUFBb0UsRUFDaEcsT0FBTyxtQkFBbUIsaURBQWlELEVBQzNFLE9BQU8sd0JBQXdCLDBCQUEwQixFQUN6RCxPQUFPLHdCQUF3Qiw4QkFBOEIsRUFDN0QsT0FBTyw4QkFBOEIscUVBQXFFLEVBQzFHLE9BQU8sVUFBVSxxREFBcUQsS0FBSyxFQUMzRSxPQUFPLHdCQUF3QiwrREFBK0QsRUFDOUYsT0FBTyxjQUFjLDZCQUE2QixLQUFLLEVBQ3ZELE9BQU8saUJBQWlCLGtEQUFrRCxLQUFLLEVBQy9FLE9BQU8sZUFBZSw2Q0FBNkMsS0FBSyxFQUN4RSxPQUFPLHNCQUFzQixtREFBbUQsS0FBSyxFQUNyRixPQUFPLHdCQUF3QixrQ0FBa0MsRUFDakUsT0FBTyxtQkFBbUIsZ0NBQWdDLEVBQzFELE9BQU8sOEJBQThCLHlCQUF5QixFQUM5RCxPQUFPLHNCQUFzQixrQkFBa0IsRUFDL0MsT0FBTyx5QkFBeUIsNkNBQTZDLEVBQzdFLE9BQU8sV0FBVyxnREFBZ0QsS0FBSyxFQUN2RSxPQUFPLHNDQUFzQyw4REFBOEQsS0FBSyxFQUNoSCxPQUFPLHdDQUF3QyxpREFBaUQsRUFDaEcsT0FBTyxpQkFBaUIsZ0JBQWdCLEVBQ3hDLE9BQU8scUJBQXFCLDJDQUEyQyxFQUN2RSxPQUFPLFdBQVcsbURBQW1ELEtBQUssRUFDMUUsT0FBTywyQkFBMkIsdUNBQXVDLEVBQ3pFLE9BQU8sQ0FBQyxRQUFRLEtBQUssS0FBSyxRQUFRLElBQUksRUFBRSxLQUFLLE1BQU07QUFBQyxDQUFDLENBQUM7QUFFekQsUUFDRyxRQUFRLFlBQVksT0FBTyxFQUMzQixNQUFNLFFBQVEsSUFBSTsiLAogICJuYW1lcyI6IFtdCn0K
11
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2xpbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIiMhL3Vzci9iaW4vZW52IG5vZGVcbi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDIzLVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge3Byb2dyYW19IGZyb20gJ2NvbW1hbmRlcic7XG5pbXBvcnQge3JlYWRGaWxlU3luY30gZnJvbSAnZnMnO1xuaW1wb3J0IHtmaWxlVVJMVG9QYXRofSBmcm9tICd1cmwnO1xuXG5pbXBvcnQge2xpbnR9IGZyb20gJy4vY29tbWFuZHMvbGludC5qcyc7XG5cbmNvbnN0IHBhY2thZ2VQYXRoID0gZmlsZVVSTFRvUGF0aChuZXcgVVJMKCcuLi8uLi9wYWNrYWdlLmpzb24nLCBpbXBvcnQubWV0YS51cmwpKTtcbmNvbnN0IHBhY2thZ2VKc29uID0gSlNPTi5wYXJzZShyZWFkRmlsZVN5bmMocGFja2FnZVBhdGgsICd1dGY4JykpO1xuXG5wcm9ncmFtXG4gIC5vcHRpb24oJy0tY2FjaGUnLCAnT25seSBjaGVjayBjaGFuZ2VkIGZpbGVzLiBEZWZhdWx0OiBmYWxzZS4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1jYWNoZS1sb2NhdGlvbiA8cGF0aD4nLCAnUGF0aCB0byB0aGUgY2FjaGUgZmlsZSBvciBkaXJlY3RvcnkuJylcbiAgLm9wdGlvbignLS1jb2xvcicsICdGb3JjZSBlbmFibGluZyBvZiBjb2xvci4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1jb25maWcgPHBhdGg+JywgJ1VzZSB0aGlzIGNvbmZpZ3VyYXRpb24sIG92ZXJyaWRpbmcgLmVzbGludHJjLiogY29uZmlnIG9wdGlvbnMgaWYgcHJlc2VudC4nKVxuICAub3B0aW9uKCctLWRlYnVnJywgJ091dHB1dCBkZWJ1Z2dpbmcgaW5mb3JtYXRpb24uJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tZW52LWluZm8nLCAnT3V0cHV0IGV4ZWN1dGlvbiBlbnZpcm9ubWVudCBpbmZvcm1hdGlvbi4gRGVmYXVsdDogZmFsc2UuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tZW52IDxuYW1lPicsICdTcGVjaWZ5IGVudmlyb25tZW50cy4nKVxuICAub3B0aW9uKCctLWV4dCA8dHlwZT4nLCAnU3BlY2lmeSBKYXZhU2NyaXB0IGZpbGUgZXh0ZW5zaW9ucy4gRGVmYXVsdDogLmpzLicpXG4gIC5vcHRpb24oJy0tZml4JywgJ0F1dG9tYXRpY2FsbHkgZml4IHByb2JsZW1zLicsIGZhbHNlKVxuICAub3B0aW9uKCctLWZpeC1kcnktcnVuJywgJ0F1dG9tYXRpY2FsbHkgZml4IHByb2JsZW1zIHdpdGhvdXQgc2F2aW5nIHRoZSBjaGFuZ2VzIHRvIHRoZSBmaWxlIHN5c3RlbS4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1maXgtdHlwZSA8dHlwZT4nLCAnU3BlY2lmeSB0aGUgdHlwZXMgb2YgZml4ZXMgdG8gYXBwbHkgKHByb2JsZW0sIHN1Z2dlc3Rpb24sIGxheW91dCkuJylcbiAgLm9wdGlvbignLS1mb3JtYXQgPG5hbWU+JywgJ1VzZSBhIHNwZWNpZmljIG91dHB1dCBmb3JtYXQuIERlZmF1bHQ6IHN0eWxpc2guJylcbiAgLm9wdGlvbignLS1nbG9iYWwgPHZhcmlhYmxlcz4nLCAnRGVmaW5lIGdsb2JhbCB2YXJpYWJsZXMuJylcbiAgLm9wdGlvbignLS1pZ25vcmUtcGF0aCA8cGF0aD4nLCAnU3BlY2lmeSBwYXRoIG9mIGlnbm9yZSBmaWxlLicpXG4gIC5vcHRpb24oJy0taWdub3JlLXBhdHRlcm4gPHBhdHRlcm4+JywgJ1BhdHRlcm4gb2YgZmlsZXMgdG8gaWdub3JlIChpbiBhZGRpdGlvbiB0byB0aG9zZSBpbiAuZXNsaW50aWdub3JlKS4nKVxuICAub3B0aW9uKCctLWluaXQnLCAnUnVuIGNvbmZpZyBpbml0aWFsaXphdGlvbiB3aXphcmQuIERlZmF1bHQ6IGZhbHNlLicsIGZhbHNlKVxuICAub3B0aW9uKCctLW1heC13YXJuaW5ncyA8bnVtPicsICdOdW1iZXIgb2Ygd2FybmluZ3MgdG8gdHJpZ2dlciBub256ZXJvIGV4aXQgY29kZS4gRGVmYXVsdDogLTEuJylcbiAgLm9wdGlvbignLS1uby1jb2xvcicsICdGb3JjZSBkaXNhYmxpbmcgb2YgY29sb3IuJywgZmFsc2UpXG4gIC5vcHRpb24oJy0tbm8tZXNsaW50cmMnLCAnRGlzYWJsZSB1c2Ugb2YgY29uZmlndXJhdGlvbiBmcm9tIC5lc2xpbnRyYy4qLicsIGZhbHNlKVxuICAub3B0aW9uKCctLW5vLWlnbm9yZScsICdEaXNhYmxlIHVzZSBvZiBpZ25vcmUgZmlsZXMgYW5kIHBhdHRlcm5zLicsIGZhbHNlKVxuICAub3B0aW9uKCctLW5vLWlubGluZS1jb25maWcnLCAnUHJldmVudCBjb21tZW50cyBmcm9tIGNoYW5naW5nIGNvbmZpZyBvciBydWxlcy4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1vdXRwdXQtZmlsZSA8cGF0aD4nLCAnU3BlY2lmeSBmaWxlIHRvIHdyaXRlIHJlcG9ydCB0by4nKVxuICAub3B0aW9uKCctLXBhcnNlciA8bmFtZT4nLCAnU3BlY2lmeSB0aGUgcGFyc2VyIHRvIGJlIHVzZWQuJylcbiAgLm9wdGlvbignLS1wYXJzZXItb3B0aW9ucyA8b3B0aW9ucz4nLCAnU3BlY2lmeSBwYXJzZXIgb3B0aW9ucy4nKVxuICAub3B0aW9uKCctLXBsdWdpbiA8cGx1Z2lucz4nLCAnU3BlY2lmeSBwbHVnaW5zLicpXG4gIC5vcHRpb24oJy0tcHJpbnQtY29uZmlnIDxwYXRoPicsICdQcmludCB0aGUgY29uZmlndXJhdGlvbiBmb3IgdGhlIGdpdmVuIGZpbGUuJylcbiAgLm9wdGlvbignLS1xdWlldCcsICdObyBMZXggbm90aWZpY2F0aW9ucyBwcmludGVkIGluIHRoZSBjb25zb2xlLicsIGZhbHNlKVxuICAub3B0aW9uKCctLXJlcG9ydC11bnVzZWQtZGlzYWJsZS1kaXJlY3RpdmVzJywgJ0FkZHMgcmVwb3J0ZWQgZXJyb3JzIGZvciB1bnVzZWQgZXNsaW50LWRpc2FibGUgZGlyZWN0aXZlcy4nLCBmYWxzZSlcbiAgLm9wdGlvbignLS1yZXNvbHZlLXBsdWdpbnMtcmVsYXRpdmUtdG8gPHBhdGg+JywgJ0EgZm9sZGVyIHdoZXJlIHBsdWdpbnMgc2hvdWxkIGJlIHJlc29sdmVkIGZyb20uJylcbiAgLm9wdGlvbignLS1ydWxlIDxwYXRoPicsICdTcGVjaWZ5IHJ1bGVzLicpXG4gIC5vcHRpb24oJy0tcnVsZXNkaXIgPHBhdGg+JywgJ1VzZSBhZGRpdGlvbmFsIHJ1bGVzIGZyb20gdGhpcyBkaXJlY3RvcnkuJylcbiAgLm9wdGlvbignLS1zdGRpbicsICdMaW50IGNvZGUgcHJvdmlkZWQgb24gPFNURElOPiAtIERlZmF1bHQ6IGZhbHNlLicsIGZhbHNlKVxuICAub3B0aW9uKCctLXN0ZGluLWZpbGVuYW1lIDxuYW1lPicsICdTcGVjaWZ5IGZpbGVuYW1lIHRvIHByb2Nlc3MgU1RESU4gYXMuJylcbiAgLmFjdGlvbigoY21kKSA9PiBsaW50KGNtZCwgcHJvY2Vzcy5leGl0KS50aGVuKCgpID0+IHt9KSk7XG5cbnByb2dyYW1cbiAgLnZlcnNpb24ocGFja2FnZUpzb24udmVyc2lvbilcbiAgLnBhcnNlKHByb2Nlc3MuYXJndik7XG4iXSwKICAibWFwcGluZ3MiOiAiO0FBS0EsU0FBUSxlQUFjO0FBQ3RCLFNBQVEsb0JBQW1CO0FBQzNCLFNBQVEscUJBQW9CO0FBRTVCLFNBQVEsWUFBVztBQUVuQixNQUFNLGNBQWMsY0FBYyxJQUFJLElBQUksc0JBQXNCLFlBQVksR0FBRyxDQUFDO0FBQ2hGLE1BQU0sY0FBYyxLQUFLLE1BQU0sYUFBYSxhQUFhLE1BQU0sQ0FBQztBQUVoRSxRQUNHLE9BQU8sV0FBVyw2Q0FBNkMsS0FBSyxFQUNwRSxPQUFPLDJCQUEyQixzQ0FBc0MsRUFDeEUsT0FBTyxXQUFXLDRCQUE0QixLQUFLLEVBQ25ELE9BQU8sbUJBQW1CLDJFQUEyRSxFQUNyRyxPQUFPLFdBQVcsaUNBQWlDLEtBQUssRUFDeEQsT0FBTyxjQUFjLDZEQUE2RCxLQUFLLEVBQ3ZGLE9BQU8sZ0JBQWdCLHVCQUF1QixFQUM5QyxPQUFPLGdCQUFnQixtREFBbUQsRUFDMUUsT0FBTyxTQUFTLCtCQUErQixLQUFLLEVBQ3BELE9BQU8saUJBQWlCLDZFQUE2RSxLQUFLLEVBQzFHLE9BQU8scUJBQXFCLG9FQUFvRSxFQUNoRyxPQUFPLG1CQUFtQixpREFBaUQsRUFDM0UsT0FBTyx3QkFBd0IsMEJBQTBCLEVBQ3pELE9BQU8sd0JBQXdCLDhCQUE4QixFQUM3RCxPQUFPLDhCQUE4QixxRUFBcUUsRUFDMUcsT0FBTyxVQUFVLHFEQUFxRCxLQUFLLEVBQzNFLE9BQU8sd0JBQXdCLCtEQUErRCxFQUM5RixPQUFPLGNBQWMsNkJBQTZCLEtBQUssRUFDdkQsT0FBTyxpQkFBaUIsa0RBQWtELEtBQUssRUFDL0UsT0FBTyxlQUFlLDZDQUE2QyxLQUFLLEVBQ3hFLE9BQU8sc0JBQXNCLG1EQUFtRCxLQUFLLEVBQ3JGLE9BQU8sd0JBQXdCLGtDQUFrQyxFQUNqRSxPQUFPLG1CQUFtQixnQ0FBZ0MsRUFDMUQsT0FBTyw4QkFBOEIseUJBQXlCLEVBQzlELE9BQU8sc0JBQXNCLGtCQUFrQixFQUMvQyxPQUFPLHlCQUF5Qiw2Q0FBNkMsRUFDN0UsT0FBTyxXQUFXLGdEQUFnRCxLQUFLLEVBQ3ZFLE9BQU8sc0NBQXNDLDhEQUE4RCxLQUFLLEVBQ2hILE9BQU8sd0NBQXdDLGlEQUFpRCxFQUNoRyxPQUFPLGlCQUFpQixnQkFBZ0IsRUFDeEMsT0FBTyxxQkFBcUIsMkNBQTJDLEVBQ3ZFLE9BQU8sV0FBVyxtREFBbUQsS0FBSyxFQUMxRSxPQUFPLDJCQUEyQix1Q0FBdUMsRUFDekUsT0FBTyxDQUFDLFFBQVEsS0FBSyxLQUFLLFFBQVEsSUFBSSxFQUFFLEtBQUssTUFBTTtBQUFDLENBQUMsQ0FBQztBQUV6RCxRQUNHLFFBQVEsWUFBWSxPQUFPLEVBQzNCLE1BQU0sUUFBUSxJQUFJOyIsCiAgIm5hbWVzIjogW10KfQo=
package/jest.config.cjs CHANGED
@@ -2,54 +2,38 @@
2
2
  * Copyright (c) 2018-Present, Nitrogen Labs, Inc.
3
3
  * Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
4
4
  */
5
- const base = require('../../jest.config.base');
6
- const pack = require('./package.json');
5
+ const { createDefaultPreset } = require("ts-jest");
6
+ const base = require("../../jest.config.base");
7
+ const pack = require("./package.json");
7
8
 
8
9
  module.exports = {
9
10
  ...base,
10
11
  collectCoverage: true,
11
12
  coveragePathIgnorePatterns: [
12
- '/node_modules/',
13
- '(tests/.*.mock).(jsx?|tsx?)$'
13
+ "/node_modules/",
14
+ "(tests/.*.mock).(jsx?|tsx?)$",
14
15
  ],
15
- coverageReporters: ['html', 'text'],
16
+ coverageReporters: ["html", "text"],
16
17
  coverageThreshold: {
17
18
  global: {
18
19
  branches: 80,
19
20
  functions: 90,
20
21
  lines: 80,
21
- statements: 80
22
- }
22
+ statements: 80,
23
+ },
23
24
  },
24
25
  displayName: pack.name,
25
- extensionsToTreatAsEsm: ['.ts'],
26
- moduleFileExtensions: ['js', 'ts', 'tsx', 'json'],
26
+ extensionsToTreatAsEsm: [".ts"],
27
+ moduleFileExtensions: ["js", "ts", "tsx", "json"],
27
28
  moduleNameMapper: {
28
- '^(\\.{1,2}/.*)\\.js$': '$1'
29
+ "^(\\.{1,2}/.*)\\.js$": "$1",
29
30
  },
30
- rootDir: './',
31
- setupFiles: ['<rootDir>/jest.setup.ts'],
32
- testMatch: ['<rootDir>/**/*.test.ts*'],
31
+ rootDir: "./",
32
+ setupFiles: ["<rootDir>/jest.setup.ts"],
33
+ testMatch: ["<rootDir>/**/*.test.ts*"],
33
34
  transform: {
34
- '\\.[jt]sx?$': [
35
- 'ts-jest',
36
- {
37
- astTransformers: {
38
- before: [
39
- {
40
- path: '../../node_modules/ts-jest-mock-import-meta',
41
- options: {metaObjectReplacement: {url: 'https://www.url.com'}}
42
- }
43
- ]
44
- },
45
- diagnostics: {
46
- ignoreCodes: [1343]
47
- },
48
- useESM: true
49
- }
50
- ]
35
+ ...createDefaultPreset().transform,
36
+ "\\.(gql|graphql)$": "jest-transform-graphql",
51
37
  },
52
- transformIgnorePatterns: [
53
- '!/node_modules/(?!execa)'
54
- ]
38
+ transformIgnorePatterns: ["!/node_modules/(?!execa)"],
55
39
  };
@@ -1,87 +1,70 @@
1
- import {resolve as pathResolve} from 'path';
2
- import {URL} from 'url';
1
+ import { createDefaultPreset } from "ts-jest";
2
+ import { resolve as pathResolve } from "path";
3
+ import { URL } from "url";
3
4
 
4
- import {getNodePath} from './dist/utils/file.js';
5
+ import { getNodePath } from "./dist/utils/file.js";
5
6
 
6
7
  const rootDir = process.cwd();
7
- const {jest, sourceFullPath, targetEnvironment, useTypescript} = JSON.parse(process.env.LEX_CONFIG || '{}');
8
+ const { jest, sourceFullPath, targetEnvironment, useTypescript } = JSON.parse(
9
+ process.env.LEX_CONFIG || "{}"
10
+ );
8
11
 
9
- // Polyfill path
10
- const dirName = new URL('.', import.meta.url).pathname;
11
- const nodePath = pathResolve(dirName, './node_modules');
12
+ const dirName = new URL(".", import.meta.url).pathname;
13
+ const nodePath = pathResolve(dirName, "./node_modules");
12
14
 
13
- let testEnvironment = 'node';
15
+ let testEnvironment = "node";
14
16
  let testEnvironmentOptions = {};
15
17
 
16
- if(targetEnvironment === 'web') {
17
- testEnvironment = 'jsdom';
18
+ if (targetEnvironment === "web") {
19
+ testEnvironment = "jsdom";
18
20
  testEnvironmentOptions = {
19
- url: 'http://localhost'
21
+ url: "http://localhost",
20
22
  };
21
23
  }
22
24
 
23
- let moduleFileExtensions = ['js', 'json'];
24
- let testRegex = '(/__tests__/.*|\\.(test|spec))\\.(js)?$';
25
- let transformIgnorePatterns = ['[/\\\\]node_modules[/\\\\].+\\.(js)$'];
25
+ let moduleFileExtensions = ["js", "json"];
26
+ let testRegex = "(/__tests__/.*|\\.(test|spec))\\.(js)?$";
27
+ let transformIgnorePatterns = ["[/\\\\]node_modules[/\\\\].+\\.(js)$"];
26
28
 
27
- if(useTypescript) {
28
- moduleFileExtensions = ['js', 'ts', 'tsx', 'json'];
29
- testRegex = '(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)?$';
30
- transformIgnorePatterns = ['[/\\\\]node_modules[/\\\\].+\\.(js|ts|tsx)$'];
29
+ if (useTypescript) {
30
+ moduleFileExtensions = ["js", "ts", "tsx", "json"];
31
+ testRegex = "(/__tests__/.*|\\.(test|spec))\\.(ts|tsx)?$";
32
+ transformIgnorePatterns = ["[/\\\\]node_modules[/\\\\].+\\.(js|ts|tsx)$"];
31
33
  }
32
34
 
33
35
  export default {
34
36
  collectCoverage: true,
35
- coverageDirectory: '<rootDir>/coverage',
36
- coveragePathIgnorePatterns: ['/node_modules/', '/dist', '/lib', '__snapshots__', '.d.ts'],
37
- coverageReporters: ['html', 'text'],
38
- moduleDirectories: [
39
- 'node_modules',
40
- nodePath
37
+ coverageDirectory: "<rootDir>/coverage",
38
+ coveragePathIgnorePatterns: [
39
+ "/node_modules/",
40
+ "/dist",
41
+ "/lib",
42
+ "__snapshots__",
43
+ ".d.ts",
41
44
  ],
45
+ coverageReporters: ["html", "text"],
46
+ moduleDirectories: ["node_modules", nodePath],
42
47
  moduleFileExtensions,
43
- moduleNameMapper: {'\\.(css|jpg|png|svg|txt)$': pathResolve(dirName, './emptyModule')},
44
- modulePaths: [
45
- rootDir,
46
- `${rootDir}/node_modules`,
47
- nodePath,
48
- sourceFullPath
49
- ],
50
- // preset: 'ts-jest/presets/js-with-ts-esm',
51
- resolver: pathResolve(dirName, './resolver.cjs'),
48
+ moduleNameMapper: {
49
+ "\\.(css|jpg|png|svg|txt)$": pathResolve(dirName, "./emptyModule"),
50
+ },
51
+ modulePaths: [rootDir, `${rootDir}/node_modules`, nodePath, sourceFullPath],
52
+ resolver: pathResolve(dirName, "./resolver.cjs"),
52
53
  rootDir,
53
54
  setupFiles: [
54
- getNodePath('core-js'),
55
- getNodePath('regenerator-runtime/runtime.js')
55
+ getNodePath("core-js"),
56
+ getNodePath("regenerator-runtime/runtime.js"),
56
57
  ],
57
58
  testEnvironment,
58
59
  testEnvironmentOptions,
59
- testPathIgnorePatterns: [
60
- '/node_modules/',
61
- `${nodePath}/`
62
- ],
60
+ testPathIgnorePatterns: ["/node_modules/", `${nodePath}/`],
63
61
  testRegex,
64
- testRunner: getNodePath('jest-circus/runner.js'),
62
+ testRunner: getNodePath("jest-circus/runner.js"),
65
63
  transform: {
66
- '\\.[jt]sx?$': [
67
- 'ts-jest',
68
- {
69
- diagnostics: {
70
- ignoreCodes: [1343]
71
- },
72
- astTransformers: {
73
- before: [
74
- {
75
- path: getNodePath('ts-jest-mock-import-meta'),
76
- options: {metaObjectReplacement: {url: 'https://www.url.com'}}
77
- }
78
- ]
79
- }
80
- }
81
- ],
82
- '\\.(gql|graphql)$': 'jest-transform-graphql'
64
+ ...createDefaultPreset().transform,
65
+ "\\.(gql|graphql)$": "jest-transform-graphql",
83
66
  },
84
67
  transformIgnorePatterns,
85
- verbose: false,
86
- ...jest
68
+ verbose: true,
69
+ ...jest,
87
70
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nlabs/lex",
3
- "version": "1.45.1",
3
+ "version": "1.46.1",
4
4
  "description": "Lex",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -25,10 +25,10 @@
25
25
  "url": "https://github.com/nitrogenlabs/lex/issues"
26
26
  },
27
27
  "engines": {
28
- "node": ">=20"
28
+ "node": ">=22"
29
29
  },
30
30
  "scripts": {
31
- "build": "NODE_ENV=production && rm -rf dist && esbuild ./src/**/**.ts* ./src/**.ts* --platform=node --outdir=./dist --sourcemap=inline --target=esnext --format=esm --packages=external",
31
+ "build": "NODE_ENV=production && rm -rf dist && esbuild ./src/**/**.ts* ./src/**.ts* --platform=node --outdir=./dist --sourcemap=inline --target=node22 --format=esm --packages=external",
32
32
  "clean": "rm -rf dist node_modules package-lock.json *.log coverage",
33
33
  "compile": "tsc -p tsconfig.build.json",
34
34
  "env": "LEX_CONFIG='{\"useTypescript\":true}'",
@@ -43,43 +43,43 @@
43
43
  "watch": "NODE_ENV=development rm -rf dist && npm run compile -w"
44
44
  },
45
45
  "dependencies": {
46
- "@babel/core": "^7.24.4",
47
- "@babel/preset-env": "^7.24.4",
48
- "@babel/preset-typescript": "7.24.1",
46
+ "@babel/core": "^7.26.7",
47
+ "@babel/preset-env": "^7.26.7",
48
+ "@babel/preset-typescript": "7.26.0",
49
49
  "@luckycatfactory/esbuild-graphql-loader": "^3.8.1",
50
- "@nlabs/execa-mock": "^1.41.0",
50
+ "@nlabs/execa-mock": "^1.42.0",
51
51
  "@nlabs/webpack-plugin-static-site": "^0.1.1",
52
- "acorn": "^8.11.3",
53
- "ajv": "^8.12.0",
52
+ "acorn": "^8.14.0",
53
+ "ajv": "^8.17.1",
54
54
  "assert": "^2.1.0",
55
- "autoprefixer": "^10.4.19",
55
+ "autoprefixer": "^10.4.20",
56
56
  "babel-jest": "^29.7.0",
57
- "boxen": "7.1.1",
58
- "caniuse-lite": "1.0.30001612",
59
- "chalk": "^5.3.0",
60
- "commander": "^12.0.0",
61
- "compare-versions": "^6.1.0",
57
+ "boxen": "8.0.1",
58
+ "caniuse-lite": "1.0.30001697",
59
+ "chalk": "^5.4.1",
60
+ "commander": "^13.1.0",
61
+ "compare-versions": "^6.1.1",
62
62
  "compression-webpack-plugin": "^11.1.0",
63
63
  "config-webpack-plugin": "^1.1.0",
64
64
  "copy-webpack-plugin": "^12.0.2",
65
- "core-js": "^3.37.0",
66
- "crypto-browserify": "^3.12.0",
67
- "css-loader": "^7.1.1",
68
- "cssnano": "^6.1.2",
65
+ "core-js": "^3.40.0",
66
+ "crypto-browserify": "^3.12.1",
67
+ "css-loader": "^7.1.2",
68
+ "cssnano": "^7.0.6",
69
69
  "dotenv-webpack": "^8.1.0",
70
70
  "download-npm-package": "^3.1.12",
71
- "esbuild": "0.20.2",
72
- "esbuild-loader": "4.1.0",
73
- "execa": "8.0.1",
71
+ "esbuild": "0.24.2",
72
+ "esbuild-loader": "4.2.2",
73
+ "execa": "9.5.2",
74
74
  "exports-loader": "^5.0.0",
75
75
  "favicons-webpack-plugin": "^6.0.1",
76
76
  "file-loader": "^6.2.0",
77
77
  "find-file-up": "^2.0.1",
78
- "glob": "^10.3.12",
79
- "graphql": "^16.8.1",
78
+ "glob": "^11.0.1",
79
+ "graphql": "^16.10.0",
80
80
  "graphql-tag": "^2.12.6",
81
- "html-loader": "^5.0.0",
82
- "html-webpack-plugin": "^5.6.0",
81
+ "html-loader": "^5.1.0",
82
+ "html-webpack-plugin": "^5.6.3",
83
83
  "https-browserify": "^1.0.0",
84
84
  "imports-loader": "^5.0.0",
85
85
  "jest": "29.7.0",
@@ -90,33 +90,33 @@
90
90
  "json-d-ts": "1.0.1",
91
91
  "latest-version": "9.0.0",
92
92
  "lodash": "^4.17.21",
93
- "luxon": "^3.4.4",
93
+ "luxon": "^3.5.0",
94
94
  "net": "^1.0.2",
95
- "npm-check-updates": "^16.14.18",
96
- "ora": "8.0.1",
95
+ "npm-check-updates": "^17.1.14",
96
+ "ora": "8.2.0",
97
97
  "os-browserify": "^0.3.0",
98
98
  "path-browserify": "^1.0.1",
99
99
  "postcss-browser-reporter": "^0.7.0",
100
100
  "postcss-cli": "^11.0.0",
101
- "postcss-custom-properties": "^13.3.8",
101
+ "postcss-custom-properties": "^14.0.4",
102
102
  "postcss-flexbugs-fixes": "^5.0.2",
103
103
  "postcss-for": "^2.1.1",
104
104
  "postcss-hash": "^3.0.0",
105
105
  "postcss-import": "16.1.0",
106
106
  "postcss-loader": "^8.1.1",
107
- "postcss-nesting": "^12.1.2",
107
+ "postcss-nesting": "^13.0.1",
108
108
  "postcss-percentage": "^0.0.0",
109
- "postcss-preset-env": "^9.5.9",
109
+ "postcss-preset-env": "^10.1.3",
110
110
  "postcss-simple-vars": "^7.0.1",
111
- "postcss-svgo": "6.0.3",
111
+ "postcss-svgo": "7.0.1",
112
112
  "postcss-url": "10.1.3",
113
113
  "process": "^0.11.10",
114
- "react": "^18.2.0",
115
- "react-dom": "^18.2.0",
114
+ "react": "^19.0.0",
115
+ "react-dom": "^19.0.0",
116
116
  "regenerator-runtime": "^0.14.1",
117
- "resolve": "^1.22.8",
118
- "rimraf": "^5.0.5",
119
- "semver": "^7.6.0",
117
+ "resolve": "^1.22.10",
118
+ "rimraf": "^6.0.1",
119
+ "semver": "^7.7.1",
120
120
  "source-map-loader": "^5.0.0",
121
121
  "source-map-support": "^0.5.21",
122
122
  "speed-measure-webpack-plugin": "^1.5.0",
@@ -124,34 +124,34 @@
124
124
  "stream-browserify": "^3.0.0",
125
125
  "stream-http": "^3.2.0",
126
126
  "style-loader": "^4.0.0",
127
- "svg-spritemap-webpack-plugin": "^4.5.0",
128
- "svgo": "3.2.0",
127
+ "svg-spritemap-webpack-plugin": "^4.7.0",
128
+ "svgo": "3.3.2",
129
129
  "tls": "^0.0.1",
130
- "ts-jest": "29.1.2",
130
+ "ts-jest": "29.2.5",
131
131
  "ts-node": "^10.9.2",
132
- "typescript": "5.4.5",
132
+ "typescript": "5.7.3",
133
133
  "url-loader": "^4.1.1",
134
134
  "util": "^0.12.5",
135
- "webpack": "5.91.0",
135
+ "webpack": "5.97.1",
136
136
  "webpack-bundle-analyzer": "^4.10.2",
137
- "webpack-cli": "^5.1.4",
138
- "webpack-merge": "^5.10.0",
137
+ "webpack-cli": "^6.0.1",
138
+ "webpack-merge": "^6.0.1",
139
139
  "webpack-nano": "^1.1.1",
140
140
  "webpack-plugin-serve": "^1.6.0"
141
141
  },
142
142
  "devDependencies": {
143
- "@babel/plugin-transform-runtime": "^7.24.3",
144
- "@babel/preset-react": "^7.24.1",
143
+ "@babel/plugin-transform-runtime": "^7.25.9",
144
+ "@babel/preset-react": "^7.26.3",
145
145
  "@nlabs/execa-mock": "^1.41.0",
146
- "@types/jest": "^29.5.12",
146
+ "@types/jest": "^29.5.14",
147
147
  "@types/luxon": "^3.4.2",
148
- "@types/node": "^20.12.7",
148
+ "@types/node": "^22.13.1",
149
149
  "@types/ora": "^3.2.0",
150
- "@types/react": "^18.2.79",
150
+ "@types/react": "^19.0.8",
151
151
  "@types/webpack": "^5.28.5",
152
- "babel-plugin-transform-import-meta": "^2.2.1",
152
+ "babel-plugin-transform-import-meta": "^2.3.2",
153
153
  "babel-plugin-transform-vite-meta-env": "^1.0.3",
154
- "eslint": "^9.1.0",
154
+ "eslint": "^9.19.0",
155
155
  "eslint-config-styleguidejs": "^3.2.1"
156
156
  },
157
157
  "gitHead": "0f5fb22fc0f0ab1abab5adf62afed24c7c87e4a8"
@@ -6,8 +6,7 @@
6
6
  "lib": [
7
7
  "es2020"
8
8
  ],
9
- "module": "NodeNext",
10
- "moduleResolution": "NodeNext",
9
+ "module": "ESNext",
11
10
  "outDir": "./dist",
12
11
  "skipLibCheck": true,
13
12
  "target": "ESNext"