@nlabs/lex 1.37.8 → 1.39.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.
@@ -1,49 +1,21 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
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 });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
21
- mod
22
- ));
23
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
24
- var compile_exports = {};
25
- __export(compile_exports, {
26
- compile: () => compile,
27
- hasFileType: () => hasFileType
28
- });
29
- module.exports = __toCommonJS(compile_exports);
30
- var import_execa = __toESM(require("execa"));
31
- var fs = __toESM(require("fs-extra"));
32
- var glob = __toESM(require("glob"));
33
- var path = __toESM(require("path"));
34
- var import_LexConfig = require("../LexConfig");
35
- var import_app = require("../utils/app");
36
- var import_file = require("../utils/file");
37
- var import_log = require("../utils/log");
1
+ import { execa } from "execa";
2
+ import { existsSync, lstatSync, readdirSync } from "fs";
3
+ import * as glob from "glob";
4
+ import * as path from "path";
5
+ import { fileURLToPath } from "url";
6
+ import { LexConfig } from "../LexConfig.js";
7
+ import { checkLinkedModules, copyFiles, createSpinner, getFilesByExt, removeFiles } from "../utils/app.js";
8
+ import { relativeFilePath } from "../utils/file.js";
9
+ import { log } from "../utils/log.js";
38
10
  const hasFileType = (startPath, ext) => {
39
- if (!fs.existsSync(startPath)) {
11
+ if (!existsSync(startPath)) {
40
12
  return false;
41
13
  }
42
- const files = fs.readdirSync(startPath);
14
+ const files = readdirSync(startPath);
43
15
  return files.some((file) => {
44
16
  const filename = path.join(startPath, file);
45
17
  const fileExt = path.extname(filename);
46
- const stat = fs.lstatSync(filename);
18
+ const stat = lstatSync(filename);
47
19
  if (stat.isDirectory()) {
48
20
  return hasFileType(filename, ext);
49
21
  }
@@ -52,24 +24,24 @@ const hasFileType = (startPath, ext) => {
52
24
  };
53
25
  const compile = async (cmd, callback = () => ({})) => {
54
26
  const { cliName = "Lex", config, quiet, remove, watch } = cmd;
55
- const spinner = (0, import_app.createSpinner)(quiet);
56
- (0, import_log.log)(`${cliName} compiling...`, "info", quiet);
57
- import_LexConfig.LexConfig.parseConfig(cmd);
58
- const { outputFullPath, sourceFullPath, useTypescript } = import_LexConfig.LexConfig.config;
59
- const nodePath = path.resolve(__dirname, "../../node_modules");
60
- (0, import_app.checkLinkedModules)();
27
+ const spinner = createSpinner(quiet);
28
+ log(`${cliName} compiling...`, "info", quiet);
29
+ LexConfig.parseConfig(cmd);
30
+ const { outputFullPath, preset, sourceFullPath, useTypescript } = LexConfig.config;
31
+ const dirName = fileURLToPath(new URL(".", import.meta.url));
32
+ const nodePath = path.resolve(dirName, "../../node_modules");
33
+ checkLinkedModules();
61
34
  if (remove) {
62
- await (0, import_app.removeFiles)(outputFullPath);
35
+ await removeFiles(outputFullPath);
63
36
  }
64
37
  if (useTypescript) {
65
- import_LexConfig.LexConfig.checkTypescriptConfig();
66
- const typescriptPath = (0, import_file.relativeFilePath)("typescript/bin/tsc", nodePath);
38
+ LexConfig.checkTypescriptConfig();
39
+ const typescriptPath = relativeFilePath("typescript/bin/tsc", nodePath);
67
40
  const typescriptOptions = config ? ["-p", config] : [
68
41
  "--allowSyntheticDefaultImports",
69
42
  "--baseUrl",
70
43
  sourceFullPath,
71
44
  "--declaration",
72
- "--emitDeclarationOnly",
73
45
  "--inlineSourceMap",
74
46
  "--jsx",
75
47
  "react-jsx",
@@ -81,7 +53,6 @@ const compile = async (cmd, callback = () => ({})) => {
81
53
  "node",
82
54
  "--noImplicitReturns",
83
55
  "--noImplicitThis",
84
- "--noStrictGenericChecks",
85
56
  "--outDir",
86
57
  outputFullPath,
87
58
  "--removeComments",
@@ -95,12 +66,18 @@ const compile = async (cmd, callback = () => ({})) => {
95
66
  "--typeRoots",
96
67
  ["node_modules/@types", "node_modules/json-d-ts"]
97
68
  ];
69
+ const delcarationPresets = [
70
+ "web"
71
+ ];
72
+ if (delcarationPresets.includes(preset)) {
73
+ typescriptOptions.push("--emitDeclarationOnly");
74
+ }
98
75
  spinner.start("Static type checking with Typescript...");
99
76
  try {
100
- await (0, import_execa.default)(typescriptPath, typescriptOptions, { encoding: "utf-8" });
77
+ await execa(typescriptPath, typescriptOptions, { encoding: "utf-8" });
101
78
  spinner.succeed("Successfully completed type checking!");
102
79
  } catch (error) {
103
- (0, import_log.log)(`
80
+ log(`
104
81
  ${cliName} Error: ${error.message}`, "error", quiet);
105
82
  if (!quiet) {
106
83
  console.error(error);
@@ -119,7 +96,7 @@ ${cliName} Error: ${error.message}`, "error", quiet);
119
96
  const tsFiles = glob.sync(`${sourceFullPath}/**/**.ts*`, globOptions);
120
97
  const jsFiles = glob.sync(`${sourceFullPath}/**/**.js`, globOptions);
121
98
  const sourceFiles = [...tsFiles, ...jsFiles];
122
- const esbuildPath = (0, import_file.relativeFilePath)("esbuild/bin/esbuild", nodePath);
99
+ const esbuildPath = relativeFilePath("esbuild/bin/esbuild", nodePath);
123
100
  const esbuildOptions = [
124
101
  ...sourceFiles,
125
102
  "--color=true",
@@ -128,17 +105,20 @@ ${cliName} Error: ${error.message}`, "error", quiet);
128
105
  "--outdir=lib",
129
106
  "--platform=node",
130
107
  "--sourcemap=inline",
131
- "--target=node16"
108
+ "--target=node18"
132
109
  ];
110
+ console.log({ useTypescript });
133
111
  if (useTypescript) {
134
112
  esbuildOptions.push("--loader:.ts=ts", "--loader:.tsx=tsx");
135
113
  }
136
114
  if (watch) {
137
115
  esbuildOptions.push("--watch");
138
116
  }
139
- const cssFiles = (0, import_app.getFilesByExt)(".css", import_LexConfig.LexConfig.config);
117
+ const cssFiles = getFilesByExt(".css", LexConfig.config);
140
118
  if (cssFiles.length) {
141
- const postcssPath = (0, import_file.relativeFilePath)("postcss-cli/index.js", nodePath);
119
+ const postcssPath = relativeFilePath("postcss-cli/index.js", nodePath);
120
+ console.log({ nodePath, postcssPath });
121
+ const dirName2 = fileURLToPath(new URL(".", import.meta.url));
142
122
  const postcssOptions = [
143
123
  `${sourceFullPath}/**/**.css`,
144
124
  "--base",
@@ -146,57 +126,57 @@ ${cliName} Error: ${error.message}`, "error", quiet);
146
126
  "--dir",
147
127
  outputFullPath,
148
128
  "--config",
149
- path.resolve(__dirname, "../../.postcssrc.js")
129
+ path.resolve(dirName2, "../../.postcssrc.js")
150
130
  ];
151
131
  try {
152
- await (0, import_execa.default)(postcssPath, postcssOptions, { encoding: "utf-8" });
132
+ await execa(postcssPath, postcssOptions, { encoding: "utf-8" });
153
133
  spinner.succeed(`Successfully formatted ${cssFiles.length} css files!`);
154
134
  } catch (error) {
155
- (0, import_log.log)(`
135
+ log(`
156
136
  ${cliName} Error: ${error.message}`, "error", quiet);
157
137
  spinner.fail("Failed formatting css.");
158
138
  callback(error.status);
159
139
  return error.status;
160
140
  }
161
141
  }
162
- const gifFiles = (0, import_app.getFilesByExt)(".gif", import_LexConfig.LexConfig.config);
163
- const jpgFiles = (0, import_app.getFilesByExt)(".jpg", import_LexConfig.LexConfig.config);
164
- const pngFiles = (0, import_app.getFilesByExt)(".png", import_LexConfig.LexConfig.config);
165
- const svgFiles = (0, import_app.getFilesByExt)(".svg", import_LexConfig.LexConfig.config);
142
+ const gifFiles = getFilesByExt(".gif", LexConfig.config);
143
+ const jpgFiles = getFilesByExt(".jpg", LexConfig.config);
144
+ const pngFiles = getFilesByExt(".png", LexConfig.config);
145
+ const svgFiles = getFilesByExt(".svg", LexConfig.config);
166
146
  const imageFiles = [...gifFiles, ...jpgFiles, ...pngFiles, ...svgFiles];
167
147
  if (imageFiles.length) {
168
148
  try {
169
- await (0, import_app.copyFiles)(imageFiles, "image", spinner, import_LexConfig.LexConfig.config);
149
+ await copyFiles(imageFiles, "image", spinner, LexConfig.config);
170
150
  } catch (error) {
171
- (0, import_log.log)(`
151
+ log(`
172
152
  ${cliName} Error: ${error.message}`, "error", quiet);
173
153
  spinner.fail("Failed to move images to output directory.");
174
154
  callback(error.status);
175
155
  return error.status;
176
156
  }
177
157
  }
178
- const ttfFiles = (0, import_app.getFilesByExt)(".ttf", import_LexConfig.LexConfig.config);
179
- const otfFiles = (0, import_app.getFilesByExt)(".otf", import_LexConfig.LexConfig.config);
180
- const woffFiles = (0, import_app.getFilesByExt)(".woff", import_LexConfig.LexConfig.config);
181
- const woff2Files = (0, import_app.getFilesByExt)(".woff2", import_LexConfig.LexConfig.config);
158
+ const ttfFiles = getFilesByExt(".ttf", LexConfig.config);
159
+ const otfFiles = getFilesByExt(".otf", LexConfig.config);
160
+ const woffFiles = getFilesByExt(".woff", LexConfig.config);
161
+ const woff2Files = getFilesByExt(".woff2", LexConfig.config);
182
162
  const fontFiles = [...ttfFiles, ...otfFiles, ...woffFiles, ...woff2Files];
183
163
  if (fontFiles.length) {
184
164
  try {
185
- await (0, import_app.copyFiles)(fontFiles, "font", spinner, import_LexConfig.LexConfig.config);
165
+ await copyFiles(fontFiles, "font", spinner, LexConfig.config);
186
166
  } catch (error) {
187
- (0, import_log.log)(`
167
+ log(`
188
168
  ${cliName} Error: ${error.message}`, "error", quiet);
189
169
  spinner.fail("Failed to move fonts to output directory.");
190
170
  callback(error.status);
191
171
  return error.status;
192
172
  }
193
173
  }
194
- const mdFiles = (0, import_app.getFilesByExt)(".md", import_LexConfig.LexConfig.config);
174
+ const mdFiles = getFilesByExt(".md", LexConfig.config);
195
175
  if (mdFiles.length) {
196
176
  try {
197
- await (0, import_app.copyFiles)(mdFiles, "documents", spinner, import_LexConfig.LexConfig.config);
177
+ await copyFiles(mdFiles, "documents", spinner, LexConfig.config);
198
178
  } catch (error) {
199
- (0, import_log.log)(`
179
+ log(`
200
180
  ${cliName} Error: ${error.message}`, "error", quiet);
201
181
  spinner.fail("Failed to move docs to output directory.");
202
182
  callback(error.status);
@@ -205,10 +185,10 @@ ${cliName} Error: ${error.message}`, "error", quiet);
205
185
  }
206
186
  spinner.start(watch ? "Watching for changes..." : "Compiling with ESBuild...");
207
187
  try {
208
- await (0, import_execa.default)(esbuildPath, esbuildOptions, { encoding: "utf-8" });
188
+ await execa(esbuildPath, esbuildOptions, { encoding: "utf-8" });
209
189
  spinner.succeed("Compile completed successfully!");
210
190
  } catch (error) {
211
- (0, import_log.log)(`
191
+ log(`
212
192
  ${cliName} Error: ${error.message}`, "error", quiet);
213
193
  if (!quiet) {
214
194
  console.error(error);
@@ -220,9 +200,8 @@ ${cliName} Error: ${error.message}`, "error", quiet);
220
200
  callback(0);
221
201
  return 0;
222
202
  };
223
- // Annotate the CommonJS export names for ESM import in node:
224
- 0 && (module.exports = {
203
+ export {
225
204
  compile,
226
205
  hasFileType
227
- });
228
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL2NvbXBpbGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge2RlZmF1bHQgYXMgZXhlY2F9IGZyb20gJ2V4ZWNhJztcbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJztcbmltcG9ydCAqIGFzIGdsb2IgZnJvbSAnZ2xvYic7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuXG5pbXBvcnQge0xleENvbmZpZ30gZnJvbSAnLi4vTGV4Q29uZmlnJztcbmltcG9ydCB7XG4gIGNoZWNrTGlua2VkTW9kdWxlcyxcbiAgY29weUZpbGVzLFxuICBjcmVhdGVTcGlubmVyLFxuICBnZXRGaWxlc0J5RXh0LFxuICByZW1vdmVGaWxlc1xufSBmcm9tICcuLi91dGlscy9hcHAnO1xuaW1wb3J0IHtyZWxhdGl2ZUZpbGVQYXRofSBmcm9tICcuLi91dGlscy9maWxlJztcbmltcG9ydCB7bG9nfSBmcm9tICcuLi91dGlscy9sb2cnO1xuXG5leHBvcnQgY29uc3QgaGFzRmlsZVR5cGUgPSAoc3RhcnRQYXRoOiBzdHJpbmcsIGV4dDogc3RyaW5nW10pOiBib29sZWFuID0+IHtcbiAgaWYoIWZzLmV4aXN0c1N5bmMoc3RhcnRQYXRoKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGZpbGVzOiBzdHJpbmdbXSA9IGZzLnJlYWRkaXJTeW5jKHN0YXJ0UGF0aCk7XG5cbiAgcmV0dXJuIGZpbGVzLnNvbWUoKGZpbGU6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IGZpbGVuYW1lOiBzdHJpbmcgPSBwYXRoLmpvaW4oc3RhcnRQYXRoLCBmaWxlKTtcbiAgICBjb25zdCBmaWxlRXh0OiBzdHJpbmcgPSBwYXRoLmV4dG5hbWUoZmlsZW5hbWUpO1xuICAgIGNvbnN0IHN0YXQgPSBmcy5sc3RhdFN5bmMoZmlsZW5hbWUpO1xuXG4gICAgaWYoc3RhdC5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICAvLyBSZWN1cnNpdmUgc2VhcmNoXG4gICAgICByZXR1cm4gaGFzRmlsZVR5cGUoZmlsZW5hbWUsIGV4dCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGV4dC5pbmNsdWRlcyhmaWxlRXh0KTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgY29tcGlsZSA9IGFzeW5jIChjbWQ6IGFueSwgY2FsbGJhY2s6IGFueSA9ICgpID0+ICh7fSkpOiBQcm9taXNlPG51bWJlcj4gPT4ge1xuICBjb25zdCB7Y2xpTmFtZSA9ICdMZXgnLCBjb25maWcsIHF1aWV0LCByZW1vdmUsIHdhdGNofSA9IGNtZDtcblxuICAvLyBTcGlubmVyXG4gIGNvbnN0IHNwaW5uZXIgPSBjcmVhdGVTcGlubmVyKHF1aWV0KTtcblxuICAvLyBEaXNwbGF5IHN0YXR1c1xuICBsb2coYCR7Y2xpTmFtZX0gY29tcGlsaW5nLi4uYCwgJ2luZm8nLCBxdWlldCk7XG5cbiAgLy8gR2V0IGN1c3RvbSBjb25maWd1cmF0aW9uXG4gIExleENvbmZpZy5wYXJzZUNvbmZpZyhjbWQpO1xuXG4gIC8vIENvbXBpbGUgdHlwZVxuICBjb25zdCB7b3V0cHV0RnVsbFBhdGgsIHNvdXJjZUZ1bGxQYXRoLCB1c2VUeXBlc2NyaXB0fSA9IExleENvbmZpZy5jb25maWc7XG4gIGNvbnN0IG5vZGVQYXRoOiBzdHJpbmcgPSBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnLi4vLi4vbm9kZV9tb2R1bGVzJyk7XG5cbiAgLy8gQ2hlY2sgZm9yIGxpbmtlZCBtb2R1bGVzXG4gIGNoZWNrTGlua2VkTW9kdWxlcygpO1xuXG4gIC8vIENsZWFuIG91dHB1dCBkaXJlY3RvcnkgYmVmb3JlIHdlIHN0YXJ0IGFkZGluZyBpbiBuZXcgZmlsZXNcbiAgaWYocmVtb3ZlKSB7XG4gICAgYXdhaXQgcmVtb3ZlRmlsZXMob3V0cHV0RnVsbFBhdGgpO1xuICB9XG5cbiAgLy8gQWRkIHRzY29uZmlnIGZpbGUgaWYgbm9uZSBleGlzdHNcbiAgaWYodXNlVHlwZXNjcmlwdCkge1xuICAgIC8vIE1ha2Ugc3VyZSB0c2NvbmZpZy5qc29uIGV4aXN0c1xuICAgIExleENvbmZpZy5jaGVja1R5cGVzY3JpcHRDb25maWcoKTtcblxuICAgIC8vIENoZWNrIHN0YXRpYyB0eXBlcyB3aXRoIHR5cGVzY3JpcHRcbiAgICBjb25zdCB0eXBlc2NyaXB0UGF0aDogc3RyaW5nID0gcmVsYXRpdmVGaWxlUGF0aCgndHlwZXNjcmlwdC9iaW4vdHNjJywgbm9kZVBhdGgpO1xuICAgIGNvbnN0IHR5cGVzY3JpcHRPcHRpb25zOiBzdHJpbmdbXSA9IGNvbmZpZyA/XG4gICAgICBbJy1wJywgY29uZmlnXSA6XG4gICAgICBbXG4gICAgICAgICctLWFsbG93U3ludGhldGljRGVmYXVsdEltcG9ydHMnLFxuICAgICAgICAnLS1iYXNlVXJsJywgc291cmNlRnVsbFBhdGgsXG4gICAgICAgICctLWRlY2xhcmF0aW9uJyxcbiAgICAgICAgJy0tZW1pdERlY2xhcmF0aW9uT25seScsXG4gICAgICAgICctLWlubGluZVNvdXJjZU1hcCcsXG4gICAgICAgICctLWpzeCcsICdyZWFjdC1qc3gnLFxuICAgICAgICAnLS1saWInLCBbJ0VTNScsICdFUzYnLCAnRVMyMDE1JywgJ0VTNycsICdFUzIwMTYnLCAnRVMyMDE3JywgJ0VTMjAxOCcsICdFU05leHQnLCAnRE9NJ10sXG4gICAgICAgICctLW1vZHVsZScsICdjb21tb25qcycsXG4gICAgICAgICctLW1vZHVsZVJlc29sdXRpb24nLCAnbm9kZScsXG4gICAgICAgICctLW5vSW1wbGljaXRSZXR1cm5zJyxcbiAgICAgICAgJy0tbm9JbXBsaWNpdFRoaXMnLFxuICAgICAgICAnLS1ub1N0cmljdEdlbmVyaWNDaGVja3MnLFxuICAgICAgICAnLS1vdXREaXInLCBvdXRwdXRGdWxsUGF0aCxcbiAgICAgICAgJy0tcmVtb3ZlQ29tbWVudHMnLFxuICAgICAgICAnLS1yZXNvbHZlSnNvbk1vZHVsZScsXG4gICAgICAgICctLXJvb3REaXInLCBzb3VyY2VGdWxsUGF0aCxcbiAgICAgICAgJy0tc291cmNlUm9vdCcsIHNvdXJjZUZ1bGxQYXRoLFxuICAgICAgICAnLS10YXJnZXQnLCAnRVM1JyxcbiAgICAgICAgJy0tdHlwZVJvb3RzJywgWydub2RlX21vZHVsZXMvQHR5cGVzJywgJ25vZGVfbW9kdWxlcy9qc29uLWQtdHMnXVxuICAgICAgXTtcblxuICAgIC8vIFN0YXJ0IHR5cGUgY2hlY2tpbmcgc3Bpbm5lclxuICAgIHNwaW5uZXIuc3RhcnQoJ1N0YXRpYyB0eXBlIGNoZWNraW5nIHdpdGggVHlwZXNjcmlwdC4uLicpO1xuXG4gICAgLy8gVHlwZSBjaGVja2luZ1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCBleGVjYSh0eXBlc2NyaXB0UGF0aCwgdHlwZXNjcmlwdE9wdGlvbnMsIHtlbmNvZGluZzogJ3V0Zi04J30pO1xuXG4gICAgICAvLyBTdG9wIHNwaW5uZXJcbiAgICAgIHNwaW5uZXIuc3VjY2VlZCgnU3VjY2Vzc2Z1bGx5IGNvbXBsZXRlZCB0eXBlIGNoZWNraW5nIScpO1xuICAgIH0gY2F0Y2goZXJyb3IpIHtcbiAgICAgIC8vIERpc3BsYXkgZXJyb3IgbWVzc2FnZVxuICAgICAgbG9nKGBcXG4ke2NsaU5hbWV9IEVycm9yOiAke2Vycm9yLm1lc3NhZ2V9YCwgJ2Vycm9yJywgcXVpZXQpO1xuXG4gICAgICBpZighcXVpZXQpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICB9XG5cbiAgICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgICAgc3Bpbm5lci5mYWlsKCdUeXBlIGNoZWNraW5nIGZhaWxlZC4nKTtcblxuICAgICAgLy8gS2lsbCBQcm9jZXNzXG4gICAgICBjYWxsYmFjayhlcnJvci5zdGF0dXMpO1xuICAgICAgcmV0dXJuIGVycm9yLnN0YXR1cztcbiAgICB9XG4gIH1cblxuICAvLyBTb3VyY2UgZmlsZXNcbiAgY29uc3QgZ2xvYk9wdGlvbnMgPSB7XG4gICAgY3dkOiBzb3VyY2VGdWxsUGF0aCxcbiAgICBkb3Q6IGZhbHNlLFxuICAgIG5vZGlyOiB0cnVlLFxuICAgIG5vc29ydDogdHJ1ZVxuICB9O1xuICBjb25zdCB0c0ZpbGVzOiBzdHJpbmdbXSA9IGdsb2Iuc3luYyhgJHtzb3VyY2VGdWxsUGF0aH0vKiovKioudHMqYCwgZ2xvYk9wdGlvbnMpO1xuICBjb25zdCBqc0ZpbGVzOiBzdHJpbmdbXSA9IGdsb2Iuc3luYyhgJHtzb3VyY2VGdWxsUGF0aH0vKiovKiouanNgLCBnbG9iT3B0aW9ucyk7XG4gIGNvbnN0IHNvdXJjZUZpbGVzOiBzdHJpbmdbXSA9IFsuLi50c0ZpbGVzLCAuLi5qc0ZpbGVzXTtcblxuICAvLyBFU0J1aWxkIG9wdGlvbnNcbiAgY29uc3QgZXNidWlsZFBhdGg6IHN0cmluZyA9IHJlbGF0aXZlRmlsZVBhdGgoJ2VzYnVpbGQvYmluL2VzYnVpbGQnLCBub2RlUGF0aCk7XG4gIGNvbnN0IGVzYnVpbGRPcHRpb25zOiBzdHJpbmdbXSA9IFtcbiAgICAuLi5zb3VyY2VGaWxlcyxcbiAgICAnLS1jb2xvcj10cnVlJyxcbiAgICAnLS1mb3JtYXQ9Y2pzJyxcbiAgICAnLS1sb2FkZXI6LmpzPWpzJyxcbiAgICAnLS1vdXRkaXI9bGliJyxcbiAgICAnLS1wbGF0Zm9ybT1ub2RlJyxcbiAgICAnLS1zb3VyY2VtYXA9aW5saW5lJyxcbiAgICAnLS10YXJnZXQ9bm9kZTE2J1xuICBdO1xuXG4gIGlmKHVzZVR5cGVzY3JpcHQpIHtcbiAgICBlc2J1aWxkT3B0aW9ucy5wdXNoKCctLWxvYWRlcjoudHM9dHMnLCAnLS1sb2FkZXI6LnRzeD10c3gnKTtcbiAgfVxuXG4gIGlmKHdhdGNoKSB7XG4gICAgZXNidWlsZE9wdGlvbnMucHVzaCgnLS13YXRjaCcpO1xuICB9XG5cbiAgLy8gVXNlIFBvc3RDU1MgZm9yIENTUyBmaWxlc1xuICBjb25zdCBjc3NGaWxlczogc3RyaW5nW10gPSBnZXRGaWxlc0J5RXh0KCcuY3NzJywgTGV4Q29uZmlnLmNvbmZpZyk7XG5cbiAgaWYoY3NzRmlsZXMubGVuZ3RoKSB7XG4gICAgY29uc3QgcG9zdGNzc1BhdGg6IHN0cmluZyA9IHJlbGF0aXZlRmlsZVBhdGgoJ3Bvc3Rjc3MtY2xpL2luZGV4LmpzJywgbm9kZVBhdGgpO1xuICAgIGNvbnN0IHBvc3Rjc3NPcHRpb25zOiBzdHJpbmdbXSA9IFtcbiAgICAgIGAke3NvdXJjZUZ1bGxQYXRofS8qKi8qKi5jc3NgLFxuICAgICAgJy0tYmFzZScsXG4gICAgICBzb3VyY2VGdWxsUGF0aCxcbiAgICAgICctLWRpcicsXG4gICAgICBvdXRwdXRGdWxsUGF0aCxcbiAgICAgICctLWNvbmZpZycsXG4gICAgICBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnLi4vLi4vLnBvc3Rjc3NyYy5qcycpXG4gICAgXTtcblxuICAgIHRyeSB7XG4gICAgICBhd2FpdCBleGVjYShwb3N0Y3NzUGF0aCwgcG9zdGNzc09wdGlvbnMsIHtlbmNvZGluZzogJ3V0Zi04J30pO1xuICAgICAgc3Bpbm5lci5zdWNjZWVkKGBTdWNjZXNzZnVsbHkgZm9ybWF0dGVkICR7Y3NzRmlsZXMubGVuZ3RofSBjc3MgZmlsZXMhYCk7XG4gICAgfSBjYXRjaChlcnJvcikge1xuICAgICAgLy8gRGlzcGxheSBlcnJvciBtZXNzYWdlXG4gICAgICBsb2coYFxcbiR7Y2xpTmFtZX0gRXJyb3I6ICR7ZXJyb3IubWVzc2FnZX1gLCAnZXJyb3InLCBxdWlldCk7XG5cbiAgICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgICAgc3Bpbm5lci5mYWlsKCdGYWlsZWQgZm9ybWF0dGluZyBjc3MuJyk7XG5cbiAgICAgIC8vIEtpbGwgUHJvY2Vzc1xuICAgICAgY2FsbGJhY2soZXJyb3Iuc3RhdHVzKTtcbiAgICAgIHJldHVybiBlcnJvci5zdGF0dXM7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29weSBpbWFnZSBmaWxlc1xuICBjb25zdCBnaWZGaWxlczogc3RyaW5nW10gPSBnZXRGaWxlc0J5RXh0KCcuZ2lmJywgTGV4Q29uZmlnLmNvbmZpZyk7XG4gIGNvbnN0IGpwZ0ZpbGVzOiBzdHJpbmdbXSA9IGdldEZpbGVzQnlFeHQoJy5qcGcnLCBMZXhDb25maWcuY29uZmlnKTtcbiAgY29uc3QgcG5nRmlsZXM6IHN0cmluZ1tdID0gZ2V0RmlsZXNCeUV4dCgnLnBuZycsIExleENvbmZpZy5jb25maWcpO1xuICBjb25zdCBzdmdGaWxlczogc3RyaW5nW10gPSBnZXRGaWxlc0J5RXh0KCcuc3ZnJywgTGV4Q29uZmlnLmNvbmZpZyk7XG4gIGNvbnN0IGltYWdlRmlsZXM6IHN0cmluZ1tdID0gWy4uLmdpZkZpbGVzLCAuLi5qcGdGaWxlcywgLi4ucG5nRmlsZXMsIC4uLnN2Z0ZpbGVzXTtcblxuICBpZihpbWFnZUZpbGVzLmxlbmd0aCkge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCBjb3B5RmlsZXMoaW1hZ2VGaWxlcywgJ2ltYWdlJywgc3Bpbm5lciwgTGV4Q29uZmlnLmNvbmZpZyk7XG4gICAgfSBjYXRjaChlcnJvcikge1xuICAgICAgLy8gRGlzcGxheSBlcnJvciBtZXNzYWdlXG4gICAgICBsb2coYFxcbiR7Y2xpTmFtZX0gRXJyb3I6ICR7ZXJyb3IubWVzc2FnZX1gLCAnZXJyb3InLCBxdWlldCk7XG5cbiAgICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgICAgc3Bpbm5lci5mYWlsKCdGYWlsZWQgdG8gbW92ZSBpbWFnZXMgdG8gb3V0cHV0IGRpcmVjdG9yeS4nKTtcblxuICAgICAgLy8gS2lsbCBQcm9jZXNzXG4gICAgICBjYWxsYmFjayhlcnJvci5zdGF0dXMpO1xuICAgICAgcmV0dXJuIGVycm9yLnN0YXR1cztcbiAgICB9XG4gIH1cblxuICAvLyBDb3B5IGZvbnQgZmlsZXNcbiAgY29uc3QgdHRmRmlsZXM6IHN0cmluZ1tdID0gZ2V0RmlsZXNCeUV4dCgnLnR0ZicsIExleENvbmZpZy5jb25maWcpO1xuICBjb25zdCBvdGZGaWxlczogc3RyaW5nW10gPSBnZXRGaWxlc0J5RXh0KCcub3RmJywgTGV4Q29uZmlnLmNvbmZpZyk7XG4gIGNvbnN0IHdvZmZGaWxlczogc3RyaW5nW10gPSBnZXRGaWxlc0J5RXh0KCcud29mZicsIExleENvbmZpZy5jb25maWcpO1xuICBjb25zdCB3b2ZmMkZpbGVzOiBzdHJpbmdbXSA9IGdldEZpbGVzQnlFeHQoJy53b2ZmMicsIExleENvbmZpZy5jb25maWcpO1xuICBjb25zdCBmb250RmlsZXM6IHN0cmluZ1tdID0gWy4uLnR0ZkZpbGVzLCAuLi5vdGZGaWxlcywgLi4ud29mZkZpbGVzLCAuLi53b2ZmMkZpbGVzXTtcblxuICBpZihmb250RmlsZXMubGVuZ3RoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGNvcHlGaWxlcyhmb250RmlsZXMsICdmb250Jywgc3Bpbm5lciwgTGV4Q29uZmlnLmNvbmZpZyk7XG4gICAgfSBjYXRjaChlcnJvcikge1xuICAgICAgLy8gRGlzcGxheSBlcnJvciBtZXNzYWdlXG4gICAgICBsb2coYFxcbiR7Y2xpTmFtZX0gRXJyb3I6ICR7ZXJyb3IubWVzc2FnZX1gLCAnZXJyb3InLCBxdWlldCk7XG5cbiAgICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgICAgc3Bpbm5lci5mYWlsKCdGYWlsZWQgdG8gbW92ZSBmb250cyB0byBvdXRwdXQgZGlyZWN0b3J5LicpO1xuXG4gICAgICAvLyBLaWxsIFByb2Nlc3NcbiAgICAgIGNhbGxiYWNrKGVycm9yLnN0YXR1cyk7XG4gICAgICByZXR1cm4gZXJyb3Iuc3RhdHVzO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvcHkgbWFya2Rvd24gZmlsZXNcbiAgY29uc3QgbWRGaWxlczogc3RyaW5nW10gPSBnZXRGaWxlc0J5RXh0KCcubWQnLCBMZXhDb25maWcuY29uZmlnKTtcblxuICBpZihtZEZpbGVzLmxlbmd0aCkge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCBjb3B5RmlsZXMobWRGaWxlcywgJ2RvY3VtZW50cycsIHNwaW5uZXIsIExleENvbmZpZy5jb25maWcpO1xuICAgIH0gY2F0Y2goZXJyb3IpIHtcbiAgICAgIC8vIERpc3BsYXkgZXJyb3IgbWVzc2FnZVxuICAgICAgbG9nKGBcXG4ke2NsaU5hbWV9IEVycm9yOiAke2Vycm9yLm1lc3NhZ2V9YCwgJ2Vycm9yJywgcXVpZXQpO1xuXG4gICAgICAvLyBTdG9wIHNwaW5uZXJcbiAgICAgIHNwaW5uZXIuZmFpbCgnRmFpbGVkIHRvIG1vdmUgZG9jcyB0byBvdXRwdXQgZGlyZWN0b3J5LicpO1xuXG4gICAgICAvLyBLaWxsIFByb2Nlc3NcbiAgICAgIGNhbGxiYWNrKGVycm9yLnN0YXR1cyk7XG4gICAgICByZXR1cm4gZXJyb3Iuc3RhdHVzO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0YXJ0IGNvbXBpbGUgc3Bpbm5lclxuICBzcGlubmVyLnN0YXJ0KHdhdGNoID8gJ1dhdGNoaW5nIGZvciBjaGFuZ2VzLi4uJyA6ICdDb21waWxpbmcgd2l0aCBFU0J1aWxkLi4uJyk7XG5cbiAgdHJ5IHtcbiAgICBhd2FpdCBleGVjYShlc2J1aWxkUGF0aCwgZXNidWlsZE9wdGlvbnMsIHtlbmNvZGluZzogJ3V0Zi04J30pO1xuXG4gICAgLy8gU3RvcCBzcGlubmVyXG4gICAgc3Bpbm5lci5zdWNjZWVkKCdDb21waWxlIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkhJyk7XG4gIH0gY2F0Y2goZXJyb3IpIHtcbiAgICAvLyBEaXNwbGF5IGVycm9yIG1lc3NhZ2VcbiAgICBsb2coYFxcbiR7Y2xpTmFtZX0gRXJyb3I6ICR7ZXJyb3IubWVzc2FnZX1gLCAnZXJyb3InLCBxdWlldCk7XG5cbiAgICBpZighcXVpZXQpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgIH1cblxuICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgIHNwaW5uZXIuZmFpbCgnQ29kZSBjb21waWxpbmcgZmFpbGVkLicpO1xuXG4gICAgLy8gS2lsbCBQcm9jZXNzXG4gICAgY2FsbGJhY2soZXJyb3Iuc3RhdHVzKTtcbiAgICByZXR1cm4gZXJyb3Iuc3RhdHVzO1xuICB9XG5cbiAgLy8gU3RvcCBwcm9jZXNzXG4gIGNhbGxiYWNrKDApO1xuICByZXR1cm4gMDtcbn07XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUlBLG1CQUErQjtBQUMvQixTQUFvQjtBQUNwQixXQUFzQjtBQUN0QixXQUFzQjtBQUV0Qix1QkFBd0I7QUFDeEIsaUJBTU87QUFDUCxrQkFBK0I7QUFDL0IsaUJBQWtCO0FBRVgsTUFBTSxjQUFjLENBQUMsV0FBbUIsUUFBMkI7QUFDeEUsTUFBRyxDQUFDLEdBQUcsV0FBVyxTQUFTLEdBQUc7QUFDNUIsV0FBTztBQUFBLEVBQ1Q7QUFFQSxRQUFNLFFBQWtCLEdBQUcsWUFBWSxTQUFTO0FBRWhELFNBQU8sTUFBTSxLQUFLLENBQUMsU0FBaUI7QUFDbEMsVUFBTSxXQUFtQixLQUFLLEtBQUssV0FBVyxJQUFJO0FBQ2xELFVBQU0sVUFBa0IsS0FBSyxRQUFRLFFBQVE7QUFDN0MsVUFBTSxPQUFPLEdBQUcsVUFBVSxRQUFRO0FBRWxDLFFBQUcsS0FBSyxZQUFZLEdBQUc7QUFFckIsYUFBTyxZQUFZLFVBQVUsR0FBRztBQUFBLElBQ2xDO0FBRUEsV0FBTyxJQUFJLFNBQVMsT0FBTztBQUFBLEVBQzdCLENBQUM7QUFDSDtBQUVPLE1BQU0sVUFBVSxPQUFPLEtBQVUsV0FBZ0IsT0FBTyxDQUFDLE9BQXdCO0FBQ3RGLFFBQU0sRUFBQyxVQUFVLE9BQU8sUUFBUSxPQUFPLFFBQVEsTUFBSyxJQUFJO0FBR3hELFFBQU0sY0FBVSwwQkFBYyxLQUFLO0FBR25DLHNCQUFJLEdBQUcsd0JBQXdCLFFBQVEsS0FBSztBQUc1Qyw2QkFBVSxZQUFZLEdBQUc7QUFHekIsUUFBTSxFQUFDLGdCQUFnQixnQkFBZ0IsY0FBYSxJQUFJLDJCQUFVO0FBQ2xFLFFBQU0sV0FBbUIsS0FBSyxRQUFRLFdBQVcs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
206
+ };
207
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL2NvbXBpbGUudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge2V4ZWNhfSBmcm9tICdleGVjYSc7XG5pbXBvcnQge2V4aXN0c1N5bmMsIGxzdGF0U3luYywgcmVhZGRpclN5bmN9IGZyb20gJ2ZzJztcbmltcG9ydCAqIGFzIGdsb2IgZnJvbSAnZ2xvYic7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHtmaWxlVVJMVG9QYXRofSBmcm9tICd1cmwnO1xuXG5pbXBvcnQge0xleENvbmZpZ30gZnJvbSAnLi4vTGV4Q29uZmlnLmpzJztcbmltcG9ydCB7Y2hlY2tMaW5rZWRNb2R1bGVzLCBjb3B5RmlsZXMsIGNyZWF0ZVNwaW5uZXIsIGdldEZpbGVzQnlFeHQsIHJlbW92ZUZpbGVzfSBmcm9tICcuLi91dGlscy9hcHAuanMnO1xuaW1wb3J0IHtyZWxhdGl2ZUZpbGVQYXRofSBmcm9tICcuLi91dGlscy9maWxlLmpzJztcbmltcG9ydCB7bG9nfSBmcm9tICcuLi91dGlscy9sb2cuanMnO1xuXG5leHBvcnQgY29uc3QgaGFzRmlsZVR5cGUgPSAoc3RhcnRQYXRoOiBzdHJpbmcsIGV4dDogc3RyaW5nW10pOiBib29sZWFuID0+IHtcbiAgaWYoIWV4aXN0c1N5bmMoc3RhcnRQYXRoKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGNvbnN0IGZpbGVzOiBzdHJpbmdbXSA9IHJlYWRkaXJTeW5jKHN0YXJ0UGF0aCk7XG5cbiAgcmV0dXJuIGZpbGVzLnNvbWUoKGZpbGU6IHN0cmluZykgPT4ge1xuICAgIGNvbnN0IGZpbGVuYW1lOiBzdHJpbmcgPSBwYXRoLmpvaW4oc3RhcnRQYXRoLCBmaWxlKTtcbiAgICBjb25zdCBmaWxlRXh0OiBzdHJpbmcgPSBwYXRoLmV4dG5hbWUoZmlsZW5hbWUpO1xuICAgIGNvbnN0IHN0YXQgPSBsc3RhdFN5bmMoZmlsZW5hbWUpO1xuXG4gICAgaWYoc3RhdC5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICAvLyBSZWN1cnNpdmUgc2VhcmNoXG4gICAgICByZXR1cm4gaGFzRmlsZVR5cGUoZmlsZW5hbWUsIGV4dCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGV4dC5pbmNsdWRlcyhmaWxlRXh0KTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgY29tcGlsZSA9IGFzeW5jIChjbWQ6IGFueSwgY2FsbGJhY2s6IGFueSA9ICgpID0+ICh7fSkpOiBQcm9taXNlPG51bWJlcj4gPT4ge1xuICBjb25zdCB7Y2xpTmFtZSA9ICdMZXgnLCBjb25maWcsIHF1aWV0LCByZW1vdmUsIHdhdGNofSA9IGNtZDtcblxuICAvLyBTcGlubmVyXG4gIGNvbnN0IHNwaW5uZXIgPSBjcmVhdGVTcGlubmVyKHF1aWV0KTtcblxuICAvLyBEaXNwbGF5IHN0YXR1c1xuICBsb2coYCR7Y2xpTmFtZX0gY29tcGlsaW5nLi4uYCwgJ2luZm8nLCBxdWlldCk7XG5cbiAgLy8gR2V0IGN1c3RvbSBjb25maWd1cmF0aW9uXG4gIExleENvbmZpZy5wYXJzZUNvbmZpZyhjbWQpO1xuXG4gIC8vIENvbXBpbGUgdHlwZVxuICBjb25zdCB7b3V0cHV0RnVsbFBhdGgsIHByZXNldCwgc291cmNlRnVsbFBhdGgsIHVzZVR5cGVzY3JpcHR9ID0gTGV4Q29uZmlnLmNvbmZpZztcbiAgY29uc3QgZGlyTmFtZSA9IGZpbGVVUkxUb1BhdGgobmV3IFVSTCgnLicsIGltcG9ydC5tZXRhLnVybCkpO1xuICBjb25zdCBub2RlUGF0aDogc3RyaW5nID0gcGF0aC5yZXNvbHZlKGRpck5hbWUsICcuLi8uLi9ub2RlX21vZHVsZXMnKTtcblxuICAvLyBDaGVjayBmb3IgbGlua2VkIG1vZHVsZXNcbiAgY2hlY2tMaW5rZWRNb2R1bGVzKCk7XG5cbiAgLy8gQ2xlYW4gb3V0cHV0IGRpcmVjdG9yeSBiZWZvcmUgd2Ugc3RhcnQgYWRkaW5nIGluIG5ldyBmaWxlc1xuICBpZihyZW1vdmUpIHtcbiAgICBhd2FpdCByZW1vdmVGaWxlcyhvdXRwdXRGdWxsUGF0aCk7XG4gIH1cblxuICAvLyBBZGQgdHNjb25maWcgZmlsZSBpZiBub25lIGV4aXN0c1xuICBpZih1c2VUeXBlc2NyaXB0KSB7XG4gICAgLy8gTWFrZSBzdXJlIHRzY29uZmlnLmpzb24gZXhpc3RzXG4gICAgTGV4Q29uZmlnLmNoZWNrVHlwZXNjcmlwdENvbmZpZygpO1xuXG4gICAgLy8gQ2hlY2sgc3RhdGljIHR5cGVzIHdpdGggdHlwZXNjcmlwdFxuICAgIGNvbnN0IHR5cGVzY3JpcHRQYXRoOiBzdHJpbmcgPSByZWxhdGl2ZUZpbGVQYXRoKCd0eXBlc2NyaXB0L2Jpbi90c2MnLCBub2RlUGF0aCk7XG4gICAgY29uc3QgdHlwZXNjcmlwdE9wdGlvbnM6IHN0cmluZ1tdID0gY29uZmlnID9cbiAgICAgIFsnLXAnLCBjb25maWddIDpcbiAgICAgIFtcbiAgICAgICAgJy0tYWxsb3dTeW50aGV0aWNEZWZhdWx0SW1wb3J0cycsXG4gICAgICAgICctLWJhc2VVcmwnLCBzb3VyY2VGdWxsUGF0aCxcbiAgICAgICAgJy0tZGVjbGFyYXRpb24nLFxuICAgICAgICAnLS1pbmxpbmVTb3VyY2VNYXAnLFxuICAgICAgICAnLS1qc3gnLCAncmVhY3QtanN4JyxcbiAgICAgICAgJy0tbGliJywgWydFUzUnLCAnRVM2JywgJ0VTMjAxNScsICdFUzcnLCAnRVMyMDE2JywgJ0VTMjAxNycsICdFUzIwMTgnLCAnRVNOZXh0JywgJ0RPTSddLFxuICAgICAgICAnLS1tb2R1bGUnLCAnY29tbW9uanMnLFxuICAgICAgICAnLS1tb2R1bGVSZXNvbHV0aW9uJywgJ25vZGUnLFxuICAgICAgICAnLS1ub0ltcGxpY2l0UmV0dXJucycsXG4gICAgICAgICctLW5vSW1wbGljaXRUaGlzJyxcbiAgICAgICAgJy0tb3V0RGlyJywgb3V0cHV0RnVsbFBhdGgsXG4gICAgICAgICctLXJlbW92ZUNvbW1lbnRzJyxcbiAgICAgICAgJy0tcmVzb2x2ZUpzb25Nb2R1bGUnLFxuICAgICAgICAnLS1yb290RGlyJywgc291cmNlRnVsbFBhdGgsXG4gICAgICAgICctLXNvdXJjZVJvb3QnLCBzb3VyY2VGdWxsUGF0aCxcbiAgICAgICAgJy0tdGFyZ2V0JywgJ0VTNScsXG4gICAgICAgICctLXR5cGVSb290cycsIFsnbm9kZV9tb2R1bGVzL0B0eXBlcycsICdub2RlX21vZHVsZXMvanNvbi1kLXRzJ11cbiAgICAgIF07XG5cbiAgICBjb25zdCBkZWxjYXJhdGlvblByZXNldHMgPSBbXG4gICAgICAnd2ViJ1xuICAgIF07XG5cbiAgICBpZihkZWxjYXJhdGlvblByZXNldHMuaW5jbHVkZXMocHJlc2V0KSkge1xuICAgICAgdHlwZXNjcmlwdE9wdGlvbnMucHVzaCgnLS1lbWl0RGVjbGFyYXRpb25Pbmx5Jyk7XG4gICAgfVxuXG4gICAgLy8gU3RhcnQgdHlwZSBjaGVja2luZyBzcGlubmVyXG4gICAgc3Bpbm5lci5zdGFydCgnU3RhdGljIHR5cGUgY2hlY2tpbmcgd2l0aCBUeXBlc2NyaXB0Li4uJyk7XG5cbiAgICAvLyBUeXBlIGNoZWNraW5nXG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGV4ZWNhKHR5cGVzY3JpcHRQYXRoLCB0eXBlc2NyaXB0T3B0aW9ucywge2VuY29kaW5nOiAndXRmLTgnfSk7XG5cbiAgICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgICAgc3Bpbm5lci5zdWNjZWVkKCdTdWNjZXNzZnVsbHkgY29tcGxldGVkIHR5cGUgY2hlY2tpbmchJyk7XG4gICAgfSBjYXRjaChlcnJvcikge1xuICAgICAgLy8gRGlzcGxheSBlcnJvciBtZXNzYWdlXG4gICAgICBsb2coYFxcbiR7Y2xpTmFtZX0gRXJyb3I6ICR7ZXJyb3IubWVzc2FnZX1gLCAnZXJyb3InLCBxdWlldCk7XG5cbiAgICAgIGlmKCFxdWlldCkge1xuICAgICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgIH1cblxuICAgICAgLy8gU3RvcCBzcGlubmVyXG4gICAgICBzcGlubmVyLmZhaWwoJ1R5cGUgY2hlY2tpbmcgZmFpbGVkLicpO1xuXG4gICAgICAvLyBLaWxsIFByb2Nlc3NcbiAgICAgIGNhbGxiYWNrKGVycm9yLnN0YXR1cyk7XG4gICAgICByZXR1cm4gZXJyb3Iuc3RhdHVzO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNvdXJjZSBmaWxlc1xuICBjb25zdCBnbG9iT3B0aW9ucyA9IHtcbiAgICBjd2Q6IHNvdXJjZUZ1bGxQYXRoLFxuICAgIGRvdDogZmFsc2UsXG4gICAgbm9kaXI6IHRydWUsXG4gICAgbm9zb3J0OiB0cnVlXG4gIH07XG4gIGNvbnN0IHRzRmlsZXM6IHN0cmluZ1tdID0gZ2xvYi5zeW5jKGAke3NvdXJjZUZ1bGxQYXRofS8qKi8qKi50cypgLCBnbG9iT3B0aW9ucyk7XG4gIGNvbnN0IGpzRmlsZXM6IHN0cmluZ1tdID0gZ2xvYi5zeW5jKGAke3NvdXJjZUZ1bGxQYXRofS8qKi8qKi5qc2AsIGdsb2JPcHRpb25zKTtcbiAgY29uc3Qgc291cmNlRmlsZXM6IHN0cmluZ1tdID0gWy4uLnRzRmlsZXMsIC4uLmpzRmlsZXNdO1xuXG4gIC8vIEVTQnVpbGQgb3B0aW9uc1xuICBjb25zdCBlc2J1aWxkUGF0aDogc3RyaW5nID0gcmVsYXRpdmVGaWxlUGF0aCgnZXNidWlsZC9iaW4vZXNidWlsZCcsIG5vZGVQYXRoKTtcbiAgY29uc3QgZXNidWlsZE9wdGlvbnM6IHN0cmluZ1tdID0gW1xuICAgIC4uLnNvdXJjZUZpbGVzLFxuICAgICctLWNvbG9yPXRydWUnLFxuICAgICctLWZvcm1hdD1janMnLFxuICAgICctLWxvYWRlcjouanM9anMnLFxuICAgICctLW91dGRpcj1saWInLFxuICAgICctLXBsYXRmb3JtPW5vZGUnLFxuICAgICctLXNvdXJjZW1hcD1pbmxpbmUnLFxuICAgICctLXRhcmdldD1ub2RlMTgnXG4gIF07XG5cbiAgY29uc29sZS5sb2coe3VzZVR5cGVzY3JpcHR9KTtcbiAgaWYodXNlVHlwZXNjcmlwdCkge1xuICAgIGVzYnVpbGRPcHRpb25zLnB1c2goJy0tbG9hZGVyOi50cz10cycsICctLWxvYWRlcjoudHN4PXRzeCcpO1xuICB9XG5cbiAgaWYod2F0Y2gpIHtcbiAgICBlc2J1aWxkT3B0aW9ucy5wdXNoKCctLXdhdGNoJyk7XG4gIH1cblxuICAvLyBVc2UgUG9zdENTUyBmb3IgQ1NTIGZpbGVzXG4gIGNvbnN0IGNzc0ZpbGVzOiBzdHJpbmdbXSA9IGdldEZpbGVzQnlFeHQoJy5jc3MnLCBMZXhDb25maWcuY29uZmlnKTtcblxuICBpZihjc3NGaWxlcy5sZW5ndGgpIHtcbiAgICBjb25zdCBwb3N0Y3NzUGF0aDogc3RyaW5nID0gcmVsYXRpdmVGaWxlUGF0aCgncG9zdGNzcy1jbGkvaW5kZXguanMnLCBub2RlUGF0aCk7XG4gICAgY29uc29sZS5sb2coe25vZGVQYXRoLCBwb3N0Y3NzUGF0aH0pO1xuICAgIGNvbnN0IGRpck5hbWUgPSBmaWxlVVJMVG9QYXRoKG5ldyBVUkwoJy4nLCBpbXBvcnQubWV0YS51cmwpKTtcbiAgICBjb25zdCBwb3N0Y3NzT3B0aW9uczogc3RyaW5nW10gPSBbXG4gICAgICBgJHtzb3VyY2VGdWxsUGF0aH0vKiovKiouY3NzYCxcbiAgICAgICctLWJhc2UnLFxuICAgICAgc291cmNlRnVsbFBhdGgsXG4gICAgICAnLS1kaXInLFxuICAgICAgb3V0cHV0RnVsbFBhdGgsXG4gICAgICAnLS1jb25maWcnLFxuICAgICAgcGF0aC5yZXNvbHZlKGRpck5hbWUsICcuLi8uLi8ucG9zdGNzc3JjLmpzJylcbiAgICBdO1xuXG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGV4ZWNhKHBvc3Rjc3NQYXRoLCBwb3N0Y3NzT3B0aW9ucywge2VuY29kaW5nOiAndXRmLTgnfSk7XG4gICAgICBzcGlubmVyLnN1Y2NlZWQoYFN1Y2Nlc3NmdWxseSBmb3JtYXR0ZWQgJHtjc3NGaWxlcy5sZW5ndGh9IGNzcyBmaWxlcyFgKTtcbiAgICB9IGNhdGNoKGVycm9yKSB7XG4gICAgICAvLyBEaXNwbGF5IGVycm9yIG1lc3NhZ2VcbiAgICAgIGxvZyhgXFxuJHtjbGlOYW1lfSBFcnJvcjogJHtlcnJvci5tZXNzYWdlfWAsICdlcnJvcicsIHF1aWV0KTtcblxuICAgICAgLy8gU3RvcCBzcGlubmVyXG4gICAgICBzcGlubmVyLmZhaWwoJ0ZhaWxlZCBmb3JtYXR0aW5nIGNzcy4nKTtcblxuICAgICAgLy8gS2lsbCBQcm9jZXNzXG4gICAgICBjYWxsYmFjayhlcnJvci5zdGF0dXMpO1xuICAgICAgcmV0dXJuIGVycm9yLnN0YXR1cztcbiAgICB9XG4gIH1cblxuICAvLyBDb3B5IGltYWdlIGZpbGVzXG4gIGNvbnN0IGdpZkZpbGVzOiBzdHJpbmdbXSA9IGdldEZpbGVzQnlFeHQoJy5naWYnLCBMZXhDb25maWcuY29uZmlnKTtcbiAgY29uc3QganBnRmlsZXM6IHN0cmluZ1tdID0gZ2V0RmlsZXNCeUV4dCgnLmpwZycsIExleENvbmZpZy5jb25maWcpO1xuICBjb25zdCBwbmdGaWxlczogc3RyaW5nW10gPSBnZXRGaWxlc0J5RXh0KCcucG5nJywgTGV4Q29uZmlnLmNvbmZpZyk7XG4gIGNvbnN0IHN2Z0ZpbGVzOiBzdHJpbmdbXSA9IGdldEZpbGVzQnlFeHQoJy5zdmcnLCBMZXhDb25maWcuY29uZmlnKTtcbiAgY29uc3QgaW1hZ2VGaWxlczogc3RyaW5nW10gPSBbLi4uZ2lmRmlsZXMsIC4uLmpwZ0ZpbGVzLCAuLi5wbmdGaWxlcywgLi4uc3ZnRmlsZXNdO1xuXG4gIGlmKGltYWdlRmlsZXMubGVuZ3RoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGNvcHlGaWxlcyhpbWFnZUZpbGVzLCAnaW1hZ2UnLCBzcGlubmVyLCBMZXhDb25maWcuY29uZmlnKTtcbiAgICB9IGNhdGNoKGVycm9yKSB7XG4gICAgICAvLyBEaXNwbGF5IGVycm9yIG1lc3NhZ2VcbiAgICAgIGxvZyhgXFxuJHtjbGlOYW1lfSBFcnJvcjogJHtlcnJvci5tZXNzYWdlfWAsICdlcnJvcicsIHF1aWV0KTtcblxuICAgICAgLy8gU3RvcCBzcGlubmVyXG4gICAgICBzcGlubmVyLmZhaWwoJ0ZhaWxlZCB0byBtb3ZlIGltYWdlcyB0byBvdXRwdXQgZGlyZWN0b3J5LicpO1xuXG4gICAgICAvLyBLaWxsIFByb2Nlc3NcbiAgICAgIGNhbGxiYWNrKGVycm9yLnN0YXR1cyk7XG4gICAgICByZXR1cm4gZXJyb3Iuc3RhdHVzO1xuICAgIH1cbiAgfVxuXG4gIC8vIENvcHkgZm9udCBmaWxlc1xuICBjb25zdCB0dGZGaWxlczogc3RyaW5nW10gPSBnZXRGaWxlc0J5RXh0KCcudHRmJywgTGV4Q29uZmlnLmNvbmZpZyk7XG4gIGNvbnN0IG90ZkZpbGVzOiBzdHJpbmdbXSA9IGdldEZpbGVzQnlFeHQoJy5vdGYnLCBMZXhDb25maWcuY29uZmlnKTtcbiAgY29uc3Qgd29mZkZpbGVzOiBzdHJpbmdbXSA9IGdldEZpbGVzQnlFeHQoJy53b2ZmJywgTGV4Q29uZmlnLmNvbmZpZyk7XG4gIGNvbnN0IHdvZmYyRmlsZXM6IHN0cmluZ1tdID0gZ2V0RmlsZXNCeUV4dCgnLndvZmYyJywgTGV4Q29uZmlnLmNvbmZpZyk7XG4gIGNvbnN0IGZvbnRGaWxlczogc3RyaW5nW10gPSBbLi4udHRmRmlsZXMsIC4uLm90ZkZpbGVzLCAuLi53b2ZmRmlsZXMsIC4uLndvZmYyRmlsZXNdO1xuXG4gIGlmKGZvbnRGaWxlcy5sZW5ndGgpIHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgY29weUZpbGVzKGZvbnRGaWxlcywgJ2ZvbnQnLCBzcGlubmVyLCBMZXhDb25maWcuY29uZmlnKTtcbiAgICB9IGNhdGNoKGVycm9yKSB7XG4gICAgICAvLyBEaXNwbGF5IGVycm9yIG1lc3NhZ2VcbiAgICAgIGxvZyhgXFxuJHtjbGlOYW1lfSBFcnJvcjogJHtlcnJvci5tZXNzYWdlfWAsICdlcnJvcicsIHF1aWV0KTtcblxuICAgICAgLy8gU3RvcCBzcGlubmVyXG4gICAgICBzcGlubmVyLmZhaWwoJ0ZhaWxlZCB0byBtb3ZlIGZvbnRzIHRvIG91dHB1dCBkaXJlY3RvcnkuJyk7XG5cbiAgICAgIC8vIEtpbGwgUHJvY2Vzc1xuICAgICAgY2FsbGJhY2soZXJyb3Iuc3RhdHVzKTtcbiAgICAgIHJldHVybiBlcnJvci5zdGF0dXM7XG4gICAgfVxuICB9XG5cbiAgLy8gQ29weSBtYXJrZG93biBmaWxlc1xuICBjb25zdCBtZEZpbGVzOiBzdHJpbmdbXSA9IGdldEZpbGVzQnlFeHQoJy5tZCcsIExleENvbmZpZy5jb25maWcpO1xuXG4gIGlmKG1kRmlsZXMubGVuZ3RoKSB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IGNvcHlGaWxlcyhtZEZpbGVzLCAnZG9jdW1lbnRzJywgc3Bpbm5lciwgTGV4Q29uZmlnLmNvbmZpZyk7XG4gICAgfSBjYXRjaChlcnJvcikge1xuICAgICAgLy8gRGlzcGxheSBlcnJvciBtZXNzYWdlXG4gICAgICBsb2coYFxcbiR7Y2xpTmFtZX0gRXJyb3I6ICR7ZXJyb3IubWVzc2FnZX1gLCAnZXJyb3InLCBxdWlldCk7XG5cbiAgICAgIC8vIFN0b3Agc3Bpbm5lclxuICAgICAgc3Bpbm5lci5mYWlsKCdGYWlsZWQgdG8gbW92ZSBkb2NzIHRvIG91dHB1dCBkaXJlY3RvcnkuJyk7XG5cbiAgICAgIC8vIEtpbGwgUHJvY2Vzc1xuICAgICAgY2FsbGJhY2soZXJyb3Iuc3RhdHVzKTtcbiAgICAgIHJldHVybiBlcnJvci5zdGF0dXM7XG4gICAgfVxuICB9XG5cbiAgLy8gU3RhcnQgY29tcGlsZSBzcGlubmVyXG4gIHNwaW5uZXIuc3RhcnQod2F0Y2ggPyAnV2F0Y2hpbmcgZm9yIGNoYW5nZXMuLi4nIDogJ0NvbXBpbGluZyB3aXRoIEVTQnVpbGQuLi4nKTtcblxuICB0cnkge1xuICAgIGF3YWl0IGV4ZWNhKGVzYnVpbGRQYXRoLCBlc2J1aWxkT3B0aW9ucywge2VuY29kaW5nOiAndXRmLTgnfSk7XG5cbiAgICAvLyBTdG9wIHNwaW5uZXJcbiAgICBzcGlubmVyLnN1Y2NlZWQoJ0NvbXBpbGUgY29tcGxldGVkIHN1Y2Nlc3NmdWxseSEnKTtcbiAgfSBjYXRjaChlcnJvcikge1xuICAgIC8vIERpc3BsYXkgZXJyb3IgbWVzc2FnZVxuICAgIGxvZyhgXFxuJHtjbGlOYW1lfSBFcnJvcjogJHtlcnJvci5tZXNzYWdlfWAsICdlcnJvcicsIHF1aWV0KTtcblxuICAgIGlmKCFxdWlldCkge1xuICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgfVxuXG4gICAgLy8gU3RvcCBzcGlubmVyXG4gICAgc3Bpbm5lci5mYWlsKCdDb2RlIGNvbXBpbGluZyBmYWlsZWQuJyk7XG5cbiAgICAvLyBLaWxsIFByb2Nlc3NcbiAgICBjYWxsYmFjayhlcnJvci5zdGF0dXMpO1xuICAgIHJldHVybiBlcnJvci5zdGF0dXM7XG4gIH1cblxuICAvLyBTdG9wIHByb2Nlc3NcbiAgY2FsbGJhY2soMCk7XG4gIHJldHVybiAwO1xufTtcbiJdLAogICJtYXBwaW5ncyI6ICJBQUlBLFNBQVEsYUFBWTtBQUNwQixTQUFRLFlBQVksV0FBVyxtQkFBa0I7QUFDakQsWUFBWSxVQUFVO0FBQ3RCLFlBQVksVUFBVTtBQUN0QixTQUFRLHFCQUFvQjtBQUU1QixTQUFRLGlCQUFnQjtBQUN4QixTQUFRLG9CQUFvQixXQUFXLGVBQWUsZUFBZSxtQkFBa0I7QUFDdkYsU0FBUSx3QkFBdUI7QUFDL0IsU0FBUSxXQUFVO0FBRVgsTUFBTSxjQUFjLENBQUMsV0FBbUIsUUFBMkI7QUFDeEUsTUFBRyxDQUFDLFdBQVcsU0FBUyxHQUFHO0FBQ3pCLFdBQU87QUFBQSxFQUNUO0FBRUEsUUFBTSxRQUFrQixZQUFZLFNBQVM7QUFFN0MsU0FBTyxNQUFNLEtBQUssQ0FBQyxTQUFpQjtBQUNsQyxVQUFNLFdBQW1CLEtBQUssS0FBSyxXQUFXLElBQUk7QUFDbEQsVUFBTSxVQUFrQixLQUFLLFFBQVEsUUFBUTtBQUM3QyxVQUFNLE9BQU8sVUFBVSxRQUFRO0FBRS9C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aEUsU0FBUSxPQUFOO0FBRUEsVUFBSTtBQUFBLEVBQUssa0JBQWtCLE1BQU0sV0FBVyxTQUFTLEtBQUs7QUFHMUQsY0FBUSxLQUFLLDRDQUE0QztBQUd6RCxlQUFTLE1BQU0sTUFBTTtBQUNyQixhQUFPLE1BQU07QUFBQSxJQUNmO0FBQUEsRUFDRjtBQUdBLFFBQU0sV0FBcUIsY0FBYyxRQUFRLFVBQVUsTUFBTTtBQUNqRSxRQUFNLFdBQXFCLGNBQWMsUUFBUSxVQUFVLE1BQU07QUFDakUsUUFBTSxZQUFzQixjQUFjLFNBQVMsVUFBVSxNQUFNO0FBQ25FLFFBQU0sYUFBdUIsY0FBYyxVQUFVLFVBQVUsTUFBTTtBQUNyRSxRQUFNLFlBQXNCLENBQUMsR0FBRyxVQUFVLEdBQUcsVUFBVSxHQUFHLFdBQVcsR0FBRyxVQUFVO0FBRWxGLE1BQUcsVUFBVSxRQUFRO0FBQ25CLFFBQUk7QUFDRixZQUFNLFVBQVUsV0FBVyxRQUFRLFNBQVMsVUFBVSxNQUFNO0FBQUEsSUFDOUQsU0FBUSxPQUFOO0FBRUEsVUFBSTtBQUFBLEVBQUssa0JBQWtCLE1BQU0sV0FBVyxTQUFTLEtBQUs7QUFHMUQsY0FBUSxLQUFLLDJDQUEyQztBQUd4RCxlQUFTLE1BQU0sTUFBTTtBQUNyQixhQUFPLE1BQU07QUFBQSxJQUNmO0FBQUEsRUFDRjtBQUdBLFFBQU0sVUFBb0IsY0FBYyxPQUFPLFVBQVUsTUFBTTtBQUUvRCxNQUFHLFFBQVEsUUFBUTtBQUNqQixRQUFJO0FBQ0YsWUFBTSxVQUFVLFNBQVMsYUFBYSxTQUFTLFVBQVUsTUFBTTtBQUFBLElBQ2pFLFNBQVEsT0FBTjtBQUVBLFVBQUk7QUFBQSxFQUFLLGtCQUFrQixNQUFNLFdBQVcsU0FBUyxLQUFLO0FBRzFELGNBQVEsS0FBSywwQ0FBMEM7QUFHdkQsZUFBUyxNQUFNLE1BQU07QUFDckIsYUFBTyxNQUFNO0FBQUEsSUFDZjtBQUFBLEVBQ0Y7QUFHQSxVQUFRLE1BQU0sUUFBUSw0QkFBNEIsMkJBQTJCO0FBRTdFLE1BQUk7QUFDRixVQUFNLE1BQU0sYUFBYSxnQkFBZ0IsRUFBQyxVQUFVLFFBQU8sQ0FBQztBQUc1RCxZQUFRLFFBQVEsaUNBQWlDO0FBQUEsRUFDbkQsU0FBUSxPQUFOO0FBRUEsUUFBSTtBQUFBLEVBQUssa0JBQWtCLE1BQU0sV0FBVyxTQUFTLEtBQUs7QUFFMUQsUUFBRyxDQUFDLE9BQU87QUFDVCxjQUFRLE1BQU0sS0FBSztBQUFBLElBQ3JCO0FBR0EsWUFBUSxLQUFLLHdCQUF3QjtBQUdyQyxhQUFTLE1BQU0sTUFBTTtBQUNyQixXQUFPLE1BQU07QUFBQSxFQUNmO0FBR0EsV0FBUyxDQUFDO0FBQ1YsU0FBTztBQUNUOyIsCiAgIm5hbWVzIjogWyJkaXJOYW1lIl0KfQo=
@@ -1,75 +1,43 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
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 });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
21
- mod
22
- ));
23
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
24
- var config_exports = {};
25
- __export(config_exports, {
26
- config: () => config
27
- });
28
- module.exports = __toCommonJS(config_exports);
29
- var fs = __toESM(require("fs-extra"));
30
- var import_startCase = __toESM(require("lodash/startCase"));
31
- var path = __toESM(require("path"));
32
- var import_LexConfig = require("../LexConfig");
33
- var import_app = require("../utils/app");
34
- var import_log = require("../utils/log");
35
- const config = (type, cmd, callback = () => ({})) => {
1
+ import { writeFileSync } from "fs";
2
+ import startCase from "lodash/startCase.js";
3
+ import * as path from "path";
4
+ import { LexConfig } from "../LexConfig.js";
5
+ import { createSpinner } from "../utils/app.js";
6
+ import { log } from "../utils/log.js";
7
+ const config = async (type, cmd, callback = () => ({})) => {
36
8
  const { cliName = "Lex", json, quiet } = cmd;
37
9
  const validTypes = ["app", "jest", "webpack"];
38
10
  if (!validTypes.includes(type)) {
39
- (0, import_log.log)(`
11
+ log(`
40
12
  ${cliName} Error: Option for ${type} not found. Configurations only available for app, jest, and webpack.`, "error", quiet);
41
13
  callback(1);
42
14
  return Promise.resolve(1);
43
15
  }
44
- (0, import_log.log)(`${cliName} generating configuration for ${(0, import_startCase.default)(type)}...`, "info", quiet);
45
- import_LexConfig.LexConfig.parseConfig(cmd);
16
+ log(`${cliName} generating configuration for ${startCase(type)}...`, "info", quiet);
17
+ LexConfig.parseConfig(cmd);
46
18
  let configOptions;
47
19
  switch (type) {
48
20
  case "app":
49
- configOptions = import_LexConfig.LexConfig.config;
50
- break;
51
- case "esbuild":
52
- configOptions = require("../../esbuildOptions");
21
+ configOptions = LexConfig.config;
53
22
  break;
54
23
  case "jest":
55
- configOptions = require("../../jest.config.lex");
24
+ configOptions = import("../../jest.config.lex");
56
25
  break;
57
26
  case "webpack":
58
- configOptions = require("../../webpack.config");
27
+ configOptions = import("../../webpack.config");
59
28
  break;
60
29
  }
61
30
  const jsonOutput = JSON.stringify(configOptions, null, 2);
62
31
  if (json) {
63
- const spinner = (0, import_app.createSpinner)(quiet);
32
+ const spinner = createSpinner(quiet);
64
33
  spinner.start("Creating JSON output...");
65
- fs.writeFileSync(json, jsonOutput);
34
+ writeFileSync(json, jsonOutput);
66
35
  spinner.succeed(`Successfully saved JSON output to ${path.relative(process.cwd(), json)}`);
67
36
  }
68
37
  callback(0);
69
38
  return Promise.resolve(0);
70
39
  };
71
- // Annotate the CommonJS export names for ESM import in node:
72
- 0 && (module.exports = {
40
+ export {
73
41
  config
74
- });
75
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL2NvbmZpZy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzLWV4dHJhJztcbmltcG9ydCBzdGFydENhc2UgZnJvbSAnbG9kYXNoL3N0YXJ0Q2FzZSc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuXG5pbXBvcnQge0xleENvbmZpZ30gZnJvbSAnLi4vTGV4Q29uZmlnJztcbmltcG9ydCB7Y3JlYXRlU3Bpbm5lcn0gZnJvbSAnLi4vdXRpbHMvYXBwJztcbmltcG9ydCB7bG9nfSBmcm9tICcuLi91dGlscy9sb2cnO1xuXG5leHBvcnQgY29uc3QgY29uZmlnID0gKHR5cGU6IHN0cmluZywgY21kOiBhbnksIGNhbGxiYWNrOiBhbnkgPSAoKSA9PiAoe30pKTogUHJvbWlzZTxudW1iZXI+ID0+IHtcbiAgY29uc3Qge2NsaU5hbWUgPSAnTGV4JywganNvbiwgcXVpZXR9ID0gY21kO1xuICBjb25zdCB2YWxpZFR5cGVzOiBzdHJpbmdbXSA9IFsnYXBwJywgJ2plc3QnLCAnd2VicGFjayddO1xuXG4gIGlmKCF2YWxpZFR5cGVzLmluY2x1ZGVzKHR5cGUpKSB7XG4gICAgbG9nKGBcXG4ke2NsaU5hbWV9IEVycm9yOiBPcHRpb24gZm9yICR7dHlwZX0gbm90IGZvdW5kLiBDb25maWd1cmF0aW9ucyBvbmx5IGF2YWlsYWJsZSBmb3IgYXBwLCBqZXN0LCBhbmQgd2VicGFjay5gLCAnZXJyb3InLCBxdWlldCk7XG4gICAgY2FsbGJhY2soMSk7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgxKTtcbiAgfVxuXG4gIC8vIERpc3BsYXkgc3RhdHVzXG4gIGxvZyhgJHtjbGlOYW1lfSBnZW5lcmF0aW5nIGNvbmZpZ3VyYXRpb24gZm9yICR7c3RhcnRDYXNlKHR5cGUpfS4uLmAsICdpbmZvJywgcXVpZXQpO1xuXG4gIC8vIEdldCBjdXN0b20gY29uZmlndXJhdGlvblxuICBMZXhDb25maWcucGFyc2VDb25maWcoY21kKTtcblxuICBsZXQgY29uZmlnT3B0aW9ucztcblxuICBzd2l0Y2godHlwZSkge1xuICAgIGNhc2UgJ2FwcCc6XG4gICAgICBjb25maWdPcHRpb25zID0gTGV4Q29uZmlnLmNvbmZpZztcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ2VzYnVpbGQnOlxuICAgICAgY29uZmlnT3B0aW9ucyA9IHJlcXVpcmUoJy4uLy4uL2VzYnVpbGRPcHRpb25zJyk7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdqZXN0JzpcbiAgICAgIGNvbmZpZ09wdGlvbnMgPSByZXF1aXJlKCcuLi8uLi9qZXN0LmNvbmZpZy5sZXgnKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ3dlYnBhY2snOlxuICAgICAgY29uZmlnT3B0aW9ucyA9IHJlcXVpcmUoJy4uLy4uL3dlYnBhY2suY29uZmlnJyk7XG4gICAgICBicmVhaztcbiAgfVxuXG4gIC8vIE91dHB1dCBjb25maWcgdG8gY29uc29sZVxuICBjb25zdCBqc29uT3V0cHV0OiBzdHJpbmcgPSBKU09OLnN0cmluZ2lmeShjb25maWdPcHRpb25zLCBudWxsLCAyKTtcblxuICBpZihqc29uKSB7XG4gICAgLy8gU3Bpbm5lclxuICAgIGNvbnN0IHNwaW5uZXIgPSBjcmVhdGVTcGlubmVyKHF1aWV0KTtcblxuICAgIC8vIFN0YXJ0IHNwaW5uZXJcbiAgICBzcGlubmVyLnN0YXJ0KCdDcmVhdGluZyBKU09OIG91dHB1dC4uLicpO1xuXG4gICAgLy8gU2F2ZSBqc29uIGxvY2FsbHlcbiAgICBmcy53cml0ZUZpbGVTeW5jKGpzb24sIGpzb25PdXRwdXQpO1xuXG4gICAgLy8gU3VjY2VzcyBzcGlubmVyXG4gICAgc3Bpbm5lci5zdWNjZWVkKGBTdWNjZXNzZnVsbHkgc2F2ZWQgSlNPTiBvdXRwdXQgdG8gJHtwYXRoLnJlbGF0aXZlKHByb2Nlc3MuY3dkKCksIGpzb24pfWApO1xuICB9XG5cbiAgY2FsbGJhY2soMCk7XG4gIHJldHVybiBQcm9taXNlLnJlc29sdmUoMCk7XG59O1xuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBSUEsU0FBb0I7QUFDcEIsdUJBQXNCO0FBQ3RCLFdBQXNCO0FBRXRCLHVCQUF3QjtBQUN4QixpQkFBNEI7QUFDNUIsaUJBQWtCO0FBRVgsTUFBTSxTQUFTLENBQUMsTUFBYyxLQUFVLFdBQWdCLE9BQU8sQ0FBQyxPQUF3QjtBQUM3RixRQUFNLEVBQUMsVUFBVSxPQUFPLE1BQU0sTUFBSyxJQUFJO0FBQ3ZDLFFBQU0sYUFBdUIsQ0FBQyxPQUFPLFFBQVEsU0FBUztBQUV0RCxNQUFHLENBQUMsV0FBVyxTQUFTLElBQUksR0FBRztBQUM3Qix3QkFBSTtBQUFBLEVBQUssNkJBQTZCLDZFQUE2RSxTQUFTLEtBQUs7QUFDakksYUFBUyxDQUFDO0FBQ1YsV0FBTyxRQUFRLFFBQVEsQ0FBQztBQUFBLEVBQzFCO0FBR0Esc0JBQUksR0FBRyw0Q0FBd0MsaUJBQUFBLFNBQVUsSUFBSSxRQUFRLFFBQVEsS0FBSztBQUdsRiw2QkFBVSxZQUFZLEdBQUc7QUFFekIsTUFBSTtBQUVKLFVBQU87QUFBQSxTQUNBO0FBQ0gsc0JBQWdCLDJCQUFVO0FBQzFCO0FBQUEsU0FDRztBQUNILHNCQUFnQixRQUFRLHNCQUFzQjtBQUM5QztBQUFBLFNBQ0c7QUFDSCxzQkFBZ0IsUUFBUSx1QkFBdUI7QUFDL0M7QUFBQSxTQUNHO0FBQ0gsc0JBQWdCLFFBQVEsc0JBQXNCO0FBQzlDO0FBQUE7QUFJSixRQUFNLGFBQXFCLEtBQUssVUFBVSxlQUFlLE1BQU0sQ0FBQztBQUVoRSxNQUFHLE1BQU07QUFFUCxVQUFNLGNBQVUsMEJBQWMsS0FBSztBQUduQyxZQUFRLE1BQU0seUJBQXlCO0FBR3ZDLE9BQUcsY0FBYyxNQUFNLFVBQVU7QUFHakMsWUFBUSxRQUFRLHFDQUFxQyxLQUFLLFNBQVMsUUFBUSxJQUFJLEdBQUcsSUFBSSxHQUFHO0FBQUEsRUFDM0Y7QUFFQSxXQUFTLENBQUM7QUFDVixTQUFPLFFBQVEsUUFBUSxDQUFDO0FBQzFCOyIsCiAgIm5hbWVzIjogWyJzdGFydENhc2UiXQp9Cg==
42
+ };
43
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL2NvbmZpZy50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTgtUHJlc2VudCwgTml0cm9nZW4gTGFicywgSW5jLlxuICogQ29weXJpZ2h0cyBsaWNlbnNlZCB1bmRlciB0aGUgTUlUIExpY2Vuc2UuIFNlZSB0aGUgYWNjb21wYW55aW5nIExJQ0VOU0UgZmlsZSBmb3IgdGVybXMuXG4gKi9cbmltcG9ydCB7d3JpdGVGaWxlU3luY30gZnJvbSAnZnMnO1xuaW1wb3J0IHN0YXJ0Q2FzZSBmcm9tICdsb2Rhc2gvc3RhcnRDYXNlLmpzJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5cbmltcG9ydCB7TGV4Q29uZmlnfSBmcm9tICcuLi9MZXhDb25maWcuanMnO1xuaW1wb3J0IHtjcmVhdGVTcGlubmVyfSBmcm9tICcuLi91dGlscy9hcHAuanMnO1xuaW1wb3J0IHtsb2d9IGZyb20gJy4uL3V0aWxzL2xvZy5qcyc7XG5cbmV4cG9ydCBjb25zdCBjb25maWcgPSBhc3luYyAodHlwZTogc3RyaW5nLCBjbWQ6IGFueSwgY2FsbGJhY2s6IGFueSA9ICgpID0+ICh7fSkpOiBQcm9taXNlPG51bWJlcj4gPT4ge1xuICBjb25zdCB7Y2xpTmFtZSA9ICdMZXgnLCBqc29uLCBxdWlldH0gPSBjbWQ7XG4gIGNvbnN0IHZhbGlkVHlwZXM6IHN0cmluZ1tdID0gWydhcHAnLCAnamVzdCcsICd3ZWJwYWNrJ107XG5cbiAgaWYoIXZhbGlkVHlwZXMuaW5jbHVkZXModHlwZSkpIHtcbiAgICBsb2coYFxcbiR7Y2xpTmFtZX0gRXJyb3I6IE9wdGlvbiBmb3IgJHt0eXBlfSBub3QgZm91bmQuIENvbmZpZ3VyYXRpb25zIG9ubHkgYXZhaWxhYmxlIGZvciBhcHAsIGplc3QsIGFuZCB3ZWJwYWNrLmAsICdlcnJvcicsIHF1aWV0KTtcbiAgICBjYWxsYmFjaygxKTtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKDEpO1xuICB9XG5cbiAgLy8gRGlzcGxheSBzdGF0dXNcbiAgbG9nKGAke2NsaU5hbWV9IGdlbmVyYXRpbmcgY29uZmlndXJhdGlvbiBmb3IgJHtzdGFydENhc2UodHlwZSl9Li4uYCwgJ2luZm8nLCBxdWlldCk7XG5cbiAgLy8gR2V0IGN1c3RvbSBjb25maWd1cmF0aW9uXG4gIExleENvbmZpZy5wYXJzZUNvbmZpZyhjbWQpO1xuXG4gIGxldCBjb25maWdPcHRpb25zO1xuXG4gIHN3aXRjaCh0eXBlKSB7XG4gICAgY2FzZSAnYXBwJzpcbiAgICAgIGNvbmZpZ09wdGlvbnMgPSBMZXhDb25maWcuY29uZmlnO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnamVzdCc6XG4gICAgICBjb25maWdPcHRpb25zID0gaW1wb3J0KCcuLi8uLi9qZXN0LmNvbmZpZy5sZXgnKTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ3dlYnBhY2snOlxuICAgICAgY29uZmlnT3B0aW9ucyA9IGltcG9ydCgnLi4vLi4vd2VicGFjay5jb25maWcnKTtcbiAgICAgIGJyZWFrO1xuICB9XG5cbiAgLy8gT3V0cHV0IGNvbmZpZyB0byBjb25zb2xlXG4gIGNvbnN0IGpzb25PdXRwdXQ6IHN0cmluZyA9IEpTT04uc3RyaW5naWZ5KGNvbmZpZ09wdGlvbnMsIG51bGwsIDIpO1xuXG4gIGlmKGpzb24pIHtcbiAgICAvLyBTcGlubmVyXG4gICAgY29uc3Qgc3Bpbm5lciA9IGNyZWF0ZVNwaW5uZXIocXVpZXQpO1xuXG4gICAgLy8gU3RhcnQgc3Bpbm5lclxuICAgIHNwaW5uZXIuc3RhcnQoJ0NyZWF0aW5nIEpTT04gb3V0cHV0Li4uJyk7XG5cbiAgICAvLyBTYXZlIGpzb24gbG9jYWxseVxuICAgIHdyaXRlRmlsZVN5bmMoanNvbiwganNvbk91dHB1dCk7XG5cbiAgICAvLyBTdWNjZXNzIHNwaW5uZXJcbiAgICBzcGlubmVyLnN1Y2NlZWQoYFN1Y2Nlc3NmdWxseSBzYXZlZCBKU09OIG91dHB1dCB0byAke3BhdGgucmVsYXRpdmUocHJvY2Vzcy5jd2QoKSwganNvbil9YCk7XG4gIH1cblxuICBjYWxsYmFjaygwKTtcbiAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgwKTtcbn07XG4iXSwKICAibWFwcGluZ3MiOiAiQUFJQSxTQUFRLHFCQUFvQjtBQUM1QixPQUFPLGVBQWU7QUFDdEIsWUFBWSxVQUFVO0FBRXRCLFNBQVEsaUJBQWdCO0FBQ3hCLFNBQVEscUJBQW9CO0FBQzVCLFNBQVEsV0FBVTtBQUVYLE1BQU0sU0FBUyxPQUFPLE1BQWMsS0FBVSxXQUFnQixPQUFPLENBQUMsT0FBd0I7QUFDbkcsUUFBTSxFQUFDLFVBQVUsT0FBTyxNQUFNLE1BQUssSUFBSTtBQUN2QyxRQUFNLGFBQXVCLENBQUMsT0FBTyxRQUFRLFNBQVM7QUFFdEQsTUFBRyxDQUFDLFdBQVcsU0FBUyxJQUFJLEdBQUc7QUFDN0IsUUFBSTtBQUFBLEVBQUssNkJBQTZCLDZFQUE2RSxTQUFTLEtBQUs7QUFDakksYUFBUyxDQUFDO0FBQ1YsV0FBTyxRQUFRLFFBQVEsQ0FBQztBQUFBLEVBQzFCO0FBR0EsTUFBSSxHQUFHLHdDQUF3QyxVQUFVLElBQUksUUFBUSxRQUFRLEtBQUs7QUFHbEYsWUFBVSxZQUFZLEdBQUc7QUFFekIsTUFBSTtBQUVKLFVBQU8sTUFBTTtBQUFBLElBQ1gsS0FBSztBQUNILHNCQUFnQixVQUFVO0FBQzFCO0FBQUEsSUFDRixLQUFLO0FBQ0gsc0JBQWdCLE9BQU8sdUJBQXVCO0FBQzlDO0FBQUEsSUFDRixLQUFLO0FBQ0gsc0JBQWdCLE9BQU8sc0JBQXNCO0FBQzdDO0FBQUEsRUFDSjtBQUdBLFFBQU0sYUFBcUIsS0FBSyxVQUFVLGVBQWUsTUFBTSxDQUFDO0FBRWhFLE1BQUcsTUFBTTtBQUVQLFVBQU0sVUFBVSxjQUFjLEtBQUs7QUFHbkMsWUFBUSxNQUFNLHlCQUF5QjtBQUd2QyxrQkFBYyxNQUFNLFVBQVU7QUFHOUIsWUFBUSxRQUFRLHFDQUFxQyxLQUFLLFNBQVMsUUFBUSxJQUFJLEdBQUcsSUFBSSxHQUFHO0FBQUEsRUFDM0Y7QUFFQSxXQUFTLENBQUM7QUFDVixTQUFPLFFBQVEsUUFBUSxDQUFDO0FBQzFCOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -1,57 +1,29 @@
1
- var __create = Object.create;
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
- var __hasOwnProp = Object.prototype.hasOwnProperty;
7
- var __export = (target, all) => {
8
- for (var name in all)
9
- __defProp(target, name, { get: all[name], enumerable: true });
10
- };
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 });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
21
- mod
22
- ));
23
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
24
- var copy_exports = {};
25
- __export(copy_exports, {
26
- copy: () => copy
27
- });
28
- module.exports = __toCommonJS(copy_exports);
29
- var fs = __toESM(require("fs-extra"));
30
- var import_app = require("../utils/app");
31
- var import_log = require("../utils/log");
1
+ import { existsSync, lstatSync } from "fs";
2
+ import { copyFileSync, copyFolderRecursiveSync } from "../utils/app.js";
3
+ import { log } from "../utils/log.js";
32
4
  const copy = (from, to, cmd, callback = () => ({})) => {
33
5
  const { cliName = "Lex", quiet } = cmd;
34
- (0, import_log.log)(`${cliName} copying "${to}"...`, "info", quiet);
35
- if (!fs.existsSync(from)) {
36
- (0, import_log.log)(`
6
+ log(`${cliName} copying "${to}"...`, "info", quiet);
7
+ if (!existsSync(from)) {
8
+ log(`
37
9
  ${cliName} Error: Path not found, "${from}"...`, "error", quiet);
38
10
  callback(1);
39
11
  return Promise.resolve(1);
40
12
  }
41
- if (fs.lstatSync(from).isDirectory()) {
13
+ if (lstatSync(from).isDirectory()) {
42
14
  try {
43
- (0, import_app.copyFolderRecursiveSync)(from, to);
15
+ copyFolderRecursiveSync(from, to);
44
16
  } catch (error) {
45
- (0, import_log.log)(`
17
+ log(`
46
18
  ${cliName} Error: Cannot copy "${from}". ${error.message}`, "error", quiet);
47
19
  callback(1);
48
20
  return Promise.resolve(1);
49
21
  }
50
22
  } else {
51
23
  try {
52
- (0, import_app.copyFileSync)(from, to);
24
+ copyFileSync(from, to);
53
25
  } catch (error) {
54
- (0, import_log.log)(`
26
+ log(`
55
27
  ${cliName} Error: Cannot copy "${from}" ${error.message}`, "error", quiet);
56
28
  callback(1);
57
29
  return Promise.resolve(1);
@@ -60,8 +32,7 @@ ${cliName} Error: Cannot copy "${from}" ${error.message}`, "error", quiet);
60
32
  callback(0);
61
33
  return Promise.resolve(0);
62
34
  };
63
- // Annotate the CommonJS export names for ESM import in node:
64
- 0 && (module.exports = {
35
+ export {
65
36
  copy
66
- });
67
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL2NvcHkudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQgKiBhcyBmcyBmcm9tICdmcy1leHRyYSc7XG5cbmltcG9ydCB7Y29weUZpbGVTeW5jLCBjb3B5Rm9sZGVyUmVjdXJzaXZlU3luY30gZnJvbSAnLi4vdXRpbHMvYXBwJztcbmltcG9ydCB7bG9nfSBmcm9tICcuLi91dGlscy9sb2cnO1xuXG5leHBvcnQgY29uc3QgY29weSA9IChmcm9tOiBzdHJpbmcsIHRvOiBzdHJpbmcsIGNtZDogYW55LCBjYWxsYmFjazogYW55ID0gKCkgPT4gKHt9KSk6IFByb21pc2U8bnVtYmVyPiA9PiB7XG4gIGNvbnN0IHtjbGlOYW1lID0gJ0xleCcsIHF1aWV0fSA9IGNtZDtcblxuICAvLyBEaXNwbGF5IG1lc3NhZ2VcbiAgbG9nKGAke2NsaU5hbWV9IGNvcHlpbmcgXCIke3RvfVwiLi4uYCwgJ2luZm8nLCBxdWlldCk7XG5cbiAgaWYoIWZzLmV4aXN0c1N5bmMoZnJvbSkpIHtcbiAgICBsb2coYFxcbiR7Y2xpTmFtZX0gRXJyb3I6IFBhdGggbm90IGZvdW5kLCBcIiR7ZnJvbX1cIi4uLmAsICdlcnJvcicsIHF1aWV0KTtcbiAgICBjYWxsYmFjaygxKTtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKDEpO1xuICB9XG5cbiAgaWYoZnMubHN0YXRTeW5jKGZyb20pLmlzRGlyZWN0b3J5KCkpIHtcbiAgICB0cnkge1xuICAgICAgLy8gQ29weSBkaXJlY3RvcnlcbiAgICAgIGNvcHlGb2xkZXJSZWN1cnNpdmVTeW5jKGZyb20sIHRvKTtcbiAgICB9IGNhdGNoKGVycm9yKSB7XG4gICAgICBsb2coYFxcbiR7Y2xpTmFtZX0gRXJyb3I6IENhbm5vdCBjb3B5IFwiJHtmcm9tfVwiLiAke2Vycm9yLm1lc3NhZ2V9YCwgJ2Vycm9yJywgcXVpZXQpO1xuICAgICAgY2FsbGJhY2soMSk7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKDEpO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICB0cnkge1xuICAgICAgLy8gQ29weSBmaWxlXG4gICAgICBjb3B5RmlsZVN5bmMoZnJvbSwgdG8pO1xuICAgIH0gY2F0Y2goZXJyb3IpIHtcbiAgICAgIGxvZyhgXFxuJHtjbGlOYW1lfSBFcnJvcjogQ2Fubm90IGNvcHkgXCIke2Zyb219XCIgJHtlcnJvci5tZXNzYWdlfWAsICdlcnJvcicsIHF1aWV0KTtcbiAgICAgIGNhbGxiYWNrKDEpO1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgxKTtcbiAgICB9XG4gIH1cblxuICBjYWxsYmFjaygwKTtcbiAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgwKTtcbn07XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFJQSxTQUFvQjtBQUVwQixpQkFBb0Q7QUFDcEQsaUJBQWtCO0FBRVgsTUFBTSxPQUFPLENBQUMsTUFBYyxJQUFZLEtBQVUsV0FBZ0IsT0FBTyxDQUFDLE9BQXdCO0FBQ3ZHLFFBQU0sRUFBQyxVQUFVLE9BQU8sTUFBSyxJQUFJO0FBR2pDLHNCQUFJLEdBQUcsb0JBQW9CLFVBQVUsUUFBUSxLQUFLO0FBRWxELE1BQUcsQ0FBQyxHQUFHLFdBQVcsSUFBSSxHQUFHO0FBQ3ZCLHdCQUFJO0FBQUEsRUFBSyxtQ0FBbUMsWUFBWSxTQUFTLEtBQUs7QUFDdEUsYUFBUyxDQUFDO0FBQ1YsV0FBTyxRQUFRLFFBQVEsQ0FBQztBQUFBLEVBQzFCO0FBRUEsTUFBRyxHQUFHLFVBQVUsSUFBSSxFQUFFLFlBQVksR0FBRztBQUNuQyxRQUFJO0FBRUYsOENBQXdCLE1BQU0sRUFBRTtBQUFBLElBQ2xDLFNBQVEsT0FBTjtBQUNBLDBCQUFJO0FBQUEsRUFBSywrQkFBK0IsVUFBVSxNQUFNLFdBQVcsU0FBUyxLQUFLO0FBQ2pGLGVBQVMsQ0FBQztBQUNWLGFBQU8sUUFBUSxRQUFRLENBQUM7QUFBQSxJQUMxQjtBQUFBLEVBQ0YsT0FBTztBQUNMLFFBQUk7QUFFRixtQ0FBYSxNQUFNLEVBQUU7QUFBQSxJQUN2QixTQUFRLE9BQU47QUFDQSwwQkFBSTtBQUFBLEVBQUssK0JBQStCLFNBQVMsTUFBTSxXQUFXLFNBQVMsS0FBSztBQUNoRixlQUFTLENBQUM7QUFDVixhQUFPLFFBQVEsUUFBUSxDQUFDO0FBQUEsSUFDMUI7QUFBQSxFQUNGO0FBRUEsV0FBUyxDQUFDO0FBQ1YsU0FBTyxRQUFRLFFBQVEsQ0FBQztBQUMxQjsiLAogICJuYW1lcyI6IFtdCn0K
37
+ };
38
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL2NvbW1hbmRzL2NvcHkudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LVByZXNlbnQsIE5pdHJvZ2VuIExhYnMsIEluYy5cbiAqIENvcHlyaWdodHMgbGljZW5zZWQgdW5kZXIgdGhlIE1JVCBMaWNlbnNlLiBTZWUgdGhlIGFjY29tcGFueWluZyBMSUNFTlNFIGZpbGUgZm9yIHRlcm1zLlxuICovXG5pbXBvcnQge2V4aXN0c1N5bmMsIGxzdGF0U3luY30gZnJvbSAnZnMnO1xuXG5pbXBvcnQge2NvcHlGaWxlU3luYywgY29weUZvbGRlclJlY3Vyc2l2ZVN5bmN9IGZyb20gJy4uL3V0aWxzL2FwcC5qcyc7XG5pbXBvcnQge2xvZ30gZnJvbSAnLi4vdXRpbHMvbG9nLmpzJztcblxuZXhwb3J0IGNvbnN0IGNvcHkgPSAoZnJvbTogc3RyaW5nLCB0bzogc3RyaW5nLCBjbWQ6IGFueSwgY2FsbGJhY2s6IGFueSA9ICgpID0+ICh7fSkpOiBQcm9taXNlPG51bWJlcj4gPT4ge1xuICBjb25zdCB7Y2xpTmFtZSA9ICdMZXgnLCBxdWlldH0gPSBjbWQ7XG5cbiAgLy8gRGlzcGxheSBtZXNzYWdlXG4gIGxvZyhgJHtjbGlOYW1lfSBjb3B5aW5nIFwiJHt0b31cIi4uLmAsICdpbmZvJywgcXVpZXQpO1xuXG4gIGlmKCFleGlzdHNTeW5jKGZyb20pKSB7XG4gICAgbG9nKGBcXG4ke2NsaU5hbWV9IEVycm9yOiBQYXRoIG5vdCBmb3VuZCwgXCIke2Zyb219XCIuLi5gLCAnZXJyb3InLCBxdWlldCk7XG4gICAgY2FsbGJhY2soMSk7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgxKTtcbiAgfVxuXG4gIGlmKGxzdGF0U3luYyhmcm9tKS5pc0RpcmVjdG9yeSgpKSB7XG4gICAgdHJ5IHtcbiAgICAgIC8vIENvcHkgZGlyZWN0b3J5XG4gICAgICBjb3B5Rm9sZGVyUmVjdXJzaXZlU3luYyhmcm9tLCB0byk7XG4gICAgfSBjYXRjaChlcnJvcikge1xuICAgICAgbG9nKGBcXG4ke2NsaU5hbWV9IEVycm9yOiBDYW5ub3QgY29weSBcIiR7ZnJvbX1cIi4gJHtlcnJvci5tZXNzYWdlfWAsICdlcnJvcicsIHF1aWV0KTtcbiAgICAgIGNhbGxiYWNrKDEpO1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgxKTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgdHJ5IHtcbiAgICAgIC8vIENvcHkgZmlsZVxuICAgICAgY29weUZpbGVTeW5jKGZyb20sIHRvKTtcbiAgICB9IGNhdGNoKGVycm9yKSB7XG4gICAgICBsb2coYFxcbiR7Y2xpTmFtZX0gRXJyb3I6IENhbm5vdCBjb3B5IFwiJHtmcm9tfVwiICR7ZXJyb3IubWVzc2FnZX1gLCAnZXJyb3InLCBxdWlldCk7XG4gICAgICBjYWxsYmFjaygxKTtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoMSk7XG4gICAgfVxuICB9XG5cbiAgY2FsbGJhY2soMCk7XG4gIHJldHVybiBQcm9taXNlLnJlc29sdmUoMCk7XG59O1xuIl0sCiAgIm1hcHBpbmdzIjogIkFBSUEsU0FBUSxZQUFZLGlCQUFnQjtBQUVwQyxTQUFRLGNBQWMsK0JBQThCO0FBQ3BELFNBQVEsV0FBVTtBQUVYLE1BQU0sT0FBTyxDQUFDLE1BQWMsSUFBWSxLQUFVLFdBQWdCLE9BQU8sQ0FBQyxPQUF3QjtBQUN2RyxRQUFNLEVBQUMsVUFBVSxPQUFPLE1BQUssSUFBSTtBQUdqQyxNQUFJLEdBQUcsb0JBQW9CLFVBQVUsUUFBUSxLQUFLO0FBRWxELE1BQUcsQ0FBQyxXQUFXLElBQUksR0FBRztBQUNwQixRQUFJO0FBQUEsRUFBSyxtQ0FBbUMsWUFBWSxTQUFTLEtBQUs7QUFDdEUsYUFBUyxDQUFDO0FBQ1YsV0FBTyxRQUFRLFFBQVEsQ0FBQztBQUFBLEVBQzFCO0FBRUEsTUFBRyxVQUFVLElBQUksRUFBRSxZQUFZLEdBQUc7QUFDaEMsUUFBSTtBQUVGLDhCQUF3QixNQUFNLEVBQUU7QUFBQSxJQUNsQyxTQUFRLE9BQU47QUFDQSxVQUFJO0FBQUEsRUFBSywrQkFBK0IsVUFBVSxNQUFNLFdBQVcsU0FBUyxLQUFLO0FBQ2pGLGVBQVMsQ0FBQztBQUNWLGFBQU8sUUFBUSxRQUFRLENBQUM7QUFBQSxJQUMxQjtBQUFBLEVBQ0YsT0FBTztBQUNMLFFBQUk7QUFFRixtQkFBYSxNQUFNLEVBQUU7QUFBQSxJQUN2QixTQUFRLE9BQU47QUFDQSxVQUFJO0FBQUEsRUFBSywrQkFBK0IsU0FBUyxNQUFNLFdBQVcsU0FBUyxLQUFLO0FBQ2hGLGVBQVMsQ0FBQztBQUNWLGFBQU8sUUFBUSxRQUFRLENBQUM7QUFBQSxJQUMxQjtBQUFBLEVBQ0Y7QUFFQSxXQUFTLENBQUM7QUFDVixTQUFPLFFBQVEsUUFBUSxDQUFDO0FBQzFCOyIsCiAgIm5hbWVzIjogW10KfQo=