@nlabs/lex 1.31.0 → 1.36.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.postcssrc.js CHANGED
@@ -3,7 +3,7 @@
3
3
  * Copyrights licensed under the MIT License. See the accompanying LICENSE file for terms.
4
4
  */
5
5
  const path = require('path');
6
- const {relativeFilePath} = require('./dist/utils');
6
+ const {relativeFilePath} = require('./dist/utils/app');
7
7
  const pluginPath = relativeFilePath('postcss-cli', path.resolve(__dirname, './node_modules'));
8
8
  const nodePath = path.resolve(pluginPath, '../');
9
9
 
package/dist/LexConfig.js CHANGED
@@ -1,54 +1,32 @@
1
1
  var __create = Object.create;
2
2
  var __defProp = Object.defineProperty;
3
- var __defProps = Object.defineProperties;
4
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
6
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
8
5
  var __getProtoOf = Object.getPrototypeOf;
9
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
10
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
11
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
12
- var __spreadValues = (a, b) => {
13
- for (var prop in b || (b = {}))
14
- if (__hasOwnProp.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- if (__getOwnPropSymbols)
17
- for (var prop of __getOwnPropSymbols(b)) {
18
- if (__propIsEnum.call(b, prop))
19
- __defNormalProp(a, prop, b[prop]);
20
- }
21
- return a;
22
- };
23
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
24
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
25
7
  var __export = (target, all) => {
26
8
  for (var name in all)
27
9
  __defProp(target, name, { get: all[name], enumerable: true });
28
10
  };
29
- var __reExport = (target, module2, copyDefault, desc) => {
30
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
31
- for (let key of __getOwnPropNames(module2))
32
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
33
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
34
16
  }
35
- return target;
36
- };
37
- var __toESM = (module2, isNodeMode) => {
38
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
17
+ return to;
39
18
  };
40
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
41
- return (module2, temp) => {
42
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
43
- };
44
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
45
21
  var LexConfig_exports = {};
46
22
  __export(LexConfig_exports, {
47
23
  LexConfig: () => LexConfig
48
24
  });
49
- var fs = __toESM(require("fs"));
25
+ module.exports = __toCommonJS(LexConfig_exports);
26
+ var fs = __toESM(require("fs-extra"));
50
27
  var path = __toESM(require("path"));
51
- var import_utils = require("./utils");
28
+ var import_file = require("./utils/file");
29
+ var import_log = require("./utils/log");
52
30
  const cwd = process.cwd();
53
31
  class LexConfig {
54
32
  static config = {
@@ -66,24 +44,10 @@ class LexConfig {
66
44
  sourceFullPath: path.resolve(cwd, "./src"),
67
45
  sourcePath: "./src",
68
46
  targetEnvironment: "web",
47
+ useGraphQl: false,
69
48
  useTypescript: false,
70
49
  webpack: {}
71
50
  };
72
- static updateConfig(updatedConfig) {
73
- const { outputFullPath, outputPath, sourcePath, sourceFullPath, useTypescript } = updatedConfig;
74
- const cwd2 = process.cwd();
75
- if (useTypescript !== void 0) {
76
- LexConfig.useTypescript = useTypescript;
77
- }
78
- if (outputPath !== void 0 && outputFullPath === void 0) {
79
- updatedConfig.outputFullPath = path.resolve(cwd2, outputPath);
80
- }
81
- if (sourcePath !== void 0 && sourceFullPath === void 0) {
82
- updatedConfig.sourceFullPath = path.resolve(cwd2, sourcePath);
83
- }
84
- LexConfig.config = __spreadValues(__spreadValues({}, LexConfig.config), updatedConfig);
85
- return LexConfig.config;
86
- }
87
51
  static set useTypescript(value) {
88
52
  LexConfig.config.useTypescript = value;
89
53
  const { sourceFullPath } = LexConfig.config;
@@ -98,6 +62,21 @@ class LexConfig {
98
62
  }
99
63
  }
100
64
  }
65
+ static updateConfig(updatedConfig) {
66
+ const { outputFullPath, outputPath, sourcePath, sourceFullPath, useTypescript } = updatedConfig;
67
+ const cwd2 = process.cwd();
68
+ if (useTypescript !== void 0) {
69
+ LexConfig.useTypescript = useTypescript;
70
+ }
71
+ if (outputPath !== void 0 && outputFullPath === void 0) {
72
+ updatedConfig.outputFullPath = path.resolve(cwd2, outputPath);
73
+ }
74
+ if (sourcePath !== void 0 && sourceFullPath === void 0) {
75
+ updatedConfig.sourceFullPath = path.resolve(cwd2, sourcePath);
76
+ }
77
+ LexConfig.config = { ...LexConfig.config, ...updatedConfig };
78
+ return LexConfig.config;
79
+ }
101
80
  static addConfigParams(cmd, params) {
102
81
  const nameProperty = "_name";
103
82
  const { environment, outputPath, sourcePath, typescript } = cmd;
@@ -115,19 +94,20 @@ class LexConfig {
115
94
  if (environment !== void 0) {
116
95
  params.targetEnvironment = environment === "web" ? "web" : "node";
117
96
  }
118
- process.env.LEX_CONFIG = JSON.stringify(__spreadProps(__spreadValues({}, LexConfig.updateConfig(params)), {
97
+ process.env.LEX_CONFIG = JSON.stringify({
98
+ ...LexConfig.updateConfig(params),
119
99
  commandName: cmd[nameProperty],
120
100
  isStatic: cmd.static
121
- }), null, 0);
101
+ }, null, 0);
122
102
  }
123
103
  static parseConfig(cmd, isRoot = true) {
124
104
  const { cliName = "Lex", lexConfig, lexConfigName, quiet, typescript } = cmd;
125
105
  const configName = lexConfigName || "lex.config.js";
126
- const defaultConfigPath = isRoot ? path.resolve(cwd, `./${configName}`) : (0, import_utils.relativeFilePath)(configName, cwd);
106
+ const defaultConfigPath = isRoot ? path.resolve(cwd, `./${configName}`) : (0, import_file.relativeFilePath)(configName, cwd);
127
107
  const configPath = lexConfig || defaultConfigPath;
128
108
  const configExists = fs.existsSync(configPath);
129
109
  if (configExists) {
130
- (0, import_utils.log)(`Using ${cliName} configuration file: ${configPath}`, "note", quiet);
110
+ (0, import_log.log)(`Using ${cliName} configuration file: ${configPath}`, "note", quiet);
131
111
  const ext = path.extname(configPath);
132
112
  if (ext === ".json") {
133
113
  const configContent = fs.readFileSync(configPath, "utf8");
@@ -140,14 +120,14 @@ class LexConfig {
140
120
  }
141
121
  LexConfig.addConfigParams(cmd, configJson);
142
122
  } else {
143
- (0, import_utils.log)(`
123
+ (0, import_log.log)(`
144
124
  ${cliName} Error: Config file malformed, ${configPath}`, "error", quiet);
145
125
  }
146
126
  } else if (ext === ".js") {
147
127
  const lexCustomConfig = require(configPath);
148
128
  LexConfig.addConfigParams(cmd, lexCustomConfig);
149
129
  } else {
150
- (0, import_utils.log)(`
130
+ (0, import_log.log)(`
151
131
  ${cliName} Error: Config file must be a JS or JSON file.`, "error", quiet);
152
132
  }
153
133
  } else {
@@ -162,8 +142,8 @@ ${cliName} Error: Config file must be a JS or JSON file.`, "error", quiet);
162
142
  }
163
143
  }
164
144
  }
165
- module.exports = __toCommonJS(LexConfig_exports);
166
145
  // Annotate the CommonJS export names for ESM import in node:
167
146
  0 && (module.exports = {
168
147
  LexConfig
169
148
  });
149
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL0xleENvbmZpZy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5cbmltcG9ydCB7cmVsYXRpdmVGaWxlUGF0aH0gZnJvbSAnLi91dGlscy9maWxlJztcbmltcG9ydCB7bG9nfSBmcm9tICcuL3V0aWxzL2xvZyc7XG5cbmNvbnN0IGN3ZDogc3RyaW5nID0gcHJvY2Vzcy5jd2QoKTtcblxuZXhwb3J0IGludGVyZmFjZSBMZXhDb25maWdUeXBlIHtcbiAgY29uZmlnRmlsZXM/OiBzdHJpbmdbXTtcbiAgZW50cnlIVE1MPzogc3RyaW5nO1xuICBlbnRyeUpzPzogc3RyaW5nO1xuICBlc2J1aWxkPzogYW55O1xuICBlbnY/OiBvYmplY3Q7XG4gIGdpdFVybD86IHN0cmluZztcbiAgamVzdD86IGFueTtcbiAgbGlicmFyeU5hbWU/OiBzdHJpbmc7XG4gIGxpYnJhcnlUYXJnZXQ/OiBzdHJpbmc7XG4gIG91dHB1dEZpbGU/OiBzdHJpbmc7XG4gIG91dHB1dEZ1bGxQYXRoPzogc3RyaW5nO1xuICBvdXRwdXRIYXNoPzogYm9vbGVhbjtcbiAgb3V0cHV0UGF0aD86IHN0cmluZztcbiAgcGFja2FnZU1hbmFnZXI/OiAnbnBtJyB8ICd5YXJuJztcbiAgcHJlc2V0PzogJ3dlYicgfCAnbm9kZScgfCAnbGFtYmRhJztcbiAgc291cmNlRnVsbFBhdGg/OiBzdHJpbmc7XG4gIHNvdXJjZVBhdGg/OiBzdHJpbmc7XG4gIHRhcmdldEVudmlyb25tZW50PzogJ25vZGUnIHwgJ3dlYic7XG4gIHVzZUdyYXBoUWw/OiBib29sZWFuO1xuICB1c2VUeXBlc2NyaXB0PzogYm9vbGVhbjtcbiAgd2VicGFjaz86IGFueTtcbn1cblxuZXhwb3J0IGNsYXNzIExleENvbmZpZyB7XG4gIHN0YXRpYyBjb25maWc6IExleENvbmZpZ1R5cGUgPSB7XG4gICAgY29uZmlnRmlsZXM6IFtdLFxuICAgIGVudHJ5SFRNTDogJ2luZGV4Lmh0bWwnLFxuICAgIGVudHJ5SnM6ICdpbmRleC5qcycsXG4gICAgZXNidWlsZDoge30sXG4gICAgZW52OiBudWxsLFxuICAgIGplc3Q6IHt9LFxuICAgIG91dHB1dEZ1bGxQYXRoOiBwYXRoLnJlc29sdmUoY3dkLCAnLi9kaXN0JyksXG4gICAgb3V0cHV0SGFzaDogZmFsc2UsXG4gICAgb3V0cHV0UGF0aDogJy4vZGlzdCcsXG4gICAgcGFja2FnZU1hbmFnZXI6ICducG0nLFxuICAgIHByZXNldDogJ3dlYicsXG4gICAgc291cmNlRnVsbFBhdGg6IHBhdGgucmVzb2x2ZShjd2QsICcuL3NyYycpLFxuICAgIHNvdXJjZVBhdGg6ICcuL3NyYycsXG4gICAgdGFyZ2V0RW52aXJvbm1lbnQ6ICd3ZWInLFxuICAgIHVzZUdyYXBoUWw6IGZhbHNlLFxuICAgIHVzZVR5cGVzY3JpcHQ6IGZhbHNlLFxuICAgIHdlYnBhY2s6IHt9XG4gIH07XG5cbiAgc3RhdGljIHNldCB1c2VUeXBlc2NyaXB0KHZhbHVlOiBib29sZWFuKSB7XG4gICAgTGV4Q29uZmlnLmNvbmZpZy51c2VUeXBlc2NyaXB0ID0gdmFsdWU7XG4gICAgY29uc3Qge3NvdXJjZUZ1bGxQYXRofSA9IExleENvbmZpZy5jb25maWc7XG5cbiAgICAvLyBNYWtlIHN1cmUgd2UgY2hhbmdlIHRoZSBkZWZhdWx0IGVudHJ5IGZpbGUgaWYgVHlwZXNjcmlwdCBpcyBiZWluZyB1c2VkLlxuICAgIGNvbnN0IHtlbnRyeUpzfSA9IExleENvbmZpZy5jb25maWc7XG5cbiAgICBpZihlbnRyeUpzID09PSAnaW5kZXguanMnICYmIHZhbHVlKSB7XG4gICAgICBjb25zdCBpbmRleFBhdGg6IHN0cmluZyA9IHBhdGgucmVzb2x2ZShjd2QsIHNvdXJjZUZ1bGxQYXRoLCAnaW5kZXgudHN4Jyk7XG4gICAgICBjb25zdCBoYXNJbmRleFRzeDogYm9vbGVhbiA9IGZzLmV4aXN0c1N5bmMoaW5kZXhQYXRoKTtcblxuICAgICAgaWYoaGFzSW5kZXhUc3gpIHtcbiAgICAgICAgTGV4Q29uZmlnLmNvbmZpZy5lbnRyeUpzID0gJ2luZGV4LnRzeCc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBMZXhDb25maWcuY29uZmlnLmVudHJ5SnMgPSAnaW5kZXgudHMnO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFNldCBvcHRpb25zIGZyb20gYSBjdXN0b20gY29uZmlndXJhdGlvbiBmaWxlXG4gIHN0YXRpYyB1cGRhdGVDb25maWcodXBkYXRlZENvbmZpZzogTGV4Q29uZmlnVHlwZSk6IExleENvbmZpZ1R5cGUge1xuICAgIGNvbnN0IHtvdXRwdXRGdWxsUGF0aCwgb3V0cHV0UGF0aCwgc291cmNlUGF0aCwgc291cmNlRnVsbFBhdGgsIHVzZVR5cGVzY3JpcHR9ID0gdXBkYXRlZENvbmZpZztcbiAgICBjb25zdCBjd2Q6IHN0cmluZyA9IHByb2Nlc3MuY3dkKCk7XG5cbiAgICAvLyBVc2UgVHlwZXNjcmlwdFxuICAgIGlmKHVzZVR5cGVzY3JpcHQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgTGV4Q29uZmlnLnVzZVR5cGVzY3JpcHQgPSB1c2VUeXBlc2NyaXB0O1xuICAgIH1cblxuICAgIC8vIERlc3RpbmF0aW9uIFBhdGhcbiAgICBpZihvdXRwdXRQYXRoICE9PSB1bmRlZmluZWQgJiYgb3V0cHV0RnVsbFBhdGggPT09IHVuZGVmaW5lZCkge1xuICAgICAgdXBkYXRlZENvbmZpZy5vdXRwdXRGdWxsUGF0aCA9IHBhdGgucmVzb2x2ZShjd2QsIG91dHB1dFBhdGgpO1xuICAgIH1cblxuICAgIC8vIFNvdXJjZSBjb2RlIHBhdGhcbiAgICBpZihzb3VyY2VQYXRoICE9PSB1bmRlZmluZWQgJiYgc291cmNlRnVsbFBhdGggPT09IHVuZGVmaW5lZCkge1xuICAgICAgdXBkYXRlZENvbmZpZy5zb3VyY2VGdWxsUGF0aCA9IHBhdGgucmVzb2x2ZShjd2QsIHNvdXJjZVBhdGgpO1xuICAgIH1cblxuICAgIExleENvbmZpZy5jb25maWcgPSB7Li4uTGV4Q29uZmlnLmNvbmZpZywgLi4udXBkYXRlZENvbmZpZ307XG4gICAgcmV0dXJuIExleENvbmZpZy5jb25maWc7XG4gIH1cblxuICAvLyBTZXQgb3B0aW9uIHVwZGF0ZXMgZnJvbSB0aGUgY29tbWFuZCBsaW5lXG4gIHN0YXRpYyBhZGRDb25maWdQYXJhbXMoY21kLCBwYXJhbXM6IExleENvbmZpZ1R5cGUpIHtcbiAgICBjb25zdCBuYW1lUHJvcGVydHk6IHN0cmluZyA9ICdfbmFtZSc7XG4gICAgY29uc3Qge2Vudmlyb25tZW50LCBvdXRwdXRQYXRoLCBzb3VyY2VQYXRoLCB0eXBlc2NyaXB0fSA9IGNtZDtcblxuICAgIC8vIEN1c3RvbSBvdXRwdXQgZGlyXG4gICAgaWYob3V0cHV0UGF0aCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBwYXJhbXMub3V0cHV0UGF0aCA9IG91dHB1dFBhdGg7XG4gICAgICBwYXJhbXMub3V0cHV0RnVsbFBhdGggPSBwYXRoLnJlc29sdmUoY3dkLCBvdXRwdXRQYXRoKTtcbiAgICB9XG5cbiAgICAvLyBDdXN0b20gc291cmNlIGRpclxuICAgIGlmKHNvdXJjZVBhdGggIT09IHVuZGVmaW5lZCkge1xuICAgICAgcGFyYW1zLnNvdXJjZVBhdGggPSBzb3VyY2VQYXRoO1xuICAgICAgcGFyYW1zLnNvdXJjZUZ1bGxQYXRoID0gcGF0aC5yZXNvbHZlKGN3ZCwgc291cmNlUGF0aCk7XG4gICAgfVxuXG4gICAgLy8gRGV0ZXJtaW5lIGlmIHdlJ3JlIHVzaW5nIFR5cGVzY3JpcHQgb3IgRmxvd1xuICAgIGlmKHR5cGVzY3JpcHQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcGFyYW1zLnVzZVR5cGVzY3JpcHQgPSB0eXBlc2NyaXB0O1xuICAgIH1cblxuICAgIC8vIFNldCB0aGUgdGFyZ2V0IGVudmlyb25tZW50XG4gICAgaWYoZW52aXJvbm1lbnQgIT09IHVuZGVmaW5lZCkge1xuICAgICAgcGFyYW1zLnRhcmdldEVudmlyb25tZW50ID0gZW52aXJvbm1lbnQgPT09ICd3ZWInID8gJ3dlYicgOiAnbm9kZSc7XG4gICAgfVxuXG4gICAgcHJvY2Vzcy5lbnYuTEVYX0NPTkZJRyA9IEpTT04uc3RyaW5naWZ5KFxuICAgICAge1xuICAgICAgICAuLi5MZXhDb25maWcudXBkYXRlQ29uZmlnKHBhcmFtcyksXG4gICAgICAgIGNvbW1hbmROYW1lOiBjbWRbbmFtZVByb3BlcnR5XSxcbiAgICAgICAgaXNTdGF0aWM6IGNtZC5zdGF0aWNcbiAgICAgIH0sIG51bGwsIDBcbiAgICApO1xuICB9XG5cbiAgLy8gR2V0IGNvbmZpZ3VyYXRpb25cbiAgc3RhdGljIHBhcnNlQ29uZmlnKGNtZCwgaXNSb290OiBib29sZWFuID0gdHJ1ZSk6IHZvaWQge1xuICAgIGNvbnN0IHtjbGlOYW1lID0gJ0xleCcsIGxleENvbmZpZywgbGV4Q29uZmlnTmFtZSwgcXVpZXQsIHR5cGVzY3JpcHR9ID0gY21kO1xuICAgIGNvbnN0IGNvbmZpZ05hbWU6IHN0cmluZyA9IGxleENvbmZpZ05hbWUgfHwgJ2xleC5jb25maWcuanMnO1xuICAgIGNvbnN0IGRlZmF1bHRDb25maWdQYXRoOiBzdHJpbmcgPSBpc1Jvb3RcbiAgICAgID8gcGF0aC5yZXNvbHZlKGN3ZCwgYC4vJHtjb25maWdOYW1lfWApXG4gICAgICA6IHJlbGF0aXZlRmlsZVBhdGgoY29uZmlnTmFtZSwgY3dkKTtcbiAgICBjb25zdCBjb25maWdQYXRoOiBzdHJpbmcgPSBsZXhDb25maWcgfHwgZGVmYXVsdENvbmZpZ1BhdGg7XG4gICAgY29uc3QgY29uZmlnRXhpc3RzOiBib29sZWFuID0gZnMuZXhpc3RzU3luYyhjb25maWdQYXRoKTtcblxuICAgIC8vIElmIHVzZXIgaGFzIGEgTGV4IGNvbmZpZyBmaWxlLCBsZXRzIHVzZSBpdC5cbiAgICBpZihjb25maWdFeGlzdHMpIHtcbiAgICAgIGxvZyhgVXNpbmcgJHtjbGlOYW1lfSBjb25maWd1cmF0aW9uIGZpbGU6ICR7Y29uZmlnUGF0aH1gLCAnbm90ZScsIHF1aWV0KTtcbiAgICAgIGNvbnN0IGV4dDogc3RyaW5nID0gcGF0aC5leHRuYW1lKGNvbmZpZ1BhdGgpO1xuXG4gICAgICBpZihleHQgPT09ICcuanNvbicpIHtcbiAgICAgICAgY29uc3QgY29uZmlnQ29udGVudDogc3RyaW5nID0gZnMucmVhZEZpbGVTeW5jKGNvbmZpZ1BhdGgsICd1dGY4Jyk7XG5cbiAgICAgICAgaWYoY29uZmlnQ29udGVudCkge1xuICAgICAgICAgIGxldCBjb25maWdKc29uOiBMZXhDb25maWdUeXBlO1xuXG4gICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbmZpZ0pzb24gPSBKU09OLnBhcnNlKGNvbmZpZ0NvbnRlbnQpO1xuICAgICAgICAgIH0gY2F0Y2goZXJyb3IpIHtcbiAgICAgICAgICAgIGNvbmZpZ0pzb24gPSB7fTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBMZXhDb25maWcuYWRkQ29uZmlnUGFyYW1zKGNtZCwgY29uZmlnSnNvbik7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbG9nKGBcXG4ke2NsaU5hbWV9IEVycm9yOiBDb25maWcgZmlsZSBtYWxmb3JtZWQsICR7Y29uZmlnUGF0aH1gLCAnZXJyb3InLCBxdWlldCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSBpZihleHQgPT09ICcuanMnKSB7XG4gICAgICAgIGNvbnN0IGxleEN1c3RvbUNvbmZpZyA9IHJlcXVpcmUoY29uZmlnUGF0aCk7XG4gICAgICAgIExleENvbmZpZy5hZGRDb25maWdQYXJhbXMoY21kLCBsZXhDdXN0b21Db25maWcpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbG9nKGBcXG4ke2NsaU5hbWV9IEVycm9yOiBDb25maWcgZmlsZSBtdXN0IGJlIGEgSlMgb3IgSlNPTiBmaWxlLmAsICdlcnJvcicsIHF1aWV0KTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gRGV0ZXJtaW5lIGlmIHdlJ3JlIHVzaW5nIFR5cGVzY3JpcHQgb3IgRmxvd1xuICAgICAgTGV4Q29uZmlnLnVzZVR5cGVzY3JpcHQgPSAhIXR5cGVzY3JpcHQ7XG5cbiAgICAgIC8vIFNhdmUgY29uZmlnIGFzIGVudmlyb25tZW50IHZhcmlhYmxlIGZvciBvdGhlciBjb21tYW5kcyB0byBpbmNsdWRlXG4gICAgICBMZXhDb25maWcuYWRkQ29uZmlnUGFyYW1zKGNtZCwgTGV4Q29uZmlnLmNvbmZpZyk7XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIGNoZWNrVHlwZXNjcmlwdENvbmZpZygpIHtcbiAgICAvLyBNYWtlIHN1cmUgdHNjb25maWcuanNvbiBleGlzdHNcbiAgICBjb25zdCB0c2NvbmZpZ1BhdGg6IHN0cmluZyA9IHBhdGgucmVzb2x2ZShjd2QsICcuL3RzY29uZmlnLmpzb24nKTtcblxuICAgIGlmKCFmcy5leGlzdHNTeW5jKHRzY29uZmlnUGF0aCkpIHtcbiAgICAgIGZzLndyaXRlRmlsZVN5bmModHNjb25maWdQYXRoLCBmcy5yZWFkRmlsZVN5bmMocGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgJy4uLy4uLy4uL3RzY29uZmlnLmJhc2UuanNvbicpKSk7XG4gICAgfVxuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQSxTQUFvQjtBQUNwQixXQUFzQjtBQUV0QixrQkFBK0I7QUFDL0IsaUJBQWtCO0FBRWxCLE1BQU0sTUFBYyxRQUFRLElBQUk7QUEwQnpCLE1BQU0sVUFBVTtBQUFBLEVBQ3JCLE9BQU8sU0FBd0I7QUFBQSxJQUM3QixhQUFhLENBQUM7QUFBQSxJQUNkLFdBQVc7QUFBQSxJQUNYLFNBQVM7QUFBQSxJQUNULFNBQVMsQ0FBQztBQUFBLElBQ1YsS0FBSztBQUFBLElBQ0wsTUFBTSxDQUFDO0FBQUEsSUFDUCxnQkFBZ0IsS0FBSyxRQUFRLEtBQUssUUFBUTtBQUFBLElBQzFDLFlBQVk7QUFBQSxJQUNaLFlBQVk7QUFBQSxJQUNaLGdCQUFnQjtBQUFBLElBQ2hCLFFBQVE7QUFBQSxJQUNSLGdCQUFnQixLQUFLLFFBQVEsS0FBSyxPQUFPO0FBQUEsSUFDekMsWUFBWTtBQUFBLElBQ1osbUJBQW1CO0FBQUEsSUFDbkIsWUFBWTtBQUFBLElBQ1osZUFBZTtBQUFBLElBQ2YsU0FBUyxDQUFDO0FBQUEsRUFDWjtBQUFBLEVBRUEsV0FBVyxjQUFjLE9BQWdCO0FBQ3ZDLGNBQVUsT0FBTyxnQkFBZ0I7QUFDakMsVUFBTSxFQUFDLG1CQUFrQixVQUFVO0FBR25DLFVBQU0sRUFBQyxZQUFXLFVBQVU7QUFFNUIsUUFBRyxZQUFZLGNBQWMsT0FBTztBQUNsQyxZQUFNLFlBQW9CLEtBQUssUUFBUSxLQUFLLGdCQUFnQixXQUFXO0FBQ3ZFLFlBQU0sY0FBdUIsR0FBRyxXQUFXLFNBQVM7QUFFcEQsVUFBRyxhQUFhO0FBQ2Qsa0JBQVUsT0FBTyxVQUFVO0FBQUEsTUFDN0IsT0FBTztBQUNMLGtCQUFVLE9BQU8sVUFBVTtBQUFBLE1BQzdCO0FBQUEsSUFDRjtBQUFBLEVBQ0Y7QUFBQSxFQUdBLE9BQU8sYUFBYSxlQUE2QztBQUMvRCxVQUFNLEVBQUMsZ0JBQWdCLFlBQVksWUFBWSxnQkFBZ0Isa0JBQWlCO0FBQ2hGLFVBQU0sT0FBYyxRQUFRLElBQUk7QUFHaEMsUUFBRyxrQkFBa0IsUUFBVztBQUM5QixnQkFBVSxnQkFBZ0I7QUFBQSxJQUM1QjtBQUdBLFFBQUcsZUFBZSxVQUFhLG1CQUFtQixRQUFXO0FBQzNELG9CQUFjLGlCQUFpQixLQUFLLFFBQVEsTUFBSyxVQUFVO0FBQUEsSUFDN0Q7QUFHQSxRQUFHLGVBQWUsVUFBYSxtQkFBbUIsUUFBVztBQUMzRCxvQkFBYyxpQkFBaUIsS0FBSyxRQUFRLE1BQUssVUFBVTtBQUFBLElBQzdEO0FBRUEsY0FBVSxTQUFTLEVBQUMsR0FBRyxVQUFVLFFBQVEsR0FBRyxjQUFhO0FBQ3pELFdBQU8sVUFBVTtBQUFBLEVBQ25CO0FBQUEsRUFHQSxPQUFPLGdCQUFnQixLQUFLLFFBQXVCO0FBQ2pELFVBQU0sZUFBdUI7QUFDN0IsVUFBTSxFQUFDLGFBQWEsWUFBWSxZQUFZLGVBQWM7QUFHMUQsUUFBRyxlQUFlLFFBQVc7QUFDM0IsYUFBTyxhQUFhO0FBQ3BCLGFBQU8saUJBQWlCLEtBQUssUUFBUSxLQUFLLFVBQVU7QUFBQSxJQUN0RDtBQUdBLFFBQUcsZUFBZSxRQUFXO0FBQzNCLGFBQU8sYUFBYTtBQUNwQixhQUFPLGlCQUFpQixLQUFLLFFBQVEsS0FBSyxVQUFVO0FBQUEsSUFDdEQ7QUFHQSxRQUFHLGVBQWUsUUFBVztBQUMzQixhQUFPLGdCQUFnQjtBQUFBLElBQ3pCO0FBR0EsUUFBRyxnQkFBZ0IsUUFBVztBQUM1QixhQUFPLG9CQUFvQixnQkFBZ0IsUUFBUSxRQUFRO0FBQUEsSUFDN0Q7QUFFQSxZQUFRLElBQUksYUFBYSxLQUFLLFVBQzVCO0FBQUEsTUFDRSxHQUFHLFVBQVUsYUFBYSxNQUFNO0FBQUEsTUFDaEMsYUFBYSxJQUFJO0FBQUEsTUFDakIsVUFBVSxJQUFJO0FBQUEsSUFDaEIsR0FBRyxNQUFNLENBQ1g7QUFBQSxFQUNGO0FBQUEsRUFHQSxPQUFPLFlBQVksS0FBSyxTQUFrQixNQUFZO0FBQ3BELFVBQU0sRUFBQyxVQUFVLE9BQU8sV0FBVyxlQUFlLE9BQU8sZUFBYztBQUN2RSxVQUFNLGFBQXFCLGlCQUFpQjtBQUM1QyxVQUFNLG9CQUE0QixTQUM5QixLQUFLLFFBQVEsS0FBSyxLQUFLLFlBQVksSUFDbkMsa0NBQWlCLFlBQVksR0FBRztBQUNwQyxVQUFNLGFBQXFCLGFBQWE7QUFDeEMsVUFBTSxlQUF3QixHQUFHLFdBQVcsVUFBVTtBQUd0RCxRQUFHLGNBQWM7QUFDZiwwQkFBSSxTQUFTLCtCQUErQixjQUFjLFFBQVEsS0FBSztBQUN2RSxZQUFNLE1BQWMsS0FBSyxRQUFRLFVBQVU7QUFFM0MsVUFBRyxRQUFRLFNBQVM7QUFDbEIsY0FBTSxnQkFBd0IsR0FBRyxhQUFhLFlBQVksTUFBTTtBQUVoRSxZQUFHLGVBQWU7QUFDaEIsY0FBSTtBQUVKLGNBQUk7QUFDRix5QkFBYSxLQUFLLE1BQU0sYUFBYTtBQUFBLFVBQ3ZDLFNBQVEsT0FBTjtBQUNBLHlCQUFhLENBQUM7QUFBQSxVQUNoQjtBQUVBLG9CQUFVLGdCQUFnQixLQUFLLFVBQVU7QUFBQSxRQUMzQyxPQUFPO0FBQ0wsOEJBQUk7QUFBQSxFQUFLLHlDQUF5QyxjQUFjLFNBQVMsS0FBSztBQUFBLFFBQ2hGO0FBQUEsTUFDRixXQUFVLFFBQVEsT0FBTztBQUN2QixjQUFNLGtCQUFrQixRQUFRLFVBQVU7QUFDMUMsa0JBQVUsZ0JBQWdCLEtBQUssZUFBZTtBQUFBLE1BQ2hELE9BQU87QUFDTCw0QkFBSTtBQUFBLEVBQUsseURBQXlELFNBQVMsS0FBSztBQUFBLE1BQ2xGO0FBQUEsSUFDRixPQUFPO0FBRUwsZ0JBQVUsZ0JBQWdCLENBQUMsQ0FBQztBQUc1QixnQkFBVSxnQkFBZ0IsS0FBSyxVQUFVLE1BQU07QUFBQSxJQUNqRDtBQUFBLEVBQ0Y7QUFBQSxFQUVBLE9BQU8sd0JBQXdCO0FBRTdCLFVBQU0sZUFBdUIsS0FBSyxRQUFRLEtBQUssaUJBQWlCO0FBRWhFLFFBQUcsQ0FBQyxHQUFHLFdBQVcsWUFBWSxHQUFHO0FBQy9CLFNBQUcsY0FBYyxjQUFjLEdBQUcsYUFBYSxLQUFLLFFBQVEsV0FBVyw2QkFBNkIsQ0FBQyxDQUFDO0FBQUEsSUFDeEc7QUFBQSxFQUNGO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
@@ -2,53 +2,37 @@ var __create = Object.create;
2
2
  var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
6
5
  var __getProtoOf = Object.getPrototypeOf;
7
6
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
9
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
10
- var __spreadValues = (a, b) => {
11
- for (var prop in b || (b = {}))
12
- if (__hasOwnProp.call(b, prop))
13
- __defNormalProp(a, prop, b[prop]);
14
- if (__getOwnPropSymbols)
15
- for (var prop of __getOwnPropSymbols(b)) {
16
- if (__propIsEnum.call(b, prop))
17
- __defNormalProp(a, prop, b[prop]);
18
- }
19
- return a;
20
- };
21
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
22
7
  var __export = (target, all) => {
23
8
  for (var name in all)
24
9
  __defProp(target, name, { get: all[name], enumerable: true });
25
10
  };
26
- var __reExport = (target, module2, copyDefault, desc) => {
27
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
28
- for (let key of __getOwnPropNames(module2))
29
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
30
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
31
16
  }
32
- return target;
33
- };
34
- var __toESM = (module2, isNodeMode) => {
35
- return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", !isNodeMode && module2 && module2.__esModule ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
17
+ return to;
36
18
  };
37
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
38
- return (module2, temp) => {
39
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
40
- };
41
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
20
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
42
21
  var build_exports = {};
43
22
  __export(build_exports, {
44
23
  build: () => build,
45
24
  buildWithEsBuild: () => buildWithEsBuild,
46
25
  buildWithWebpack: () => buildWithWebpack
47
26
  });
27
+ module.exports = __toCommonJS(build_exports);
28
+ var import_esbuild_graphql_loader = __toESM(require("@luckycatfactory/esbuild-graphql-loader"));
29
+ var import_esbuild = require("esbuild");
48
30
  var import_execa = __toESM(require("execa"));
49
31
  var path = __toESM(require("path"));
50
32
  var import_LexConfig = require("../LexConfig");
51
- var import_utils = require("../utils");
33
+ var import_app = require("../utils/app");
34
+ var import_log = require("../utils/log");
35
+ var import_file = require("../utils/file");
52
36
  const buildWithEsBuild = async (spinner, cmd, callback) => {
53
37
  const {
54
38
  cliName = "Lex",
@@ -58,32 +42,37 @@ const buildWithEsBuild = async (spinner, cmd, callback) => {
58
42
  watch
59
43
  } = cmd;
60
44
  const {
61
- targetEnvironment = "node14",
45
+ targetEnvironment,
46
+ useGraphQl,
62
47
  useTypescript
63
48
  } = import_LexConfig.LexConfig.config;
64
- const nodePath = path.resolve(__dirname, "../../node_modules");
65
- const esbuildPath = (0, import_utils.relativeFilePath)("esbuild/bin/esbuild", nodePath);
66
- const esbuildOptions = [
67
- "--bundle",
68
- sourcePath,
69
- "--color=true",
70
- "--loader:.js=js",
71
- `--outdir=${outputPath}`,
72
- "--platform=node",
73
- "--sourcemap=inline",
74
- `--target=${targetEnvironment}`
75
- ];
49
+ const loader = {
50
+ ".js": "js"
51
+ };
76
52
  if (useTypescript) {
77
- esbuildOptions.push("--loader:.ts=ts", "--loader:.tsx=tsx");
53
+ loader[".ts"] = "ts";
54
+ loader[".tsx"] = "tsx";
78
55
  }
79
- if (watch) {
80
- esbuildOptions.push("--watch");
56
+ const plugins = [];
57
+ if (useGraphQl) {
58
+ plugins.push((0, import_esbuild_graphql_loader.default)());
81
59
  }
82
60
  try {
83
- await (0, import_execa.default)(esbuildPath, esbuildOptions, { encoding: "utf-8" });
61
+ await (0, import_esbuild.build)({
62
+ bundle: true,
63
+ color: true,
64
+ entryPoints: [sourcePath],
65
+ loader,
66
+ outdir: outputPath,
67
+ platform: "node",
68
+ plugins,
69
+ sourcemap: "inline",
70
+ target: targetEnvironment === "node" ? "node14" : "es2016",
71
+ watch
72
+ });
84
73
  spinner.succeed("Build completed successfully!");
85
74
  } catch (error) {
86
- (0, import_utils.log)(`
75
+ (0, import_log.log)(`
87
76
  ${cliName} Error: ${error.message}`, "error", quiet);
88
77
  if (!quiet) {
89
78
  console.error(error);
@@ -162,13 +151,13 @@ const buildWithWebpack = async (spinner, cmd, callback) => {
162
151
  }
163
152
  try {
164
153
  const nodePath = path.resolve(__dirname, "../../node_modules");
165
- const webpackPath = (0, import_utils.relativeFilePath)("webpack-cli/bin/cli.js", nodePath);
154
+ const webpackPath = (0, import_file.relativeFilePath)("webpack-cli/bin/cli.js", nodePath);
166
155
  await (0, import_execa.default)(webpackPath, webpackOptions, { encoding: "utf-8", stdio: "inherit" });
167
156
  spinner.succeed("Build completed successfully!");
168
157
  callback(0);
169
158
  return 0;
170
159
  } catch (error) {
171
- (0, import_utils.log)(`
160
+ (0, import_log.log)(`
172
161
  ${cliName} Error: ${error.message}`, "error", quiet);
173
162
  spinner.fail("Build failed.");
174
163
  callback(error.status);
@@ -183,26 +172,26 @@ const build = async (cmd, callback = () => ({})) => {
183
172
  remove,
184
173
  variables
185
174
  } = cmd;
186
- const spinner = (0, import_utils.createSpinner)(quiet);
187
- (0, import_utils.log)(`${cliName} building...`, "info", quiet);
175
+ const spinner = (0, import_app.createSpinner)(quiet);
176
+ (0, import_log.log)(`${cliName} building...`, "info", quiet);
188
177
  import_LexConfig.LexConfig.parseConfig(cmd);
189
178
  const { outputFullPath, useTypescript } = import_LexConfig.LexConfig.config;
190
- (0, import_utils.checkLinkedModules)();
179
+ (0, import_app.checkLinkedModules)();
191
180
  let variablesObj = { NODE_ENV: "production" };
192
181
  if (variables) {
193
182
  try {
194
183
  variablesObj = JSON.parse(variables);
195
184
  } catch (error) {
196
- (0, import_utils.log)(`
185
+ (0, import_log.log)(`
197
186
  ${cliName} Error: Environment variables option is not a valid JSON object.`, "error", quiet);
198
187
  callback(1);
199
188
  return 1;
200
189
  }
201
190
  }
202
- process.env = __spreadValues(__spreadValues({}, process.env), variablesObj);
191
+ process.env = { ...process.env, ...variablesObj };
203
192
  spinner.start("Building code...");
204
193
  if (remove) {
205
- await (0, import_utils.removeFiles)(outputFullPath);
194
+ await (0, import_app.removeFiles)(outputFullPath);
206
195
  }
207
196
  if (useTypescript) {
208
197
  import_LexConfig.LexConfig.checkTypescriptConfig();
@@ -212,10 +201,10 @@ ${cliName} Error: Environment variables option is not a valid JSON object.`, "er
212
201
  }
213
202
  return buildWithWebpack(spinner, cmd, callback);
214
203
  };
215
- module.exports = __toCommonJS(build_exports);
216
204
  // Annotate the CommonJS export names for ESM import in node:
217
205
  0 && (module.exports = {
218
206
  build,
219
207
  buildWithEsBuild,
220
208
  buildWithWebpack
221
209
  });
210
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL2J1aWxkLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOC1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IGdyYXBocWxMb2FkZXJQbHVnaW4gZnJvbSAnQGx1Y2t5Y2F0ZmFjdG9yeS9lc2J1aWxkLWdyYXBocWwtbG9hZGVyJztcbmltcG9ydCB7YnVpbGQgYXMgZXNCdWlsZH0gZnJvbSAnZXNidWlsZCc7XG5pbXBvcnQge2RlZmF1bHQgYXMgZXhlY2F9IGZyb20gJ2V4ZWNhJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5cbmltcG9ydCB7TGV4Q29uZmlnfSBmcm9tICcuLi9MZXhDb25maWcnO1xuaW1wb3J0IHtjaGVja0xpbmtlZE1vZHVsZXMsIGNyZWF0ZVNwaW5uZXIsIHJlbW92ZUZpbGVzfSBmcm9tICcuLi91dGlscy9hcHAnO1xuaW1wb3J0IHtsb2d9IGZyb20gJy4uL3V0aWxzL2xvZyc7XG5pbXBvcnQge3JlbGF0aXZlRmlsZVBhdGh9IGZyb20gJy4uL3V0aWxzL2ZpbGUnO1xuXG5leHBvcnQgY29uc3QgYnVpbGRXaXRoRXNCdWlsZCA9IGFzeW5jIChzcGlubmVyLCBjbWQsIGNhbGxiYWNrKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBjbGlOYW1lID0gJ0xleCcsXG4gICAgb3V0cHV0UGF0aCxcbiAgICBxdWlldCxcbiAgICBzb3VyY2VQYXRoLFxuICAgIHdhdGNoXG4gIH0gPSBjbWQ7XG4gIGNvbnN0IHtcbiAgICB0YXJnZXRFbnZpcm9ubWVudCxcbiAgICB1c2VHcmFwaFFsLFxuICAgIHVzZVR5cGVzY3JpcHRcbiAgfSA9IExleENvbmZpZy5jb25maWc7XG5cbiAgY29uc3QgbG9hZGVyOiBhbnkgPSB7XG4gICAgJy5qcyc6ICdqcydcbiAgfTtcblxuICBpZih1c2VUeXBlc2NyaXB0KSB7XG4gICAgbG9hZGVyWycudHMnXSA9ICd0cyc7XG4gICAgbG9hZGVyWycudHN4J10gPSAndHN4JztcbiAgfVxuXG4gIC8vIFBsdWdpbnNcbiAgY29uc3QgcGx1Z2lucyA9IFtdO1xuXG4gIGlmKHVzZUdyYXBoUWwpIHtcbiAgICBwbHVnaW5zLnB1c2goZ3JhcGhxbExvYWRlclBsdWdpbigpKTtcbiAgfVxuXG4gIHRyeSB7XG4gICAgYXdhaXQgZXNCdWlsZCh7XG4gICAgICBidW5kbGU6IHRydWUsXG4gICAgICBjb2xvcjogdHJ1ZSxcbiAgICAgIGVudHJ5UG9pbnRzOiBbc291cmNlUGF0aF0sXG4gICAgICBsb2FkZXIsXG4gICAgICBvdXRkaXI6IG91dHB1dFBhdGgsXG4gICAgICBwbGF0Zm9ybTogJ25vZGUnLFxuICAgICAgcGx1Z2lucyxcbiAgICAgIHNvdXJjZW1hcDogJ2lubGluZScsXG4gICAgICB0YXJnZXQ6IHRhcmdldEVudmlyb25tZW50ID09PSAnbm9kZScgPyAnbm9kZTE0JyA6ICdlczIwMTYnLFxuICAgICAgd2F0Y2hcbiAgICB9KTtcblxuICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgIHNwaW5uZXIuc3VjY2VlZCgnQnVpbGQgY29tcGxldGVkIHN1Y2Nlc3NmdWxseSEnKTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIC8vIERpc3BsYXkgZXJyb3IgbWVzc2FnZVxuICAgIGxvZyhgXFxuJHtjbGlOYW1lfSBFcnJvcjogJHtlcnJvci5tZXNzYWdlfWAsICdlcnJvcicsIHF1aWV0KTtcblxuICAgIGlmKCFxdWlldCkge1xuICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgfVxuXG4gICAgLy8gU3RvcCBzcGlubmVyXG4gICAgc3Bpbm5lci5mYWlsKCdDb2RlIGJ1aWxkIGZhaWxlZC4nKTtcblxuICAgIC8vIEtpbGwgUHJvY2Vzc1xuICAgIGNhbGxiYWNrKGVycm9yLnN0YXR1cyk7XG4gICAgcmV0dXJuIGVycm9yLnN0YXR1cztcbiAgfVxuXG4gIC8vIFN0b3AgcHJvY2Vzc1xuICBjYWxsYmFjaygwKTtcbiAgcmV0dXJuIDA7XG59O1xuXG5leHBvcnQgY29uc3QgYnVpbGRXaXRoV2VicGFjayA9IGFzeW5jIChzcGlubmVyLCBjbWQsIGNhbGxiYWNrKSA9PiB7XG4gIGNvbnN0IHtcbiAgICBidWlsZERlbGltaXRlcixcbiAgICBjbGlOYW1lID0gJ0xleCcsXG4gICAgY29uZmlnLFxuICAgIG1vZGUsXG4gICAgb3V0cHV0Q2h1bmtGaWxlbmFtZSxcbiAgICBvdXRwdXRGaWxlbmFtZSxcbiAgICBvdXRwdXRKc29ucEZ1bmN0aW9uLFxuICAgIG91dHB1dExpYnJhcnksXG4gICAgb3V0cHV0TGlicmFyeVRhcmdldCxcbiAgICBvdXRwdXRQYXRoaW5mbyxcbiAgICBvdXRwdXRQdWJsaWNQYXRoLFxuICAgIG91dHB1dFNvdXJjZU1hcEZpbGVuYW1lLFxuICAgIHF1aWV0ID0gZmFsc2UsXG4gICAgd2F0Y2hcbiAgfSA9IGNtZDtcblxuICAvLyBHZXQgY3VzdG9tIHdlYnBhY2sgY29uZmlndXJhdGlvblxuICBsZXQgd2VicGFja0NvbmZpZzogc3RyaW5nO1xuXG4gIGlmKGNvbmZpZykge1xuICAgIGNvbnN0IGlzUmVsYXRpdmVDb25maWc6IGJvb2xlYW4gPSBjb25maWcuc3Vic3RyKDAsIDIpID09PSAnLi8nO1xuICAgIGNvbnN0IGZ1bGxDb25maWdQYXRoOiBzdHJpbmcgPSBpc1JlbGF0aXZlQ29uZmlnID8gcGF0aC5yZXNvbHZlKHByb2Nlc3MuY3dkKCksIGNvbmZpZykgOiBjb25maWc7XG4gICAgd2VicGFja0NvbmZpZyA9IGZ1bGxDb25maWdQYXRoO1xuICB9IGVsc2Uge1xuICAgIHdlYnBhY2tDb25maWcgPSBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnLi4vLi4vd2VicGFjay5jb25maWcuanMnKTtcbiAgfVxuXG4gIGNvbnN0IHdlYnBhY2tPcHRpb25zOiBzdHJpbmdbXSA9IFtcbiAgICAnLS1jb2xvcicsXG4gICAgJy0tcHJvZ3Jlc3MnLFxuICAgICctLXN0YXRzLWVycm9yLWRldGFpbHMnLFxuICAgICctLWNvbmZpZycsIHdlYnBhY2tDb25maWdcbiAgXTtcblxuICBpZihtb2RlKSB7XG4gICAgd2VicGFja09wdGlvbnMucHVzaCgnLS1tb2RlJywgbW9kZSk7XG4gIH1cblxuICBpZihvdXRwdXRDaHVua0ZpbGVuYW1lKSB7XG4gICAgd2VicGFja09wdGlvbnMucHVzaCgnLS1vdXRwdXQtY2h1bmstZmlsZW5hbWUnLCBvdXRwdXRDaHVua0ZpbGVuYW1lKTtcbiAgfVxuXG4gIGlmKG91dHB1dEZpbGVuYW1lKSB7XG4gICAgd2VicGFja09wdGlvbnMucHVzaCgnLS1vdXRwdXQtZmlsZW5hbWUnLCBvdXRwdXRGaWxlbmFtZSk7XG4gIH1cblxuICBpZihvdXRwdXRKc29ucEZ1bmN0aW9uKSB7XG4gICAgd2VicGFja09wdGlvbnMucHVzaCgnLS1vdXRwdXQtanNvbnAtZnVuY3Rpb24nLCBvdXRwdXRKc29ucEZ1bmN0aW9uKTtcbiAgfVxuXG4gIGlmKG91dHB1dExpYnJhcnkpIHtcbiAgICB3ZWJwYWNrT3B0aW9ucy5wdXNoKCctLW91dHB1dC1saWJyYXJ5Jywgb3V0cHV0TGlicmFyeSk7XG4gIH1cblxuICBpZihvdXRwdXRMaWJyYXJ5VGFyZ2V0KSB7XG4gICAgd2VicGFja09wdGlvbnMucHVzaCgnLS1vdXRwdXQtbGlicmFyeS10YXJnZXQnLCBvdXRwdXRMaWJyYXJ5VGFyZ2V0KTtcbiAgfVxuXG4gIGlmKG91dHB1dFBhdGhpbmZvKSB7XG4gICAgd2VicGFja09wdGlvbnMucHVzaCgnLS1vdXRwdXQtcGF0aC1pbmZvJywgb3V0cHV0UGF0aGluZm8pO1xuICB9XG5cbiAgaWYob3V0cHV0UHVibGljUGF0aCkge1xuICAgIHdlYnBhY2tPcHRpb25zLnB1c2goJy0tb3V0cHV0LXB1YmxpYy1wYXRoJywgb3V0cHV0UHVibGljUGF0aCk7XG4gIH1cblxuICBpZihvdXRwdXRTb3VyY2VNYXBGaWxlbmFtZSkge1xuICAgIHdlYnBhY2tPcHRpb25zLnB1c2goJy0tb3V0cHV0LXNvdXJjZS1tYXAtZmlsZW5hbWUnLCBvdXRwdXRTb3VyY2VNYXBGaWxlbmFtZSk7XG4gIH1cblxuICBpZihidWlsZERlbGltaXRlcikge1xuICAgIHdlYnBhY2tPcHRpb25zLnB1c2goJy0tYnVpbGQtZGVsaW1pdGVyJywgYnVpbGREZWxpbWl0ZXIpO1xuICB9XG5cbiAgaWYod2F0Y2gpIHtcbiAgICB3ZWJwYWNrT3B0aW9ucy5wdXNoKCctLXdhdGNoJyk7XG4gIH1cblxuICAvLyBDb21waWxlIHVzaW5nIHdlYnBhY2tcbiAgdHJ5IHtcbiAgICBjb25zdCBub2RlUGF0aDogc3RyaW5nID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgJy4uLy4uL25vZGVfbW9kdWxlcycpO1xuICAgIGNvbnN0IHdlYnBhY2tQYXRoOiBzdHJpbmcgPSByZWxhdGl2ZUZpbGVQYXRoKCd3ZWJwYWNrLWNsaS9iaW4vY2xpLmpzJywgbm9kZVBhdGgpO1xuICAgIGF3YWl0IGV4ZWNhKHdlYnBhY2tQYXRoLCB3ZWJwYWNrT3B0aW9ucywge2VuY29kaW5nOiAndXRmLTgnLCBzdGRpbzogJ2luaGVyaXQnfSk7XG5cbiAgICAvLyBTdG9wIHNwaW5uZXJcbiAgICBzcGlubmVyLnN1Y2NlZWQoJ0J1aWxkIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkhJyk7XG5cbiAgICAvLyBTdG9wIHByb2Nlc3NcbiAgICBjYWxsYmFjaygwKTtcbiAgICByZXR1cm4gMDtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIC8vIERpc3BsYXkgZXJyb3IgbWVzc2FnZVxuICAgIGxvZyhgXFxuJHtjbGlOYW1lfSBFcnJvcjogJHtlcnJvci5tZXNzYWdlfWAsICdlcnJvcicsIHF1aWV0KTtcblxuICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgIHNwaW5uZXIuZmFpbCgnQnVpbGQgZmFpbGVkLicpO1xuXG4gICAgLy8gS2lsbCBwcm9jZXNzXG4gICAgY2FsbGJhY2soZXJyb3Iuc3RhdHVzKTtcbiAgICByZXR1cm4gZXJyb3Iuc3RhdHVzO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgYnVpbGQgPSBhc3luYyAoY21kOiBhbnksIGNhbGxiYWNrOiBhbnkgPSAoKSA9PiAoe30pKTogUHJvbWlzZTxudW1iZXI+ID0+IHtcbiAgY29uc3Qge1xuICAgIGJ1bmRsZXIgPSAnd2VicGFjaycsXG4gICAgY2xpTmFtZSA9ICdMZXgnLFxuICAgIHF1aWV0ID0gZmFsc2UsXG4gICAgcmVtb3ZlLFxuICAgIHZhcmlhYmxlc1xuICB9ID0gY21kO1xuXG4gIC8vIFNwaW5uZXJcbiAgY29uc3Qgc3Bpbm5lciA9IGNyZWF0ZVNwaW5uZXIocXVpZXQpO1xuXG4gIC8vIERpc3BsYXkgc3RhdHVzXG4gIGxvZyhgJHtjbGlOYW1lfSBidWlsZGluZy4uLmAsICdpbmZvJywgcXVpZXQpO1xuXG4gIC8vIEdldCBjdXN0b20gY29uZmlndXJhdGlvblxuICBMZXhDb25maWcucGFyc2VDb25maWcoY21kKTtcblxuICBjb25zdCB7b3V0cHV0RnVsbFBhdGgsIHVzZVR5cGVzY3JpcHR9ID0gTGV4Q29uZmlnLmNvbmZpZztcblxuICAvLyBDaGVjayBmb3IgbGlua2VkIG1vZHVsZXNcbiAgY2hlY2tMaW5rZWRNb2R1bGVzKCk7XG5cbiAgLy8gU2V0IG5vZGUgZW52aXJvbm1lbnQgdmFyaWFibGVzXG4gIGxldCB2YXJpYWJsZXNPYmo6IG9iamVjdCA9IHtOT0RFX0VOVjogJ3Byb2R1Y3Rpb24nfTtcblxuICBpZih2YXJpYWJsZXMpIHtcbiAgICB0cnkge1xuICAgICAgdmFyaWFibGVzT2JqID0gSlNPTi5wYXJzZSh2YXJpYWJsZXMpO1xuICAgIH0gY2F0Y2goZXJyb3IpIHtcbiAgICAgIGxvZyhgXFxuJHtjbGlOYW1lfSBFcnJvcjogRW52aXJvbm1lbnQgdmFyaWFibGVzIG9wdGlvbiBpcyBub3QgYSB2YWxpZCBKU09OIG9iamVjdC5gLCAnZXJyb3InLCBxdWlldCk7XG5cbiAgICAgIC8vIEtpbGwgcHJvY2Vzc1xuICAgICAgY2FsbGJhY2soMSk7XG4gICAgICByZXR1cm4gMTtcbiAgICB9XG4gIH1cblxuICBwcm9jZXNzLmVudiA9IHsuLi5wcm9jZXNzLmVudiwgLi4udmFyaWFibGVzT2JqfTtcblxuICAvLyBTdGFydCBidWlsZCBzcGlubmVyXG4gIHNwaW5uZXIuc3RhcnQoJ0J1aWxkaW5nIGNvZGUuLi4nKTtcblxuICAvLyBDbGVhbiBvdXRwdXQgZGlyZWN0b3J5IGJlZm9yZSB3ZSBzdGFydCBhZGRpbmcgaW4gbmV3IGZpbGVzXG4gIGlmKHJlbW92ZSkge1xuICAgIGF3YWl0IHJlbW92ZUZpbGVzKG91dHB1dEZ1bGxQYXRoKTtcbiAgfVxuXG4gIC8vIEFkZCB0c2NvbmZpZyBmaWxlIGlmIG5vbmUgZXhpc3RzXG4gIGlmKHVzZVR5cGVzY3JpcHQpIHtcbiAgICAvLyBNYWtlIHN1cmUgdHNjb25maWcuanNvbiBleGlzdHNcbiAgICBMZXhDb25maWcuY2hlY2tUeXBlc2NyaXB0Q29uZmlnKCk7XG4gIH1cblxuICBpZihidW5kbGVyID09PSAnZXNidWlsZCcpIHtcbiAgICByZXR1cm4gYnVpbGRXaXRoRXNCdWlsZChzcGlubmVyLCBjbWQsIGNhbGxiYWNrKTtcbiAgfVxuXG4gIHJldHVybiBidWlsZFdpdGhXZWJwYWNrKHNwaW5uZXIsIGNtZCwgY2FsbGJhY2spO1xufTtcblxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBLG9DQUFnQztBQUNoQyxxQkFBK0I7QUFDL0IsbUJBQStCO0FBQy9CLFdBQXNCO0FBRXRCLHVCQUF3QjtBQUN4QixpQkFBNkQ7QUFDN0QsaUJBQWtCO0FBQ2xCLGtCQUErQjtBQUV4QixNQUFNLG1CQUFtQixPQUFPLFNBQVMsS0FBSyxhQUFhO0FBQ2hFLFFBQU07QUFBQSxJQUNKLFVBQVU7QUFBQSxJQUNWO0FBQUEsSUFDQTtBQUFBLElBQ0E7QUFBQSxJQUNBO0FBQUEsTUFDRTtBQUNK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
@@ -1,8 +1,8 @@
1
1
  var import_build = require("./build");
2
- jest.mock("execa");
3
2
  describe("build", () => {
4
3
  it("should", async () => {
5
4
  const status = await (0, import_build.build)({ cliName: "Test" }, Promise.resolve);
6
5
  expect(status).toBe(1);
7
6
  });
8
7
  });
8
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL2J1bGlkLnRlc3QudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImltcG9ydCB7YnVpbGR9IGZyb20gJy4vYnVpbGQnO1xuXG5kZXNjcmliZSgnYnVpbGQnLCAoKSA9PiB7XG4gIGl0KCdzaG91bGQnLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3Qgc3RhdHVzOiBudW1iZXIgPSBhd2FpdCBidWlsZCh7Y2xpTmFtZTogJ1Rlc3QnfSwgUHJvbWlzZS5yZXNvbHZlKTtcbiAgICBleHBlY3Qoc3RhdHVzKS50b0JlKDEpO1xuICB9KTtcbn0pO1xuIl0sCiAgIm1hcHBpbmdzIjogIkFBQUEsbUJBQW9CO0FBRXBCLFNBQVMsU0FBUyxNQUFNO0FBQ3RCLEtBQUcsVUFBVSxZQUFZO0FBQ3ZCLFVBQU0sU0FBaUIsTUFBTSx3QkFBTSxFQUFDLFNBQVMsT0FBTSxHQUFHLFFBQVEsT0FBTztBQUNyRSxXQUFPLE1BQU0sRUFBRSxLQUFLLENBQUM7QUFBQSxFQUN2QixDQUFDO0FBQ0gsQ0FBQzsiLAogICJuYW1lcyI6IFtdCn0K
@@ -2,56 +2,53 @@ var __defProp = Object.defineProperty;
2
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
5
- var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
6
5
  var __export = (target, all) => {
7
6
  for (var name in all)
8
7
  __defProp(target, name, { get: all[name], enumerable: true });
9
8
  };
10
- var __reExport = (target, module2, copyDefault, desc) => {
11
- if (module2 && typeof module2 === "object" || typeof module2 === "function") {
12
- for (let key of __getOwnPropNames(module2))
13
- if (!__hasOwnProp.call(target, key) && (copyDefault || key !== "default"))
14
- __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
14
  }
16
- return target;
15
+ return to;
17
16
  };
18
- var __toCommonJS = /* @__PURE__ */ ((cache) => {
19
- return (module2, temp) => {
20
- return cache && cache.get(module2) || (temp = __reExport(__markAsModule({}), module2, 1), cache && cache.set(module2, temp), temp);
21
- };
22
- })(typeof WeakMap !== "undefined" ? /* @__PURE__ */ new WeakMap() : 0);
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
23
18
  var clean_exports = {};
24
19
  __export(clean_exports, {
25
20
  clean: () => clean
26
21
  });
22
+ module.exports = __toCommonJS(clean_exports);
27
23
  var import_LexConfig = require("../LexConfig");
28
- var import_utils = require("../utils");
24
+ var import_app = require("../utils/app");
25
+ var import_log = require("../utils/log");
29
26
  const clean = async (cmd, callback = () => ({})) => {
30
27
  const { cliName = "Lex", quiet, snapshots } = cmd;
31
- const spinner = (0, import_utils.createSpinner)(quiet);
32
- (0, import_utils.log)(`${cliName} cleaning directory...`, "info", quiet);
28
+ const spinner = (0, import_app.createSpinner)(quiet);
29
+ (0, import_log.log)(`${cliName} cleaning directory...`, "info", quiet);
33
30
  import_LexConfig.LexConfig.parseConfig(cmd);
34
31
  spinner.start("Cleaning files...");
35
32
  try {
36
- await (0, import_utils.removeModules)();
37
- await (0, import_utils.removeFiles)("./coverage", true);
38
- await (0, import_utils.removeFiles)("./npm-debug.log", true);
33
+ await (0, import_app.removeModules)();
34
+ await (0, import_app.removeFiles)("./coverage", true);
35
+ await (0, import_app.removeFiles)("./npm-debug.log", true);
39
36
  if (snapshots) {
40
- await (0, import_utils.removeFiles)("./**/__snapshots__", true);
37
+ await (0, import_app.removeFiles)("./**/__snapshots__", true);
41
38
  }
42
39
  spinner.succeed("Successfully cleaned!");
43
40
  callback(0);
44
41
  return 0;
45
42
  } catch (error) {
46
- (0, import_utils.log)(`
43
+ (0, import_log.log)(`
47
44
  ${cliName} Error: ${error.message}`, "error", quiet);
48
45
  spinner.fail("Failed to clean project.");
49
46
  callback(error.status);
50
47
  return error.status;
51
48
  }
52
49
  };
53
- module.exports = __toCommonJS(clean_exports);
54
50
  // Annotate the CommonJS export names for ESM import in node:
55
51
  0 && (module.exports = {
56
52
  clean
57
53
  });
54
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL2NsZWFuLnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIENvcHlyaWdodCAoYykgMjAxOC1QcmVzZW50LCBOaXRyb2dlbiBMYWJzLCBJbmMuXG4gKiBDb3B5cmlnaHRzIGxpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgTGljZW5zZS4gU2VlIHRoZSBhY2NvbXBhbnlpbmcgTElDRU5TRSBmaWxlIGZvciB0ZXJtcy5cbiAqL1xuaW1wb3J0IHtMZXhDb25maWd9IGZyb20gJy4uL0xleENvbmZpZyc7XG5pbXBvcnQge2NyZWF0ZVNwaW5uZXIsIHJlbW92ZUZpbGVzLCByZW1vdmVNb2R1bGVzfSBmcm9tICcuLi91dGlscy9hcHAnO1xuaW1wb3J0IHtsb2d9IGZyb20gJy4uL3V0aWxzL2xvZyc7XG5cbmV4cG9ydCBjb25zdCBjbGVhbiA9IGFzeW5jIChjbWQ6IGFueSwgY2FsbGJhY2s6IGFueSA9ICgpID0+ICh7fSkpOiBQcm9taXNlPG51bWJlcj4gPT4ge1xuICBjb25zdCB7Y2xpTmFtZSA9ICdMZXgnLCBxdWlldCwgc25hcHNob3RzfSA9IGNtZDtcblxuICAvLyBTcGlubmVyXG4gIGNvbnN0IHNwaW5uZXIgPSBjcmVhdGVTcGlubmVyKHF1aWV0KTtcblxuICAvLyBEaXNwbGF5IHN0YXR1c1xuICBsb2coYCR7Y2xpTmFtZX0gY2xlYW5pbmcgZGlyZWN0b3J5Li4uYCwgJ2luZm8nLCBxdWlldCk7XG5cbiAgLy8gR2V0IGN1c3RvbSBjb25maWd1cmF0aW9uXG4gIExleENvbmZpZy5wYXJzZUNvbmZpZyhjbWQpO1xuXG4gIC8vIFN0YXJ0IGNsZWFuaW5nIHNwaW5uZXJcbiAgc3Bpbm5lci5zdGFydCgnQ2xlYW5pbmcgZmlsZXMuLi4nKTtcblxuICB0cnkge1xuICAgIC8vIFJlbW92ZSBub2RlX21vZHVsZXNcbiAgICBhd2FpdCByZW1vdmVNb2R1bGVzKCk7XG5cbiAgICAvLyBSZW1vdmUgdGVzdCBjb3ZlcmFnZSByZXBvcnRzXG4gICAgYXdhaXQgcmVtb3ZlRmlsZXMoJy4vY292ZXJhZ2UnLCB0cnVlKTtcblxuICAgIC8vIFJlbW92ZSBucG0gbG9nc1xuICAgIGF3YWl0IHJlbW92ZUZpbGVzKCcuL25wbS1kZWJ1Zy5sb2cnLCB0cnVlKTtcblxuICAgIGlmKHNuYXBzaG90cykge1xuICAgICAgYXdhaXQgcmVtb3ZlRmlsZXMoJy4vKiovX19zbmFwc2hvdHNfXycsIHRydWUpO1xuICAgIH1cblxuICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgIHNwaW5uZXIuc3VjY2VlZCgnU3VjY2Vzc2Z1bGx5IGNsZWFuZWQhJyk7XG5cbiAgICAvLyBTdG9wIHByb2Nlc3NcbiAgICBjYWxsYmFjaygwKTtcbiAgICByZXR1cm4gMDtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIC8vIERpc3BsYXkgZXJyb3IgbWVzc2FnZVxuICAgIGxvZyhgXFxuJHtjbGlOYW1lfSBFcnJvcjogJHtlcnJvci5tZXNzYWdlfWAsICdlcnJvcicsIHF1aWV0KTtcblxuICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgIHNwaW5uZXIuZmFpbCgnRmFpbGVkIHRvIGNsZWFuIHByb2plY3QuJyk7XG5cbiAgICAvLyBLaWxsIHByb2Nlc3NcbiAgICBjYWxsYmFjayhlcnJvci5zdGF0dXMpO1xuICAgIHJldHVybiBlcnJvci5zdGF0dXM7XG4gIH1cbn07XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQSx1QkFBd0I7QUFDeEIsaUJBQXdEO0FBQ3hELGlCQUFrQjtBQUVYLE1BQU0sUUFBUSxPQUFPLEtBQVUsV0FBZ0IsTUFBTyxFQUFDLE9BQXdCO0FBQ3BGLFFBQU0sRUFBQyxVQUFVLE9BQU8sT0FBTyxjQUFhO0FBRzVDLFFBQU0sVUFBVSw4QkFBYyxLQUFLO0FBR25DLHNCQUFJLEdBQUcsaUNBQWlDLFFBQVEsS0FBSztBQUdyRCw2QkFBVSxZQUFZLEdBQUc7QUFHekIsVUFBUSxNQUFNLG1CQUFtQjtBQUVqQyxNQUFJO0FBRUYsVUFBTSw4QkFBYztBQUdwQixVQUFNLDRCQUFZLGNBQWMsSUFBSTtBQUdwQyxVQUFNLDRCQUFZLG1CQUFtQixJQUFJO0FBRXpDLFFBQUcsV0FBVztBQUNaLFlBQU0sNEJBQVksc0JBQXNCLElBQUk7QUFBQSxJQUM5QztBQUdBLFlBQVEsUUFBUSx1QkFBdUI7QUFHdkMsYUFBUyxDQUFDO0FBQ1YsV0FBTztBQUFBLEVBQ1QsU0FBUSxPQUFOO0FBRUEsd0JBQUk7QUFBQSxFQUFLLGtCQUFrQixNQUFNLFdBQVcsU0FBUyxLQUFLO0FBRzFELFlBQVEsS0FBSywwQkFBMEI7QUFHdkMsYUFBUyxNQUFNLE1BQU07QUFDckIsV0FBTyxNQUFNO0FBQUEsRUFDZjtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=