@kaspernj/api-maker 1.0.2138 → 1.0.2139

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.
@@ -0,0 +1,55 @@
1
+ /** Loads and resolves source maps for stack traces. */
2
+ export default class SourceMapsLoader {
3
+ isLoadingSourceMaps: boolean;
4
+ sourceMaps: any[];
5
+ srcLoaded: {};
6
+ /** loadSourceMapsForScriptTags. */
7
+ loadSourceMapsForScriptTags(callback: any): void;
8
+ loadSourceMapsForScriptTagsCallback: any;
9
+ /** sourceMapForSource. */
10
+ sourceMapForSource(callback: any): void;
11
+ sourceMapForSourceCallback: any;
12
+ loadSourceMaps(error: any): Promise<void>;
13
+ /** getSources. */
14
+ getSources(error: any): {
15
+ originalUrl: string;
16
+ sourceMapUrl: any;
17
+ }[];
18
+ /**
19
+ * @param {Error} error - Error to extract sources from.
20
+ * @returns {Array<{originalUrl: string, sourceMapUrl: string}>} Sources from error stack.
21
+ */
22
+ getSourcesFromError(error: Error): Array<{
23
+ originalUrl: string;
24
+ sourceMapUrl: string;
25
+ }>;
26
+ /** getSourcesFromScripts. */
27
+ getSourcesFromScripts(): {
28
+ originalUrl: string;
29
+ sourceMapUrl: any;
30
+ }[];
31
+ /** getMapURL. */
32
+ getMapURL(args?: {}): any;
33
+ /** includeMapURL. */
34
+ includeMapURL: (src: any) => any;
35
+ loadSourceMapForSource({ originalUrl, sourceMapUrl }: {
36
+ originalUrl: any;
37
+ sourceMapUrl: any;
38
+ }): Promise<void>;
39
+ /** loadUrl. */
40
+ loadUrl(url: any): HTMLAnchorElement;
41
+ /** loadXhr. */
42
+ loadXhr(xhr: any, url: any): Promise<any>;
43
+ /** parseStackTrace. */
44
+ parseStackTrace(stackTrace: any): string[];
45
+ /**
46
+ * @param {string} stackTrace - Raw stack trace string.
47
+ * @returns {Array<{filePath: string | null, fileString: string, methodName: string}>} Parsed trace data.
48
+ */
49
+ getStackTraceData(stackTrace: string): Array<{
50
+ filePath: string | null;
51
+ fileString: string;
52
+ methodName: string;
53
+ }>;
54
+ }
55
+ //# sourceMappingURL=source-maps-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-maps-loader.d.ts","sourceRoot":"/src/","sources":["source-maps-loader.js"],"names":[],"mappings":"AAgBA,uDAAuD;AACvD;IAGI,6BAAgC;IAChC,kBAAoB;IACpB,cAAmB;IAGrB,mCAAmC;IACnC,iDAEC;IADC,yCAAmD;IAGrD,0BAA0B;IAC1B,wCAEC;IADC,gCAA0C;IAG5C,0CAsBC;IAED,kBAAkB;IAClB;;;QAMC;IAED;;;OAGG;IACH,2BAHW,KAAK,GACH,KAAK,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAC,CAAC,CAuB9D;IAED,6BAA6B;IAC7B;;;QAcC;IAED,iBAAiB;IACjB,0BAYC;IAED,qBAAqB;IACrB,gBAAiB,QAAG,SAA4B;IAEhD;;;sBAmBC;IAED,eAAe;IACf,qCAMC;IAED,eAAe;IACf,0CAWC;IAED,uBAAuB;IACvB,2CAGC;IAED;;;OAGG;IACH,8BAHW,MAAM,GACJ,KAAK,CAAC;QAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAC,CAAC,CA0CpF;CACF"}
@@ -54,7 +54,10 @@ export default class SourceMapsLoader {
54
54
  sources = sources.concat(this.getSourcesFromError(error));
55
55
  return uniqunize(sources, (source) => source.originalUrl);
56
56
  }
57
- /** getSourcesFromError. */
57
+ /**
58
+ * @param {Error} error - Error to extract sources from.
59
+ * @returns {Array<{originalUrl: string, sourceMapUrl: string}>} Sources from error stack.
60
+ */
58
61
  getSourcesFromError(error) {
59
62
  const stack = stackTraceParser.parse(error.stack);
60
63
  const sources = [];
@@ -143,7 +146,10 @@ export default class SourceMapsLoader {
143
146
  return this.getStackTraceData(stackTrace)
144
147
  .map((traceData) => `at ${traceData.methodName} (${traceData.fileString})`);
145
148
  }
146
- /** getStackTraceData. */
149
+ /**
150
+ * @param {string} stackTrace - Raw stack trace string.
151
+ * @returns {Array<{filePath: string | null, fileString: string, methodName: string}>} Parsed trace data.
152
+ */
147
153
  getStackTraceData(stackTrace) {
148
154
  const stack = stackTraceParser.parse(stackTrace);
149
155
  const newSourceMap = [];
@@ -179,4 +185,4 @@ export default class SourceMapsLoader {
179
185
  return newSourceMap;
180
186
  }
181
187
  }
182
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLW1hcHMtbG9hZGVyLmpzIiwic291cmNlUm9vdCI6Ii9zcmMvIiwic291cmNlcyI6WyJzb3VyY2UtbWFwcy1sb2FkZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLGdCQUFnQixNQUFNLG1CQUFtQixDQUFBO0FBQ3JELE9BQU8sTUFBTSxNQUFNLGFBQWEsQ0FBQTtBQUNoQyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxZQUFZLENBQUE7QUFDNUMsT0FBTyxTQUFTLE1BQU0sV0FBVyxDQUFBO0FBRWpDLHNEQUFzRDtBQUN0RCxtQkFBbUI7QUFDbkIsSUFBSSxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNqQyxtQkFBbUI7SUFDbkIsaUJBQWlCLENBQUMsVUFBVSxDQUFDO1FBQzNCLG1CQUFtQixFQUFFLHNEQUFzRDtLQUM1RSxDQUFDLENBQUE7QUFDSixDQUFDO0FBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsRUFBQyxJQUFJLEVBQUUsNkJBQTZCLEVBQUMsQ0FBQyxDQUFBO0FBRWhFLHVEQUF1RDtBQUN2RCxNQUFNLENBQUMsT0FBTyxPQUFPLGdCQUFnQjtJQUNuQyxtQkFBbUI7SUFDbkI7UUFDRSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFBO1FBQ2hDLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFBO1FBQ3BCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFBO0lBQ3JCLENBQUM7SUFFRCxtQ0FBbUM7SUFDbkMsMkJBQTJCLENBQUMsUUFBUTtRQUNsQyxJQUFJLENBQUMsbUNBQW1DLEdBQUcsUUFBUSxDQUFBO0lBQ3JELENBQUM7SUFFRCwwQkFBMEI7SUFDMUIsa0JBQWtCLENBQUMsUUFBUTtRQUN6QixJQUFJLENBQUMsMEJBQTBCLEdBQUcsUUFBUSxDQUFBO0lBQzVDLENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYyxDQUFDLEtBQUs7UUFDeEIsSUFBSSxDQUFDLEtBQUs7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RUFBRSxFQUFFLENBQUMsQ0FBQTtnQkFDL0QsVUFBVSxHQUFHLEdBQUcsUUFBUSxJQUFJLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQTtnQkFFM0MsSUFBSSxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ3BCLFVBQVUsSUFBSSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQTtnQkFDckMsQ0FBQztZQUNILENBQUM7aUJBQU0sQ0FBQztnQkFDTixRQUFRLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQTtnQkFDckIsVUFBVSxHQUFHLEdBQUcsUUFBUSxJQUFJLEtBQUssQ0FBQyxVQUFVLEVBQUUsQ0FBQTtnQkFFOUMsSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQ2pCLFVBQVUsSUFBSSxJQUFJLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQTtnQkFDbEMsQ0FBQztZQUNILENBQUM7WUFFRCxZQUFZLENBQUMsSUFBSSxDQUFDO2dCQUNoQixRQUFRO2dCQUNSLFVBQVU7Z0JBQ1YsVUFBVSxFQUFFLEtBQUssQ0FBQyxVQUFVO2FBQzdCLENBQUMsQ0FBQTtRQUNKLENBQUM7UUFFRCxPQUFPLFlBQVksQ0FBQTtJQUNyQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBzdGFja1RyYWNlUGFyc2VyIGZyb20gXCJzdGFja3RyYWNlLXBhcnNlclwiXG5pbXBvcnQgTG9nZ2VyIGZyb20gXCIuL2xvZ2dlci5qc1wiXG5pbXBvcnQge1NvdXJjZU1hcENvbnN1bWVyfSBmcm9tIFwic291cmNlLW1hcFwiXG5pbXBvcnQgdW5pcXVuaXplIGZyb20gXCJ1bmlxdW5pemVcIlxuXG4vLyBTb21ldGltZXMgdGhpcyBuZWVkcyB0byBiZSBjYWxsZWQgYW5kIHNvbWV0aW1lcyBub3Rcbi8vIEB0cy1leHBlY3QtZXJyb3JcbmlmIChTb3VyY2VNYXBDb25zdW1lci5pbml0aWFsaXplKSB7XG4gIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgU291cmNlTWFwQ29uc3VtZXIuaW5pdGlhbGl6ZSh7XG4gICAgXCJsaWIvbWFwcGluZ3Mud2FzbVwiOiBcImh0dHBzOi8vdW5wa2cuY29tL3NvdXJjZS1tYXBAMC43LjQvbGliL21hcHBpbmdzLndhc21cIlxuICB9KVxufVxuXG5jb25zdCBsb2dnZXIgPSBuZXcgTG9nZ2VyKHtuYW1lOiBcIkFwaU1ha2VyIC8gU291cmNlTWFwc0xvYWRlclwifSlcblxuLyoqIExvYWRzIGFuZCByZXNvbHZlcyBzb3VyY2UgbWFwcyBmb3Igc3RhY2sgdHJhY2VzLiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU291cmNlTWFwc0xvYWRlciB7XG4gIC8qKiBDb25zdHJ1Y3Rvci4gKi9cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5pc0xvYWRpbmdTb3VyY2VNYXBzID0gZmFsc2VcbiAgICB0aGlzLnNvdXJjZU1hcHMgPSBbXVxuICAgIHRoaXMuc3JjTG9hZGVkID0ge31cbiAgfVxuXG4gIC8qKiBsb2FkU291cmNlTWFwc0ZvclNjcmlwdFRhZ3MuICovXG4gIGxvYWRTb3VyY2VNYXBzRm9yU2NyaXB0VGFncyhjYWxsYmFjaykge1xuICAgIHRoaXMubG9hZFNvdXJjZU1hcHNGb3JTY3JpcHRUYWdzQ2FsbGJhY2sgPSBjYWxsYmFja1xuICB9XG5cbiAgLyoqIHNvdXJjZU1hcEZvclNvdXJjZS4gKi9cbiAgc291cmNlTWFwRm9yU291cmNlKGNhbGxiYWNrKSB7XG4gICAgdGhpcy5zb3VyY2VNYXBGb3JTb3VyY2VDYWxsYmFjayA9IGNhbGxiYWNrXG4gIH1cblxuICBhc3luYyBsb2FkU291cmNlTWFwcyhlcnJvcikge1xuICAgIGlmICghZXJyb3IpIHRocm93IG5ldyBFcnJvcihcIk5vIGVycm9yIHdhcyBnaXZlbiB0byBTb3VyY2VNYXBzTG9hZGVyI2xvYWRTb3VyY2VNYXBzXCIpXG5cbiAgICB0aGlzLmlzTG9hZGluZ1NvdXJjZU1hcHMgPSB0cnVlXG5cbiAgICB0cnkge1xuICAgICAgY29uc3QgcHJvbWlzZXMgPSBbXVxuICAgICAgY29uc3Qgc291cmNlcyA9IHRoaXMuZ2V0U291cmNlcyhlcnJvcilcblxuICAgICAgZm9yKGNvbnN0IHNvdXJjZSBvZiBzb3VyY2VzKSB7XG4gICAgICAgIGlmIChzb3VyY2Uub3JpZ2luYWxVcmwgJiYgIXRoaXMuc3JjTG9hZGVkW3NvdXJjZS5vcmlnaW5hbFVybF0pIHtcbiAgICAgICAgICB0aGlzLnNyY0xvYWRlZFtzb3VyY2Uub3JpZ2luYWxVcmxdID0gdHJ1ZVxuXG4gICAgICAgICAgY29uc3QgcHJvbWlzZSA9IHRoaXMubG9hZFNvdXJjZU1hcEZvclNvdXJjZShzb3VyY2UpXG4gICAgICAgICAgcHJvbWlzZXMucHVzaChwcm9taXNlKVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGF3YWl0IFByb21pc2UuYWxsKHByb21pc2VzKVxuICAgIH0gZmluYWxseSB7XG4gICAgICB0aGlzLmlzTG9hZGluZ1NvdXJjZU1hcHMgPSBmYWxzZVxuICAgIH1cbiAgfVxuXG4gIC8qKiBnZXRTb3VyY2VzLiAqL1xuICBnZXRTb3VyY2VzKGVycm9yKSB7XG4gICAgbGV0IHNvdXJjZXMgPSB0aGlzLmdldFNvdXJjZXNGcm9tU2NyaXB0cygpXG5cbiAgICBpZiAoZXJyb3IpIHNvdXJjZXMgPSBzb3VyY2VzLmNvbmNhdCh0aGlzLmdldFNvdXJjZXNGcm9tRXJyb3IoZXJyb3IpKVxuXG4gICAgcmV0dXJuIHVuaXF1bml6ZShzb3VyY2VzLCAoc291cmNlKSA9PiBzb3VyY2Uub3JpZ2luYWxVcmwpXG4gIH1cblxuICAvKiogZ2V0U291cmNlc0Zyb21FcnJvci4gKi9cbiAgZ2V0U291cmNlc0Zyb21FcnJvcihlcnJvcikge1xuICAgIGNvbnN0IHN0YWNrID0gc3RhY2tUcmFjZVBhcnNlci5wYXJzZShlcnJvci5zdGFjaylcbiAgICBjb25zdCBzb3VyY2VzID0gW11cblxuICAgIGZvciAoY29uc3QgdHJhY2Ugb2Ygc3RhY2spIHtcbiAgICAgIGNvbnN0IGZpbGUgPSB0cmFjZS5maWxlXG5cbiAgICAgIGlmIChmaWxlICE9IFwiXFx1MDAzQ2Fub255bW91cz5cIikge1xuICAgICAgICBjb25zdCBzb3VyY2VNYXBVcmwgPSB0aGlzLmdldE1hcFVSTCh7c3JjOiBmaWxlfSlcblxuICAgICAgICBpZiAoc291cmNlTWFwVXJsKSB7XG4gICAgICAgICAgbG9nZ2VyLmRlYnVnKCgpID0+IGBGb3VuZCBzb3VyY2UgbWFwIGZyb20gZXJyb3I6ICR7c291cmNlTWFwVXJsfWApXG5cbiAgICAgICAgICBzb3VyY2VzLnB1c2goe29yaWdpbmFsVXJsOiBmaWxlLCBzb3VyY2VNYXBVcmx9KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxvZ2dlci5kZWJ1ZygoKSA9PiBgQ291ZG4ndCBnZXQgc291cmNlIG1hcCBmcm9tOiAke2ZpbGV9YClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBzb3VyY2VzXG4gIH1cblxuICAvKiogZ2V0U291cmNlc0Zyb21TY3JpcHRzLiAqL1xuICBnZXRTb3VyY2VzRnJvbVNjcmlwdHMoKSB7XG4gICAgY29uc3Qgc2NyaXB0cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCJzY3JpcHRcIilcbiAgICBjb25zdCBzb3VyY2VzID0gW11cblxuICAgIGZvciAoY29uc3Qgc2NyaXB0IG9mIEFycmF5LmZyb20oc2NyaXB0cykpIHtcbiAgICAgIGNvbnN0IHNvdXJjZU1hcFVybCA9IHRoaXMuZ2V0TWFwVVJMKHtzY3JpcHQsIHNyYzogc2NyaXB0LnNyY30pXG5cbiAgICAgIGlmIChzb3VyY2VNYXBVcmwpIHtcbiAgICAgICAgbG9nZ2VyLmRlYnVnKCgpID0+IGBGb3VuZCBzb3VyY2UgbWFwIGZyb20gc2NyaXB0OiAke3NvdXJjZU1hcFVybH1gKVxuICAgICAgICBzb3VyY2VzLnB1c2goe29yaWdpbmFsVXJsOiBzY3JpcHQuc3JjLCBzb3VyY2VNYXBVcmx9KVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBzb3VyY2VzXG4gIH1cblxuICAvKiogZ2V0TWFwVVJMLiAqL1xuICBnZXRNYXBVUkwoYXJncyA9IHt9KSB7XG4gICAgY29uc3Qge3NjcmlwdCwgc3JjfSA9IC8qKiBAdHlwZSB7YW55fSAqLyAoYXJncylcbiAgICBjb25zdCB1cmwgPSB0aGlzLmxvYWRVcmwoc3JjKVxuICAgIGNvbnN0IG9yaWdpbmFsVXJsID0gYCR7dXJsLm9yaWdpbn0ke3VybC5wYXRobmFtZX1gXG5cbiAgICBpZiAodGhpcy5zb3VyY2VNYXBGb3JTb3VyY2VDYWxsYmFjaykge1xuICAgICAgLy8gVXNlIGN1c3RvbSBjYWxsYmFjayB0byByZXNvbHZlIHdoaWNoIG1hcC1maWxlIHRvIGRvd25sb2FkXG4gICAgICByZXR1cm4gdGhpcy5zb3VyY2VNYXBGb3JTb3VyY2VDYWxsYmFjayh7b3JpZ2luYWxVcmwsIHNjcmlwdCwgc3JjLCB1cmx9KVxuICAgIH0gZWxzZSBpZiAodGhpcy5pbmNsdWRlTWFwVVJMKHNyYykpIHtcbiAgICAgIC8vIERlZmF1bHQgdG8gb3JpZ2luYWwgVVJMIHdpdGggJy5tYXAnIGFwcGVuZGVkXG4gICAgICByZXR1cm4gYCR7b3JpZ2luYWxVcmx9Lm1hcGBcbiAgICB9XG4gIH1cblxuICAvKiogaW5jbHVkZU1hcFVSTC4gKi9cbiAgaW5jbHVkZU1hcFVSTCA9IChzcmMpID0+IHNyYy5pbmNsdWRlcyhcIi9wYWNrcy9cIilcblxuICBhc3luYyBsb2FkU291cmNlTWFwRm9yU291cmNlKHtvcmlnaW5hbFVybCwgc291cmNlTWFwVXJsfSkge1xuICAgIGNvbnN0IHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpXG5cbiAgICB4aHIub3BlbihcIkdFVFwiLCBzb3VyY2VNYXBVcmwsIHRydWUpXG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5sb2FkWGhyKHhociwgc291cmNlTWFwVXJsKVxuICAgIH0gY2F0Y2gge1xuICAgICAgY29uc29sZS5sb2coYENvdWxkbid0IGxvYWQgc291cmNlIG1hcCBmcm9tOiAke3NvdXJjZU1hcFVybH06ICR7eGhyLnJlc3BvbnNlVGV4dH1gKVxuXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgY29uc3QgY29uc3VtZXIgPSBhd2FpdCBuZXcgU291cmNlTWFwQ29uc3VtZXIoeGhyLnJlc3BvbnNlVGV4dClcblxuICAgIGlmIChjb25zdW1lcikge1xuICAgICAgdGhpcy5zb3VyY2VNYXBzLnB1c2goe2NvbnN1bWVyLCBvcmlnaW5hbFVybH0pXG4gICAgfVxuICB9XG5cbiAgLyoqIGxvYWRVcmwuICovXG4gIGxvYWRVcmwodXJsKSB7XG4gICAgY29uc3QgcGFyc2VyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImFcIilcblxuICAgIHBhcnNlci5ocmVmID0gdXJsXG5cbiAgICByZXR1cm4gcGFyc2VyXG4gIH1cblxuICAvKiogbG9hZFhoci4gKi9cbiAgbG9hZFhocih4aHIsIHVybCkge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICB4aHIub25sb2FkID0gKCkgPT4ge1xuICAgICAgICBpZiAoeGhyLnN0YXR1cyA9PSAyMDApIHtcbiAgICAgICAgICByZXNvbHZlKClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZWplY3QobmV3IEVycm9yKGBIVFRQIHJlcXVlc3QgZmFpbGVkIHdpdGggJHt4aHIuc3RhdHVzfSBmb3IgJHt1cmx9YCkpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHhoci5zZW5kKClcbiAgICB9KVxuICB9XG5cbiAgLyoqIHBhcnNlU3RhY2tUcmFjZS4gKi9cbiAgcGFyc2VTdGFja1RyYWNlKHN0YWNrVHJhY2UpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRTdGFja1RyYWNlRGF0YShzdGFja1RyYWNlKVxuICAgICAgLm1hcCgodHJhY2VEYXRhKSA9PiBgYXQgJHt0cmFjZURhdGEubWV0aG9kTmFtZX0gKCR7dHJhY2VEYXRhLmZpbGVTdHJpbmd9KWApXG4gIH1cblxuICAvKiogZ2V0U3RhY2tUcmFjZURhdGEuICovXG4gIGdldFN0YWNrVHJhY2VEYXRhKHN0YWNrVHJhY2UpIHtcbiAgICBjb25zdCBzdGFjayA9IHN0YWNrVHJhY2VQYXJzZXIucGFyc2Uoc3RhY2tUcmFjZSlcbiAgICBjb25zdCBuZXdTb3VyY2VNYXAgPSBbXVxuXG4gICAgZm9yIChjb25zdCB0cmFjZSBvZiBzdGFjaykge1xuICAgICAgY29uc3Qgc291cmNlTWFwRGF0YSA9IHRoaXMuc291cmNlTWFwcy5maW5kKChzb3VyY2VNYXBEYXRhKSA9PiBzb3VyY2VNYXBEYXRhLm9yaWdpbmFsVXJsID09IHRyYWNlLmZpbGUpXG5cbiAgICAgIGxldCBmaWxlUGF0aCwgZmlsZVN0cmluZywgb3JpZ2luYWxcblxuICAgICAgaWYgKHNvdXJjZU1hcERhdGEpIHtcbiAgICAgICAgb3JpZ2luYWwgPSBzb3VyY2VNYXBEYXRhLmNvbnN1bWVyLm9yaWdpbmFsUG9zaXRpb25Gb3Ioe1xuICAgICAgICAgIGxpbmU6IHRyYWNlLmxpbmVOdW1iZXIsXG4gICAgICAgICAgY29sdW1uOiB0cmFjZS5jb2x1bW5cbiAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgaWYgKG9yaWdpbmFsICYmIG9yaWdpbmFsLnNvdXJjZSkge1xuICAgICAgICBmaWxlUGF0aCA9IG9yaWdpbmFsLnNvdXJjZS5yZXBsYWNlKC9ed2VicGFjazpcXC9cXC8oYXBwfClcXC8vLCBcIlwiKVxuICAgICAgICBmaWxlU3RyaW5nID0gYCR7ZmlsZVBhdGh9OiR7b3JpZ2luYWwubGluZX1gXG5cbiAgICAgICAgaWYgKG9yaWdpbmFsLmNvbHVtbikge1xuICAgICAgICAgIGZpbGVTdHJpbmcgKz0gYDoke29yaWdpbmFsLmNvbHVtbn1gXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZpbGVQYXRoID0gdHJhY2UuZmlsZVxuICAgICAgICBmaWxlU3RyaW5nID0gYCR7ZmlsZVBhdGh9OiR7dHJhY2UubGluZU51bWJlcn1gXG5cbiAgICAgICAgaWYgKHRyYWNlLmNvbHVtbikge1xuICAgICAgICAgIGZpbGVTdHJpbmcgKz0gYDoke3RyYWNlLmNvbHVtbn1gXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgbmV3U291cmNlTWFwLnB1c2goe1xuICAgICAgICBmaWxlUGF0aCxcbiAgICAgICAgZmlsZVN0cmluZyxcbiAgICAgICAgbWV0aG9kTmFtZTogdHJhY2UubWV0aG9kTmFtZVxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3U291cmNlTWFwXG4gIH1cbn1cbiJdfQ==
188
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic291cmNlLW1hcHMtbG9hZGVyLmpzIiwic291cmNlUm9vdCI6Ii9zcmMvIiwic291cmNlcyI6WyJzb3VyY2UtbWFwcy1sb2FkZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLGdCQUFnQixNQUFNLG1CQUFtQixDQUFBO0FBQ3JELE9BQU8sTUFBTSxNQUFNLGFBQWEsQ0FBQTtBQUNoQyxPQUFPLEVBQUMsaUJBQWlCLEVBQUMsTUFBTSxZQUFZLENBQUE7QUFDNUMsT0FBTyxTQUFTLE1BQU0sV0FBVyxDQUFBO0FBRWpDLHNEQUFzRDtBQUN0RCxtQkFBbUI7QUFDbkIsSUFBSSxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNqQyxtQkFBbUI7SUFDbkIsaUJBQWlCLENBQUMsVUFBVSxDQUFDO1FBQzNCLG1CQUFtQixFQUFFLHNEQUFzRDtLQUM1RSxDQUFDLENBQUE7QUFDSixDQUFDO0FBRUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsRUFBQyxJQUFJLEVBQUUsNkJBQTZCLEVBQUMsQ0FBQyxDQUFBO0FBRWhFLHVEQUF1RDtBQUN2RCxNQUFNLENBQUMsT0FBTyxPQUFPLGdCQUFnQjtJQUNuQyxtQkFBbUI7SUFDbkI7UUFDRSxJQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFBO1FBQ2hDLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFBO1FBQ3BCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFBO0lBQ3JCLENBQUM7SUFFRCxtQ0FBbUM7SUFDbkMsMkJBQTJCLENBQUMsUUFBUTtRQUNsQyxJQUFJLENBQUMsbUNBQW1DLEdBQUcsUUFBUSxDQUFBO0lBQ3JELENBQUM7SUFFRCwwQkFBMEI7SUFDMUIsa0JBQWtCLENBQUMsUUFBUTtRQUN6QixJQUFJLENBQUMsMEJBQTBCLEdBQUcsUUFBUSxDQUFBO0lBQzVDLENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYyxDQUFDLEtBQUs7UUFDeEIsSUFBSSxDQUFDLEtBQUs7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QUUsRUFBRSxDQUFDLENBQUE7Z0JBQy9ELFVBQVUsR0FBRyxHQUFHLFFBQVEsSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUE7Z0JBRTNDLElBQUksUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUNwQixVQUFVLElBQUksSUFBSSxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUE7Z0JBQ3JDLENBQUM7WUFDSCxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sUUFBUSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUE7Z0JBQ3JCLFVBQVUsR0FBRyxHQUFHLFFBQVEsSUFBSSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUE7Z0JBRTlDLElBQUksS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUNqQixVQUFVLElBQUksSUFBSSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUE7Z0JBQ2xDLENBQUM7WUFDSCxDQUFDO1lBRUQsWUFBWSxDQUFDLElBQUksQ0FBQztnQkFDaEIsUUFBUTtnQkFDUixVQUFVO2dCQUNWLFVBQVUsRUFBRSxLQUFLLENBQUMsVUFBVTthQUM3QixDQUFDLENBQUE7UUFDSixDQUFDO1FBRUQsT0FBTyxZQUFZLENBQUE7SUFDckIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgc3RhY2tUcmFjZVBhcnNlciBmcm9tIFwic3RhY2t0cmFjZS1wYXJzZXJcIlxuaW1wb3J0IExvZ2dlciBmcm9tIFwiLi9sb2dnZXIuanNcIlxuaW1wb3J0IHtTb3VyY2VNYXBDb25zdW1lcn0gZnJvbSBcInNvdXJjZS1tYXBcIlxuaW1wb3J0IHVuaXF1bml6ZSBmcm9tIFwidW5pcXVuaXplXCJcblxuLy8gU29tZXRpbWVzIHRoaXMgbmVlZHMgdG8gYmUgY2FsbGVkIGFuZCBzb21ldGltZXMgbm90XG4vLyBAdHMtZXhwZWN0LWVycm9yXG5pZiAoU291cmNlTWFwQ29uc3VtZXIuaW5pdGlhbGl6ZSkge1xuICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gIFNvdXJjZU1hcENvbnN1bWVyLmluaXRpYWxpemUoe1xuICAgIFwibGliL21hcHBpbmdzLndhc21cIjogXCJodHRwczovL3VucGtnLmNvbS9zb3VyY2UtbWFwQDAuNy40L2xpYi9tYXBwaW5ncy53YXNtXCJcbiAgfSlcbn1cblxuY29uc3QgbG9nZ2VyID0gbmV3IExvZ2dlcih7bmFtZTogXCJBcGlNYWtlciAvIFNvdXJjZU1hcHNMb2FkZXJcIn0pXG5cbi8qKiBMb2FkcyBhbmQgcmVzb2x2ZXMgc291cmNlIG1hcHMgZm9yIHN0YWNrIHRyYWNlcy4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNvdXJjZU1hcHNMb2FkZXIge1xuICAvKiogQ29uc3RydWN0b3IuICovXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuaXNMb2FkaW5nU291cmNlTWFwcyA9IGZhbHNlXG4gICAgdGhpcy5zb3VyY2VNYXBzID0gW11cbiAgICB0aGlzLnNyY0xvYWRlZCA9IHt9XG4gIH1cblxuICAvKiogbG9hZFNvdXJjZU1hcHNGb3JTY3JpcHRUYWdzLiAqL1xuICBsb2FkU291cmNlTWFwc0ZvclNjcmlwdFRhZ3MoY2FsbGJhY2spIHtcbiAgICB0aGlzLmxvYWRTb3VyY2VNYXBzRm9yU2NyaXB0VGFnc0NhbGxiYWNrID0gY2FsbGJhY2tcbiAgfVxuXG4gIC8qKiBzb3VyY2VNYXBGb3JTb3VyY2UuICovXG4gIHNvdXJjZU1hcEZvclNvdXJjZShjYWxsYmFjaykge1xuICAgIHRoaXMuc291cmNlTWFwRm9yU291cmNlQ2FsbGJhY2sgPSBjYWxsYmFja1xuICB9XG5cbiAgYXN5bmMgbG9hZFNvdXJjZU1hcHMoZXJyb3IpIHtcbiAgICBpZiAoIWVycm9yKSB0aHJvdyBuZXcgRXJyb3IoXCJObyBlcnJvciB3YXMgZ2l2ZW4gdG8gU291cmNlTWFwc0xvYWRlciNsb2FkU291cmNlTWFwc1wiKVxuXG4gICAgdGhpcy5pc0xvYWRpbmdTb3VyY2VNYXBzID0gdHJ1ZVxuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHByb21pc2VzID0gW11cbiAgICAgIGNvbnN0IHNvdXJjZXMgPSB0aGlzLmdldFNvdXJjZXMoZXJyb3IpXG5cbiAgICAgIGZvcihjb25zdCBzb3VyY2Ugb2Ygc291cmNlcykge1xuICAgICAgICBpZiAoc291cmNlLm9yaWdpbmFsVXJsICYmICF0aGlzLnNyY0xvYWRlZFtzb3VyY2Uub3JpZ2luYWxVcmxdKSB7XG4gICAgICAgICAgdGhpcy5zcmNMb2FkZWRbc291cmNlLm9yaWdpbmFsVXJsXSA9IHRydWVcblxuICAgICAgICAgIGNvbnN0IHByb21pc2UgPSB0aGlzLmxvYWRTb3VyY2VNYXBGb3JTb3VyY2Uoc291cmNlKVxuICAgICAgICAgIHByb21pc2VzLnB1c2gocHJvbWlzZSlcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBhd2FpdCBQcm9taXNlLmFsbChwcm9taXNlcylcbiAgICB9IGZpbmFsbHkge1xuICAgICAgdGhpcy5pc0xvYWRpbmdTb3VyY2VNYXBzID0gZmFsc2VcbiAgICB9XG4gIH1cblxuICAvKiogZ2V0U291cmNlcy4gKi9cbiAgZ2V0U291cmNlcyhlcnJvcikge1xuICAgIGxldCBzb3VyY2VzID0gdGhpcy5nZXRTb3VyY2VzRnJvbVNjcmlwdHMoKVxuXG4gICAgaWYgKGVycm9yKSBzb3VyY2VzID0gc291cmNlcy5jb25jYXQodGhpcy5nZXRTb3VyY2VzRnJvbUVycm9yKGVycm9yKSlcblxuICAgIHJldHVybiB1bmlxdW5pemUoc291cmNlcywgKHNvdXJjZSkgPT4gc291cmNlLm9yaWdpbmFsVXJsKVxuICB9XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB7RXJyb3J9IGVycm9yIC0gRXJyb3IgdG8gZXh0cmFjdCBzb3VyY2VzIGZyb20uXG4gICAqIEByZXR1cm5zIHtBcnJheTx7b3JpZ2luYWxVcmw6IHN0cmluZywgc291cmNlTWFwVXJsOiBzdHJpbmd9Pn0gU291cmNlcyBmcm9tIGVycm9yIHN0YWNrLlxuICAgKi9cbiAgZ2V0U291cmNlc0Zyb21FcnJvcihlcnJvcikge1xuICAgIGNvbnN0IHN0YWNrID0gc3RhY2tUcmFjZVBhcnNlci5wYXJzZShlcnJvci5zdGFjaylcbiAgICBjb25zdCBzb3VyY2VzID0gW11cblxuICAgIGZvciAoY29uc3QgdHJhY2Ugb2Ygc3RhY2spIHtcbiAgICAgIGNvbnN0IGZpbGUgPSB0cmFjZS5maWxlXG5cbiAgICAgIGlmIChmaWxlICE9IFwiXFx1MDAzQ2Fub255bW91cz5cIikge1xuICAgICAgICBjb25zdCBzb3VyY2VNYXBVcmwgPSB0aGlzLmdldE1hcFVSTCh7c3JjOiBmaWxlfSlcblxuICAgICAgICBpZiAoc291cmNlTWFwVXJsKSB7XG4gICAgICAgICAgbG9nZ2VyLmRlYnVnKCgpID0+IGBGb3VuZCBzb3VyY2UgbWFwIGZyb20gZXJyb3I6ICR7c291cmNlTWFwVXJsfWApXG5cbiAgICAgICAgICBzb3VyY2VzLnB1c2goe29yaWdpbmFsVXJsOiBmaWxlLCBzb3VyY2VNYXBVcmx9KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxvZ2dlci5kZWJ1ZygoKSA9PiBgQ291ZG4ndCBnZXQgc291cmNlIG1hcCBmcm9tOiAke2ZpbGV9YClcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBzb3VyY2VzXG4gIH1cblxuICAvKiogZ2V0U291cmNlc0Zyb21TY3JpcHRzLiAqL1xuICBnZXRTb3VyY2VzRnJvbVNjcmlwdHMoKSB7XG4gICAgY29uc3Qgc2NyaXB0cyA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXCJzY3JpcHRcIilcbiAgICBjb25zdCBzb3VyY2VzID0gW11cblxuICAgIGZvciAoY29uc3Qgc2NyaXB0IG9mIEFycmF5LmZyb20oc2NyaXB0cykpIHtcbiAgICAgIGNvbnN0IHNvdXJjZU1hcFVybCA9IHRoaXMuZ2V0TWFwVVJMKHtzY3JpcHQsIHNyYzogc2NyaXB0LnNyY30pXG5cbiAgICAgIGlmIChzb3VyY2VNYXBVcmwpIHtcbiAgICAgICAgbG9nZ2VyLmRlYnVnKCgpID0+IGBGb3VuZCBzb3VyY2UgbWFwIGZyb20gc2NyaXB0OiAke3NvdXJjZU1hcFVybH1gKVxuICAgICAgICBzb3VyY2VzLnB1c2goe29yaWdpbmFsVXJsOiBzY3JpcHQuc3JjLCBzb3VyY2VNYXBVcmx9KVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBzb3VyY2VzXG4gIH1cblxuICAvKiogZ2V0TWFwVVJMLiAqL1xuICBnZXRNYXBVUkwoYXJncyA9IHt9KSB7XG4gICAgY29uc3Qge3NjcmlwdCwgc3JjfSA9IC8qKiBAdHlwZSB7YW55fSAqLyAoYXJncylcbiAgICBjb25zdCB1cmwgPSB0aGlzLmxvYWRVcmwoc3JjKVxuICAgIGNvbnN0IG9yaWdpbmFsVXJsID0gYCR7dXJsLm9yaWdpbn0ke3VybC5wYXRobmFtZX1gXG5cbiAgICBpZiAodGhpcy5zb3VyY2VNYXBGb3JTb3VyY2VDYWxsYmFjaykge1xuICAgICAgLy8gVXNlIGN1c3RvbSBjYWxsYmFjayB0byByZXNvbHZlIHdoaWNoIG1hcC1maWxlIHRvIGRvd25sb2FkXG4gICAgICByZXR1cm4gdGhpcy5zb3VyY2VNYXBGb3JTb3VyY2VDYWxsYmFjayh7b3JpZ2luYWxVcmwsIHNjcmlwdCwgc3JjLCB1cmx9KVxuICAgIH0gZWxzZSBpZiAodGhpcy5pbmNsdWRlTWFwVVJMKHNyYykpIHtcbiAgICAgIC8vIERlZmF1bHQgdG8gb3JpZ2luYWwgVVJMIHdpdGggJy5tYXAnIGFwcGVuZGVkXG4gICAgICByZXR1cm4gYCR7b3JpZ2luYWxVcmx9Lm1hcGBcbiAgICB9XG4gIH1cblxuICAvKiogaW5jbHVkZU1hcFVSTC4gKi9cbiAgaW5jbHVkZU1hcFVSTCA9IChzcmMpID0+IHNyYy5pbmNsdWRlcyhcIi9wYWNrcy9cIilcblxuICBhc3luYyBsb2FkU291cmNlTWFwRm9yU291cmNlKHtvcmlnaW5hbFVybCwgc291cmNlTWFwVXJsfSkge1xuICAgIGNvbnN0IHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpXG5cbiAgICB4aHIub3BlbihcIkdFVFwiLCBzb3VyY2VNYXBVcmwsIHRydWUpXG5cbiAgICB0cnkge1xuICAgICAgYXdhaXQgdGhpcy5sb2FkWGhyKHhociwgc291cmNlTWFwVXJsKVxuICAgIH0gY2F0Y2gge1xuICAgICAgY29uc29sZS5sb2coYENvdWxkbid0IGxvYWQgc291cmNlIG1hcCBmcm9tOiAke3NvdXJjZU1hcFVybH06ICR7eGhyLnJlc3BvbnNlVGV4dH1gKVxuXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgY29uc3QgY29uc3VtZXIgPSBhd2FpdCBuZXcgU291cmNlTWFwQ29uc3VtZXIoeGhyLnJlc3BvbnNlVGV4dClcblxuICAgIGlmIChjb25zdW1lcikge1xuICAgICAgdGhpcy5zb3VyY2VNYXBzLnB1c2goe2NvbnN1bWVyLCBvcmlnaW5hbFVybH0pXG4gICAgfVxuICB9XG5cbiAgLyoqIGxvYWRVcmwuICovXG4gIGxvYWRVcmwodXJsKSB7XG4gICAgY29uc3QgcGFyc2VyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImFcIilcblxuICAgIHBhcnNlci5ocmVmID0gdXJsXG5cbiAgICByZXR1cm4gcGFyc2VyXG4gIH1cblxuICAvKiogbG9hZFhoci4gKi9cbiAgbG9hZFhocih4aHIsIHVybCkge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICB4aHIub25sb2FkID0gKCkgPT4ge1xuICAgICAgICBpZiAoeGhyLnN0YXR1cyA9PSAyMDApIHtcbiAgICAgICAgICByZXNvbHZlKClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZWplY3QobmV3IEVycm9yKGBIVFRQIHJlcXVlc3QgZmFpbGVkIHdpdGggJHt4aHIuc3RhdHVzfSBmb3IgJHt1cmx9YCkpXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHhoci5zZW5kKClcbiAgICB9KVxuICB9XG5cbiAgLyoqIHBhcnNlU3RhY2tUcmFjZS4gKi9cbiAgcGFyc2VTdGFja1RyYWNlKHN0YWNrVHJhY2UpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRTdGFja1RyYWNlRGF0YShzdGFja1RyYWNlKVxuICAgICAgLm1hcCgodHJhY2VEYXRhKSA9PiBgYXQgJHt0cmFjZURhdGEubWV0aG9kTmFtZX0gKCR7dHJhY2VEYXRhLmZpbGVTdHJpbmd9KWApXG4gIH1cblxuICAvKipcbiAgICogQHBhcmFtIHtzdHJpbmd9IHN0YWNrVHJhY2UgLSBSYXcgc3RhY2sgdHJhY2Ugc3RyaW5nLlxuICAgKiBAcmV0dXJucyB7QXJyYXk8e2ZpbGVQYXRoOiBzdHJpbmcgfCBudWxsLCBmaWxlU3RyaW5nOiBzdHJpbmcsIG1ldGhvZE5hbWU6IHN0cmluZ30+fSBQYXJzZWQgdHJhY2UgZGF0YS5cbiAgICovXG4gIGdldFN0YWNrVHJhY2VEYXRhKHN0YWNrVHJhY2UpIHtcbiAgICBjb25zdCBzdGFjayA9IHN0YWNrVHJhY2VQYXJzZXIucGFyc2Uoc3RhY2tUcmFjZSlcbiAgICBjb25zdCBuZXdTb3VyY2VNYXAgPSBbXVxuXG4gICAgZm9yIChjb25zdCB0cmFjZSBvZiBzdGFjaykge1xuICAgICAgY29uc3Qgc291cmNlTWFwRGF0YSA9IHRoaXMuc291cmNlTWFwcy5maW5kKChzb3VyY2VNYXBEYXRhKSA9PiBzb3VyY2VNYXBEYXRhLm9yaWdpbmFsVXJsID09IHRyYWNlLmZpbGUpXG5cbiAgICAgIGxldCBmaWxlUGF0aCwgZmlsZVN0cmluZywgb3JpZ2luYWxcblxuICAgICAgaWYgKHNvdXJjZU1hcERhdGEpIHtcbiAgICAgICAgb3JpZ2luYWwgPSBzb3VyY2VNYXBEYXRhLmNvbnN1bWVyLm9yaWdpbmFsUG9zaXRpb25Gb3Ioe1xuICAgICAgICAgIGxpbmU6IHRyYWNlLmxpbmVOdW1iZXIsXG4gICAgICAgICAgY29sdW1uOiB0cmFjZS5jb2x1bW5cbiAgICAgICAgfSlcbiAgICAgIH1cblxuICAgICAgaWYgKG9yaWdpbmFsICYmIG9yaWdpbmFsLnNvdXJjZSkge1xuICAgICAgICBmaWxlUGF0aCA9IG9yaWdpbmFsLnNvdXJjZS5yZXBsYWNlKC9ed2VicGFjazpcXC9cXC8oYXBwfClcXC8vLCBcIlwiKVxuICAgICAgICBmaWxlU3RyaW5nID0gYCR7ZmlsZVBhdGh9OiR7b3JpZ2luYWwubGluZX1gXG5cbiAgICAgICAgaWYgKG9yaWdpbmFsLmNvbHVtbikge1xuICAgICAgICAgIGZpbGVTdHJpbmcgKz0gYDoke29yaWdpbmFsLmNvbHVtbn1gXG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGZpbGVQYXRoID0gdHJhY2UuZmlsZVxuICAgICAgICBmaWxlU3RyaW5nID0gYCR7ZmlsZVBhdGh9OiR7dHJhY2UubGluZU51bWJlcn1gXG5cbiAgICAgICAgaWYgKHRyYWNlLmNvbHVtbikge1xuICAgICAgICAgIGZpbGVTdHJpbmcgKz0gYDoke3RyYWNlLmNvbHVtbn1gXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgbmV3U291cmNlTWFwLnB1c2goe1xuICAgICAgICBmaWxlUGF0aCxcbiAgICAgICAgZmlsZVN0cmluZyxcbiAgICAgICAgbWV0aG9kTmFtZTogdHJhY2UubWV0aG9kTmFtZVxuICAgICAgfSlcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3U291cmNlTWFwXG4gIH1cbn1cbiJdfQ==
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kaspernj/api-maker",
3
3
  "type": "module",
4
- "version": "1.0.2138",
4
+ "version": "1.0.2139",
5
5
  "description": "My new module",
6
6
  "files": [
7
7
  "build/**"