@appium/support 2.57.4 → 2.59.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/build/lib/console.d.ts +110 -0
  2. package/build/lib/console.d.ts.map +1 -0
  3. package/build/lib/console.js +113 -0
  4. package/build/lib/env.d.ts.map +1 -1
  5. package/build/lib/env.js +1 -1
  6. package/build/lib/fs.d.ts.map +1 -1
  7. package/build/lib/fs.js +1 -1
  8. package/build/lib/image-util.d.ts.map +1 -1
  9. package/build/lib/image-util.js +1 -1
  10. package/build/lib/index.d.ts +3 -1
  11. package/build/lib/index.js +8 -3
  12. package/build/lib/log-internal.d.ts.map +1 -1
  13. package/build/lib/log-internal.js +1 -1
  14. package/build/lib/logger.d.ts +1 -1
  15. package/build/lib/logger.d.ts.map +1 -1
  16. package/build/lib/logger.js +1 -1
  17. package/build/lib/logging.d.ts +11 -4
  18. package/build/lib/logging.d.ts.map +1 -1
  19. package/build/lib/logging.js +7 -6
  20. package/build/lib/mjpeg.d.ts.map +1 -1
  21. package/build/lib/mjpeg.js +1 -1
  22. package/build/lib/mkdirp.js +1 -1
  23. package/build/lib/net.d.ts +5 -2
  24. package/build/lib/net.d.ts.map +1 -1
  25. package/build/lib/net.js +1 -1
  26. package/build/lib/node.d.ts +14 -0
  27. package/build/lib/node.d.ts.map +1 -1
  28. package/build/lib/node.js +22 -1
  29. package/build/lib/npm.d.ts.map +1 -1
  30. package/build/lib/npm.js +1 -1
  31. package/build/lib/plist.d.ts +1 -1
  32. package/build/lib/plist.d.ts.map +1 -1
  33. package/build/lib/plist.js +1 -1
  34. package/build/lib/process.d.ts.map +1 -1
  35. package/build/lib/process.js +1 -1
  36. package/build/lib/system.js +1 -1
  37. package/build/lib/tempdir.d.ts.map +1 -1
  38. package/build/lib/tempdir.js +1 -1
  39. package/build/lib/timing.d.ts.map +1 -1
  40. package/build/lib/timing.js +1 -1
  41. package/build/lib/util.d.ts +19 -2
  42. package/build/lib/util.d.ts.map +1 -1
  43. package/build/lib/util.js +3 -7
  44. package/build/lib/zip.d.ts +5 -5
  45. package/build/lib/zip.d.ts.map +1 -1
  46. package/build/lib/zip.js +2 -2
  47. package/build/tsconfig.tsbuildinfo +1 -1
  48. package/lib/console.js +173 -0
  49. package/lib/env.js +12 -14
  50. package/lib/fs.js +87 -62
  51. package/lib/image-util.js +50 -32
  52. package/lib/index.js +39 -8
  53. package/lib/log-internal.js +16 -11
  54. package/lib/logger.js +1 -1
  55. package/lib/logging.js +32 -30
  56. package/lib/mjpeg.js +32 -27
  57. package/lib/mkdirp.js +3 -3
  58. package/lib/net.js +60 -52
  59. package/lib/node.js +50 -16
  60. package/lib/npm.js +50 -47
  61. package/lib/plist.js +34 -18
  62. package/lib/process.js +8 -6
  63. package/lib/system.js +8 -8
  64. package/lib/tempdir.js +14 -9
  65. package/lib/timing.js +12 -15
  66. package/lib/util.js +121 -72
  67. package/lib/zip.js +88 -92
  68. package/package.json +11 -16
@@ -0,0 +1,110 @@
1
+ /// <reference types="node" />
2
+ /**
3
+ * A particular console/logging class for Appium's CLI.
4
+ *
5
+ * - By default, uses some fancy symbols
6
+ * - Writes to `STDERR`, generally.
7
+ * - In "JSON mode", `STDERR` is squelched. Use {@linkcode Console.json} to write the JSON.
8
+ *
9
+ * DO NOT extend this to do anything other than what it already does. Download a library or something.
10
+ */
11
+ export class CliConsole {
12
+ /**
13
+ * @type {Record<keyof typeof symbols,keyof Extract<import('@colors/colors').Color, 'string'>>}
14
+ */
15
+ static symbolToColor: Record<keyof typeof symbols, keyof Extract<import('@colors/colors').Color, 'string'>>;
16
+ /**
17
+ *
18
+ * @param {ConsoleOpts} opts
19
+ */
20
+ constructor({ jsonMode, useSymbols, useColor }?: ConsoleOpts);
21
+ /**
22
+ * Wraps a message string in breathtaking fanciness
23
+ *
24
+ * Returns `undefined` if `msg` is `undefined`.
25
+ * @param {string} [msg] - Message to decorate, if anything
26
+ * @param {keyof typeof CliConsole['symbolToColor']} [symbol] - Symbol to use
27
+ * @returns {string|undefined}
28
+ */
29
+ decorate(msg?: string | undefined, symbol?: "error" | "info" | "success" | "warning" | undefined): string | undefined;
30
+ /**
31
+ * Writes to `STDOUT`. Must be stringifyable.
32
+ *
33
+ * You probably don't want to call this more than once before exiting (since that will output invalid JSON).
34
+ * @param {import('type-fest').JsonValue} value
35
+ */
36
+ json(value: import('type-fest').JsonValue): void;
37
+ /**
38
+ * General logging function.
39
+ * @param {string} [message]
40
+ * @param {...any} args
41
+ */
42
+ log(message?: string | undefined, ...args: any[]): void;
43
+ /**
44
+ * A "success" message
45
+ * @param {string} [message]
46
+ * @param {...any} args
47
+ */
48
+ ok(message?: string | undefined, ...args: any[]): void;
49
+ /**
50
+ * Alias for {@linkcode Console.log}
51
+ * @param {string} [message]
52
+ * @param {...any} args
53
+ */
54
+ debug(message?: string | undefined, ...args: any[]): void;
55
+ /**
56
+ * Wraps {@link console.dir}
57
+ * @param {any} item
58
+ * @param {import('util').InspectOptions} [opts]
59
+ */
60
+ dump(item: any, opts?: import("util").InspectOptions | undefined): void;
61
+ /**
62
+ * An "info" message
63
+ * @param {string} [message]
64
+ * @param {...any} args
65
+ */
66
+ info(message?: string | undefined, ...args: any[]): void;
67
+ /**
68
+ * A "warning" message
69
+ * @param {string} [message]
70
+ * @param {...any} args
71
+ */
72
+ warn(message?: string | undefined, ...args: any[]): void;
73
+ /**
74
+ * An "error" message
75
+ * @param {string} [message]
76
+ * @param {...any} args
77
+ */
78
+ error(message?: string | undefined, ...args: any[]): void;
79
+ #private;
80
+ }
81
+ /**
82
+ * Options for {@linkcode CliConsole}.
83
+ *
84
+ * @typedef ConsoleOpts
85
+ * @property {boolean} [jsonMode] - If _truthy_, supress all output except JSON (use {@linkcode CliConsole#json}), which writes to `STDOUT`.
86
+ * @property {boolean} [useSymbols] - If _falsy_, do not use fancy symbols.
87
+ * @property {boolean} [useColor] - If _falsy_, do not use color output. If _truthy_, forces color output. By default, checks terminal/TTY for support via pkg `supports-color`. Ignored if `useSymbols` is `false`.
88
+ * @see https://npm.im/supports-color
89
+ */
90
+ export const console: CliConsole;
91
+ export { symbols };
92
+ /**
93
+ * Options for {@linkcode CliConsole }.
94
+ */
95
+ export type ConsoleOpts = {
96
+ /**
97
+ * - If _truthy_, supress all output except JSON (use {@linkcode CliConsolejson }), which writes to `STDOUT`.
98
+ */
99
+ jsonMode?: boolean | undefined;
100
+ /**
101
+ * - If _falsy_, do not use fancy symbols.
102
+ */
103
+ useSymbols?: boolean | undefined;
104
+ /**
105
+ * - If _falsy_, do not use color output. If _truthy_, forces color output. By default, checks terminal/TTY for support via pkg `supports-color`. Ignored if `useSymbols` is `false`.
106
+ */
107
+ useColor?: boolean | undefined;
108
+ };
109
+ import symbols from "log-symbols";
110
+ //# sourceMappingURL=console.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"console.d.ts","sourceRoot":"","sources":["../../lib/console.js"],"names":[],"mappings":";AAiBA;;;;;;;;GAQG;AACH;IAmBE;;OAEG;IACH,sBAFU,OAAO,MAAM,cAAc,EAAC,MAAM,QAAQ,OAAO,gBAAgB,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAO5F;IAEF;;;OAGG;IACH,iDAFW,WAAW,EAMrB;IAED;;;;;;;OAOG;IACH,mGAFa,MAAM,GAAC,SAAS,CAc5B;IAED;;;;;OAKG;IACH,YAFW,OAAO,WAAW,EAAE,SAAS,QAIvC;IAED;;;;OAIG;IACH,2CAFc,GAAG,UAIhB;IAED;;;;OAIG;IACH,0CAFc,GAAG,UAIhB;IAED;;;;OAIG;IACH,6CAFc,GAAG,UAIhB;IAED;;;;OAIG;IACH,WAHW,GAAG,0DAKb;IAED;;;;OAIG;IACH,4CAFc,GAAG,UAIhB;IAED;;;;OAIG;IACH,4CAFc,GAAG,UAIhB;IAED;;;;OAIG;IACH,6CAFc,GAAG,UAIhB;;CACF;AAED;;;;;;;;GAQG;AAEH,iCAAwC"}
@@ -0,0 +1,113 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.console = exports.CliConsole = void 0;
9
+ Object.defineProperty(exports, "symbols", {
10
+ enumerable: true,
11
+ get: function () {
12
+ return _logSymbols.default;
13
+ }
14
+ });
15
+
16
+ require("source-map-support/register");
17
+
18
+ var _lodash = _interopRequireDefault(require("lodash"));
19
+
20
+ var _supportsColor = require("supports-color");
21
+
22
+ var _console = require("console");
23
+
24
+ require("@colors/colors");
25
+
26
+ var _logSymbols = _interopRequireDefault(require("log-symbols"));
27
+
28
+ var _stream = require("stream");
29
+
30
+ class NullWritable extends _stream.Writable {
31
+ _write(chunk, encoding, callback) {
32
+ setImmediate(callback);
33
+ }
34
+
35
+ }
36
+
37
+ class CliConsole {
38
+ #console;
39
+ #useSymbols;
40
+ #useColor;
41
+ static symbolToColor = {
42
+ success: 'green',
43
+ info: 'cyan',
44
+ warning: 'yellow',
45
+ error: 'red'
46
+ };
47
+
48
+ constructor({
49
+ jsonMode = false,
50
+ useSymbols = true,
51
+ useColor
52
+ } = {}) {
53
+ this.#console = new _console.Console(process.stdout, jsonMode ? new NullWritable() : process.stderr);
54
+ this.#useSymbols = Boolean(useSymbols);
55
+ this.#useColor = Boolean(useColor !== null && useColor !== void 0 ? useColor : (0, _supportsColor.supportsColor)(process.stderr));
56
+ }
57
+
58
+ decorate(msg, symbol) {
59
+ if (_lodash.default.isString(msg)) {
60
+ let newMsg = msg;
61
+
62
+ if (_lodash.default.isString(symbol) && this.#useSymbols) {
63
+ newMsg = `${_logSymbols.default[symbol]} ${newMsg}`;
64
+
65
+ if (this.#useColor) {
66
+ newMsg = newMsg[CliConsole.symbolToColor[symbol]];
67
+ }
68
+ }
69
+
70
+ return newMsg;
71
+ }
72
+
73
+ return msg;
74
+ }
75
+
76
+ json(value) {
77
+ this.#console.log(JSON.stringify(value));
78
+ }
79
+
80
+ log(message, ...args) {
81
+ this.#console.error(message, ...args);
82
+ }
83
+
84
+ ok(message, ...args) {
85
+ this.#console.error(this.decorate(message, 'success'), ...args);
86
+ }
87
+
88
+ debug(message, ...args) {
89
+ this.log(message, ...args);
90
+ }
91
+
92
+ dump(item, opts) {
93
+ this.#console.dir(item, opts);
94
+ }
95
+
96
+ info(message, ...args) {
97
+ this.log(this.decorate(message, 'info'), ...args);
98
+ }
99
+
100
+ warn(message, ...args) {
101
+ this.log(this.decorate(message, 'warning'), ...args);
102
+ }
103
+
104
+ error(message, ...args) {
105
+ this.log(this.decorate(message, 'error'), ...args);
106
+ }
107
+
108
+ }
109
+
110
+ exports.CliConsole = CliConsole;
111
+ const console = new CliConsole();
112
+ exports.console = console;
113
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJOdWxsV3JpdGFibGUiLCJXcml0YWJsZSIsIl93cml0ZSIsImNodW5rIiwiZW5jb2RpbmciLCJjYWxsYmFjayIsInNldEltbWVkaWF0ZSIsIkNsaUNvbnNvbGUiLCJjb25zb2xlIiwidXNlU3ltYm9scyIsInVzZUNvbG9yIiwic3ltYm9sVG9Db2xvciIsInN1Y2Nlc3MiLCJpbmZvIiwid2FybmluZyIsImVycm9yIiwiY29uc3RydWN0b3IiLCJqc29uTW9kZSIsIk5vZGVDb25zb2xlIiwicHJvY2VzcyIsInN0ZG91dCIsInN0ZGVyciIsIkJvb2xlYW4iLCJzdXBwb3J0c0NvbG9yIiwiZGVjb3JhdGUiLCJtc2ciLCJzeW1ib2wiLCJfIiwiaXNTdHJpbmciLCJuZXdNc2ciLCJzeW1ib2xzIiwianNvbiIsInZhbHVlIiwibG9nIiwiSlNPTiIsInN0cmluZ2lmeSIsIm1lc3NhZ2UiLCJhcmdzIiwib2siLCJkZWJ1ZyIsImR1bXAiLCJpdGVtIiwib3B0cyIsImRpciIsIndhcm4iXSwic291cmNlcyI6WyIuLi8uLi9saWIvY29uc29sZS5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHtzdXBwb3J0c0NvbG9yfSBmcm9tICdzdXBwb3J0cy1jb2xvcic7XG5pbXBvcnQge0NvbnNvbGUgYXMgTm9kZUNvbnNvbGV9IGZyb20gJ2NvbnNvbGUnO1xuaW1wb3J0ICdAY29sb3JzL2NvbG9ycyc7XG5pbXBvcnQgc3ltYm9scyBmcm9tICdsb2ctc3ltYm9scyc7XG5pbXBvcnQge1dyaXRhYmxlfSBmcm9tICdzdHJlYW0nO1xuXG4vKipcbiAqIFN0cmVhbSB0byBub3doZXJlLiBVc2VkIHdoZW4gd2Ugd2FudCB0byBkaXNhYmxlIGFueSBvdXRwdXQgb3RoZXIgdGhhbiBKU09OIG91dHB1dC5cbiAqL1xuY2xhc3MgTnVsbFdyaXRhYmxlIGV4dGVuZHMgV3JpdGFibGUge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvbWlzZS9wcmVmZXItYXdhaXQtdG8tY2FsbGJhY2tzXG4gIF93cml0ZShjaHVuaywgZW5jb2RpbmcsIGNhbGxiYWNrKSB7XG4gICAgc2V0SW1tZWRpYXRlKGNhbGxiYWNrKTtcbiAgfVxufVxuXG4vKipcbiAqIEEgcGFydGljdWxhciBjb25zb2xlL2xvZ2dpbmcgY2xhc3MgZm9yIEFwcGl1bSdzIENMSS5cbiAqXG4gKiAtIEJ5IGRlZmF1bHQsIHVzZXMgc29tZSBmYW5jeSBzeW1ib2xzXG4gKiAtIFdyaXRlcyB0byBgU1RERVJSYCwgZ2VuZXJhbGx5LlxuICogLSBJbiBcIkpTT04gbW9kZVwiLCBgU1RERVJSYCBpcyBzcXVlbGNoZWQuIFVzZSB7QGxpbmtjb2RlIENvbnNvbGUuanNvbn0gdG8gd3JpdGUgdGhlIEpTT04uXG4gKlxuICogRE8gTk9UIGV4dGVuZCB0aGlzIHRvIGRvIGFueXRoaW5nIG90aGVyIHRoYW4gd2hhdCBpdCBhbHJlYWR5IGRvZXMuIERvd25sb2FkIGEgbGlicmFyeSBvciBzb21ldGhpbmcuXG4gKi9cbmV4cG9ydCBjbGFzcyBDbGlDb25zb2xlIHtcbiAgLyoqXG4gICAqIEludGVybmFsIGNvbnNvbGVcbiAgICogQHR5cGUge2dsb2JhbFRoaXMuQ29uc29sZX1cbiAgICovXG4gICNjb25zb2xlO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIG9yIG5vdCB0byB1c2UgZmFuY3kgc3ltYm9scyB3aGVuIGxvZ2dpbmcuXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKlxuICAgKi9cbiAgI3VzZVN5bWJvbHM7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgb3Igbm90IHRvIHVzZSBjb2xvci5cbiAgICovXG4gICN1c2VDb2xvcjtcblxuICAvKipcbiAgICogQHR5cGUge1JlY29yZDxrZXlvZiB0eXBlb2Ygc3ltYm9scyxrZXlvZiBFeHRyYWN0PGltcG9ydCgnQGNvbG9ycy9jb2xvcnMnKS5Db2xvciwgJ3N0cmluZyc+Pn1cbiAgICovXG4gIHN0YXRpYyBzeW1ib2xUb0NvbG9yID0ge1xuICAgIHN1Y2Nlc3M6ICdncmVlbicsXG4gICAgaW5mbzogJ2N5YW4nLFxuICAgIHdhcm5pbmc6ICd5ZWxsb3cnLFxuICAgIGVycm9yOiAncmVkJyxcbiAgfTtcblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHtDb25zb2xlT3B0c30gb3B0c1xuICAgKi9cbiAgY29uc3RydWN0b3Ioe2pzb25Nb2RlID0gZmFsc2UsIHVzZVN5bWJvbHMgPSB0cnVlLCB1c2VDb2xvcn0gPSB7fSkge1xuICAgIHRoaXMuI2NvbnNvbGUgPSBuZXcgTm9kZUNvbnNvbGUocHJvY2Vzcy5zdGRvdXQsIGpzb25Nb2RlID8gbmV3IE51bGxXcml0YWJsZSgpIDogcHJvY2Vzcy5zdGRlcnIpO1xuICAgIHRoaXMuI3VzZVN5bWJvbHMgPSBCb29sZWFuKHVzZVN5bWJvbHMpO1xuICAgIHRoaXMuI3VzZUNvbG9yID0gQm9vbGVhbih1c2VDb2xvciA/PyBzdXBwb3J0c0NvbG9yKHByb2Nlc3Muc3RkZXJyKSk7XG4gIH1cblxuICAvKipcbiAgICogV3JhcHMgYSBtZXNzYWdlIHN0cmluZyBpbiBicmVhdGh0YWtpbmcgZmFuY2luZXNzXG4gICAqXG4gICAqIFJldHVybnMgYHVuZGVmaW5lZGAgaWYgYG1zZ2AgaXMgYHVuZGVmaW5lZGAuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbbXNnXSAtIE1lc3NhZ2UgdG8gZGVjb3JhdGUsIGlmIGFueXRoaW5nXG4gICAqIEBwYXJhbSB7a2V5b2YgdHlwZW9mIENsaUNvbnNvbGVbJ3N5bWJvbFRvQ29sb3InXX0gW3N5bWJvbF0gLSBTeW1ib2wgdG8gdXNlXG4gICAqIEByZXR1cm5zIHtzdHJpbmd8dW5kZWZpbmVkfVxuICAgKi9cbiAgZGVjb3JhdGUobXNnLCBzeW1ib2wpIHtcbiAgICBpZiAoXy5pc1N0cmluZyhtc2cpKSB7XG4gICAgICBsZXQgbmV3TXNnID0gLyoqIEB0eXBlIHtzdHJpbmd9ICovIChtc2cpO1xuICAgICAgaWYgKF8uaXNTdHJpbmcoc3ltYm9sKSAmJiB0aGlzLiN1c2VTeW1ib2xzKSB7XG4gICAgICAgIG5ld01zZyA9IGAke3N5bWJvbHNbc3ltYm9sXX0gJHtuZXdNc2d9YDtcbiAgICAgICAgaWYgKHRoaXMuI3VzZUNvbG9yKSB7XG4gICAgICAgICAgbmV3TXNnID0gbmV3TXNnW0NsaUNvbnNvbGUuc3ltYm9sVG9Db2xvcltzeW1ib2xdXTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIG5ld01zZztcbiAgICB9XG4gICAgcmV0dXJuIG1zZztcbiAgfVxuXG4gIC8qKlxuICAgKiBXcml0ZXMgdG8gYFNURE9VVGAuICBNdXN0IGJlIHN0cmluZ2lmeWFibGUuXG4gICAqXG4gICAqIFlvdSBwcm9iYWJseSBkb24ndCB3YW50IHRvIGNhbGwgdGhpcyBtb3JlIHRoYW4gb25jZSBiZWZvcmUgZXhpdGluZyAoc2luY2UgdGhhdCB3aWxsIG91dHB1dCBpbnZhbGlkIEpTT04pLlxuICAgKiBAcGFyYW0ge2ltcG9ydCgndHlwZS1mZXN0JykuSnNvblZhbHVlfSB2YWx1ZVxuICAgKi9cbiAganNvbih2YWx1ZSkge1xuICAgIHRoaXMuI2NvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KHZhbHVlKSk7XG4gIH1cblxuICAvKipcbiAgICogR2VuZXJhbCBsb2dnaW5nIGZ1bmN0aW9uLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW21lc3NhZ2VdXG4gICAqIEBwYXJhbSB7Li4uYW55fSBhcmdzXG4gICAqL1xuICBsb2cobWVzc2FnZSwgLi4uYXJncykge1xuICAgIHRoaXMuI2NvbnNvbGUuZXJyb3IobWVzc2FnZSwgLi4uYXJncyk7XG4gIH1cblxuICAvKipcbiAgICogQSBcInN1Y2Nlc3NcIiBtZXNzYWdlXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbbWVzc2FnZV1cbiAgICogQHBhcmFtIHsuLi5hbnl9IGFyZ3NcbiAgICovXG4gIG9rKG1lc3NhZ2UsIC4uLmFyZ3MpIHtcbiAgICB0aGlzLiNjb25zb2xlLmVycm9yKHRoaXMuZGVjb3JhdGUobWVzc2FnZSwgJ3N1Y2Nlc3MnKSwgLi4uYXJncyk7XG4gIH1cblxuICAvKipcbiAgICogQWxpYXMgZm9yIHtAbGlua2NvZGUgQ29uc29sZS5sb2d9XG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbbWVzc2FnZV1cbiAgICogQHBhcmFtIHsuLi5hbnl9IGFyZ3NcbiAgICovXG4gIGRlYnVnKG1lc3NhZ2UsIC4uLmFyZ3MpIHtcbiAgICB0aGlzLmxvZyhtZXNzYWdlLCAuLi5hcmdzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXcmFwcyB7QGxpbmsgY29uc29sZS5kaXJ9XG4gICAqIEBwYXJhbSB7YW55fSBpdGVtXG4gICAqIEBwYXJhbSB7aW1wb3J0KCd1dGlsJykuSW5zcGVjdE9wdGlvbnN9IFtvcHRzXVxuICAgKi9cbiAgZHVtcChpdGVtLCBvcHRzKSB7XG4gICAgdGhpcy4jY29uc29sZS5kaXIoaXRlbSwgb3B0cyk7XG4gIH1cblxuICAvKipcbiAgICogQW4gXCJpbmZvXCIgbWVzc2FnZVxuICAgKiBAcGFyYW0ge3N0cmluZ30gW21lc3NhZ2VdXG4gICAqIEBwYXJhbSB7Li4uYW55fSBhcmdzXG4gICAqL1xuICBpbmZvKG1lc3NhZ2UsIC4uLmFyZ3MpIHtcbiAgICB0aGlzLmxvZyh0aGlzLmRlY29yYXRlKG1lc3NhZ2UsICdpbmZvJyksIC4uLmFyZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIEEgXCJ3YXJuaW5nXCIgbWVzc2FnZVxuICAgKiBAcGFyYW0ge3N0cmluZ30gW21lc3NhZ2VdXG4gICAqIEBwYXJhbSB7Li4uYW55fSBhcmdzXG4gICAqL1xuICB3YXJuKG1lc3NhZ2UsIC4uLmFyZ3MpIHtcbiAgICB0aGlzLmxvZyh0aGlzLmRlY29yYXRlKG1lc3NhZ2UsICd3YXJuaW5nJyksIC4uLmFyZ3MpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFuIFwiZXJyb3JcIiBtZXNzYWdlXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbbWVzc2FnZV1cbiAgICogQHBhcmFtIHsuLi5hbnl9IGFyZ3NcbiAgICovXG4gIGVycm9yKG1lc3NhZ2UsIC4uLmFyZ3MpIHtcbiAgICB0aGlzLmxvZyh0aGlzLmRlY29yYXRlKG1lc3NhZ2UsICdlcnJvcicpLCAuLi5hcmdzKTtcbiAgfVxufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHtAbGlua2NvZGUgQ2xpQ29uc29sZX0uXG4gKlxuICogQHR5cGVkZWYgQ29uc29sZU9wdHNcbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gW2pzb25Nb2RlXSAtIElmIF90cnV0aHlfLCBzdXByZXNzIGFsbCBvdXRwdXQgZXhjZXB0IEpTT04gKHVzZSB7QGxpbmtjb2RlIENsaUNvbnNvbGUjanNvbn0pLCB3aGljaCB3cml0ZXMgdG8gYFNURE9VVGAuXG4gKiBAcHJvcGVydHkge2Jvb2xlYW59IFt1c2VTeW1ib2xzXSAtIElmIF9mYWxzeV8sIGRvIG5vdCB1c2UgZmFuY3kgc3ltYm9scy5cbiAqIEBwcm9wZXJ0eSB7Ym9vbGVhbn0gW3VzZUNvbG9yXSAtIElmIF9mYWxzeV8sIGRvIG5vdCB1c2UgY29sb3Igb3V0cHV0LiBJZiBfdHJ1dGh5XywgZm9yY2VzIGNvbG9yIG91dHB1dC4gQnkgZGVmYXVsdCwgY2hlY2tzIHRlcm1pbmFsL1RUWSBmb3Igc3VwcG9ydCB2aWEgcGtnIGBzdXBwb3J0cy1jb2xvcmAuIElnbm9yZWQgaWYgYHVzZVN5bWJvbHNgIGlzIGBmYWxzZWAuXG4gKiBAc2VlIGh0dHBzOi8vbnBtLmltL3N1cHBvcnRzLWNvbG9yXG4gKi9cblxuZXhwb3J0IGNvbnN0IGNvbnNvbGUgPSBuZXcgQ2xpQ29uc29sZSgpO1xuZXhwb3J0IHtzeW1ib2xzfTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFLQSxNQUFNQSxZQUFOLFNBQTJCQyxnQkFBM0IsQ0FBb0M7RUFFbENDLE1BQU0sQ0FBQ0MsS0FBRCxFQUFRQyxRQUFSLEVBQWtCQyxRQUFsQixFQUE0QjtJQUNoQ0MsWUFBWSxDQUFDRCxRQUFELENBQVo7RUFDRDs7QUFKaUM7O0FBZ0I3QixNQUFNRSxVQUFOLENBQWlCO0VBS3RC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
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../lib/env.js"],"names":[],"mappings":"AA+BA;;;;;;;;;;;;;;;GAeG;AACH,yCAHW,MAAM,GACJ,QAAQ,OAAO,CAAC,CAqC5B;AA1ED;;;GAGG;AACH,kCAFU,MAAM,CAEsD;AAEtE;;;GAGG;AACH,gCAFU,MAAM,CAEmC;AAEnD;;;GAGG;AACH,qCAFU,MAAM,CAOd;AAuDF;;GAEG;AACH,sCAGa,MAAM,KACJ,QAAQ,OAAO,UAAU,EAAE,qBAAqB,GAAC,SAAS,CAAC,uBAKxE;AAEF;;;;;;GAMG;AACH,+DAGe,QAAQ,MAAM,CAAC,uBA+B5B;AAEF;;;;;GAKG;AACH,wEAGe,QAAQ,MAAM,CAAC,uBAO5B;oCAGW,OAAO,UAAU,EAAE,qBAAqB"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../lib/env.js"],"names":[],"mappings":"AA+BA;;;;;;;;;;;;;;;GAeG;AACH,yCAHW,MAAM,GACJ,QAAQ,OAAO,CAAC,CAqC5B;AA1ED;;;GAGG;AACH,kCAFU,MAAM,CAEsD;AAEtE;;;GAGG;AACH,gCAFU,MAAM,CAEmC;AAEnD;;;GAGG;AACH,qCAFU,MAAM,CAOd;AAuDF;;GAEG;AACH,sCAGa,MAAM,KACJ,QAAQ,OAAO,UAAU,EAAE,qBAAqB,GAAC,SAAS,CAAC,uBAKxE;AAEF;;;;;;GAMG;AACH,+DAGe,QAAQ,MAAM,CAAC,uBA6B5B;AAEF;;;;;GAKG;AACH,wEAGe,QAAQ,MAAM,CAAC,uBAO5B;oCAGW,OAAO,UAAU,EAAE,qBAAqB"}
package/build/lib/env.js CHANGED
@@ -99,4 +99,4 @@ const resolveManifestPath = _lodash.default.memoize(async function _resolveManif
99
99
  });
100
100
 
101
101
  exports.resolveManifestPath = resolveManifestPath;
102
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9lbnYuanMiXSwibmFtZXMiOlsiREVGQVVMVF9BUFBJVU1fSE9NRSIsInBhdGgiLCJyZXNvbHZlIiwiTUFOSUZFU1RfQkFTRU5BTUUiLCJNQU5JRkVTVF9SRUxBVElWRV9QQVRIIiwiam9pbiIsImhhc0FwcGl1bURlcGVuZGVuY3kiLCJjd2QiLCJsaXN0UmVzdWx0IiwicmVzb2x2ZWQiLCJ2ZXJzaW9uIiwibnBtIiwibGlzdCIsImRlcGVuZGVuY2llcyIsImFwcGl1bSIsInBrZyIsInJlYWRQYWNrYWdlSW5EaXIiLCJkZXZEZXBlbmRlbmNpZXMiLCJvcHRpb25hbERlcGVuZGVuY2llcyIsIkJvb2xlYW4iLCJzdGFydHNXaXRoIiwiXyIsIm1lbW9pemUiLCJfcmVhZFBhY2thZ2VJbkRpciIsIm5vcm1hbGl6ZSIsInJlc29sdmVBcHBpdW1Ib21lIiwiX3Jlc29sdmVBcHBpdW1Ib21lIiwicHJvY2VzcyIsImVudiIsIkFQUElVTV9IT01FIiwiaXNBYnNvbHV0ZSIsIlR5cGVFcnJvciIsImN1cnJlbnRQa2dEaXIiLCJyZXNvbHZlTWFuaWZlc3RQYXRoIiwiX3Jlc29sdmVNYW5pZmVzdFBhdGgiLCJhcHBpdW1Ib21lIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBTU8sTUFBTUEsbUJBQW1CLEdBQUdDLGNBQUtDLE9BQUwsQ0FBYSxrQkFBYixFQUF3QixTQUF4QixDQUE1Qjs7O0FBTUEsTUFBTUMsaUJBQWlCLEdBQUcsaUJBQTFCOzs7QUFNQSxNQUFNQyxzQkFBc0IsR0FBR0gsY0FBS0ksSUFBTCxDQUNwQyxjQURvQyxFQUVwQyxRQUZvQyxFQUdwQyxRQUhvQyxFQUlwQ0YsaUJBSm9DLENBQS9COzs7O0FBdUJBLGVBQWVHLG1CQUFmLENBQW9DQyxHQUFwQyxFQUF5QztBQUs5QyxNQUFJQyxVQUFKO0FBRUEsTUFBSUMsUUFBSjtBQUVBLE1BQUlDLE9BQUo7O0FBQ0EsTUFBSTtB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Y2tcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyBob21lZGlyIH0gZnJvbSAnb3MnO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgcGtnRGlyIGZyb20gJ3BrZy1kaXInO1xuaW1wb3J0IHJlYWRQa2cgZnJvbSAncmVhZC1wa2cnO1xuaW1wb3J0IHsgbnBtIH0gZnJvbSAnLi9ucG0nO1xuXG4vKipcbiAqIFBhdGggdG8gdGhlIGRlZmF1bHQgYEFQUElVTV9IT01FYCBkaXIgKGB+Ly5hcHBpdW1gKS5cbiAqIEB0eXBlIHtzdHJpbmd9XG4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX0FQUElVTV9IT01FID0gcGF0aC5yZXNvbHZlKGhvbWVkaXIoKSwgJy5hcHBpdW0nKTtcblxuLyoqXG4gKiBCYXNlbmFtZSBvZiBleHRlbnNpb24gbWFuaWZlc3QgZmlsZS5cbiAqIEB0eXBlIHtzdHJpbmd9XG4gKi9cbmV4cG9ydCBjb25zdCBNQU5JRkVTVF9CQVNFTkFNRSA9ICdleHRlbnNpb25zLnlhbWwnO1xuXG4vKipcbiAqIFJlbGF0aXZlIHBhdGggdG8gZXh0ZW5zaW9uIG1hbmlmZXN0IGZpbGUgZnJvbSBgQVBQSVVNX0hPTUVgLlxuICogQHR5cGUge3N0cmluZ31cbiAqL1xuZXhwb3J0IGNvbnN0IE1BTklGRVNUX1JFTEFUSVZFX1BBVEggPSBwYXRoLmpvaW4oXG4gICdub2RlX21vZHVsZXMnLFxuICAnLmNhY2hlJyxcbiAgJ2FwcGl1bScsXG4gIE1BTklGRVNUX0JBU0VOQU1FLFxuKTtcblxuLyoqXG4gKiBSZXR1cm5zIGB0cnVlYCBpZiBhcHBpdW0gaXMgaW5zdGFsbGVkIGFzIGEgZGVwZW5kZW5jeSBvZiBhIGxvY2FsIHBhY2thZ2UgYXQgYGN3ZGAuXG4gKlxuICogVGhlIGZvbGxvd2luZyBzcGVjaWFsIGNhc2VzIGFyZSBjb25zaWRlcmVkOlxuICpcbiAqIC0gSWYgYHJlc29sdmVkYCBzdGFydHMgd2l0aCBgZmlsZTpgLCB0aGVuIGBjd2RgIGxpa2VseSBwb2ludHMgdG8gYGFwcGl1bS1tb25vcmVwb2AsIGFuZCAoZm9yIG5vdykgd2UgZXhwZWN0IGBBUFBJVU1fSE9NRWAgdG8gYmUgdGhlIGRlZmF1bHQuXG4gKiAtIElmIHRoZSBgdmVyc2lvbmAgYmVnaW5zIHdpdGggYDBgIG9yIGAxYCwgd2UncmUgbG9va2luZyBhdCBhbiBvbGQgdmVyc2lvbiBvZiBgYXBwaXVtYCAobm90IHRoaXMgb25lISlcbiAqXG4gKiBOb3RlIHRoYXQgd2UgYXJlIF9ub3RfIHBlcmZvcm1pbmcgdGhlIGNoZWNrIFwiaXMgdGhlIGN1cnJlbnRseSBydW5uaW5nIEFwcGl1bSB0aGUgc2FtZSBvbmUgYXMgZm91bmQgaW4gdGhlIGxpc3Qgb2YgZGVwZW5kZW5jaWVzXCIsIGJlY2F1c2UgSSdtIG5vdCBzdXJlIGl0IGFjdHVhbGx5IG1hdHRlcnMgKGFzc3VtaW5nIHRoZSB2ZXJzaW9ucyBhcmUgY29tcGF0aWJsZSkuXG4gKiBSZWdhcmRsZXNzIHdlIG1heSB3YW50IHRvIG1ha2UgdGhpcyBtb3JlIHJvYnVzdCBpbiB0aGUgZnV0dXJlLCBhcyB3ZSBoaXQgZWRnZSBjYXNlcy5cbiAqXG4gKiBfQWxzb18gbm90ZSB0aGF0IGlmIGBhcHBpdW1gIGFwcGVhcnMgYXMgYSBkZXBlbmRlbmN5IGluIGBwYWNrYWdlLmpzb25gIF9idXQgaXQgaXMgbm90IHlldCBpbnN0YWxsZWRfIHRoaXMgZnVuY3Rpb24gd2lsbCByZXNvbHZlIGBmYWxzZWAuICBUaGlzIG1heSBub3QgYmUgZXhhY3RseSB3aGF0IHdlIHdhbnQuXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGN3ZFxuICogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59XG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBoYXNBcHBpdW1EZXBlbmRlbmN5IChjd2QpIHtcbiAgLyoqXG4gICAqIEB0b2RvIHR5cGUgdGhpc1xuICAgKiBAdHlwZSB7b2JqZWN0fVxuICAgKi9cbiAgbGV0IGxpc3RSZXN1bHQ7XG4gIC8qKiBAdHlwZSB7c3RyaW5nfHVuZGVmaW5lZH0gKi9cbiAgbGV0IHJlc29sdmVkO1xuICAvKiogQHR5cGUge3N0cmluZ3x1bmRlZmluZWR9ICovXG4gIGxldCB2ZXJzaW9uO1xuICB0cnkge1xuICAgIGxpc3RSZXN1bHQgPSBhd2FpdCBucG0ubGlzdChjd2QsICdhcHBpdW0nKTtcbiAgICAvLyBpZiBcInJlc29sdmVkXCIgaXMgZW1wdHksIHRoZW4gYGFwcGl1bWAgaXMgaW4gZGVwZW5kZW5jaWVzLCBidXQgYG5wbSBpbnN0YWxsYCBoYXMgbm90IGJlZW4gcnVuLlxuICAgIC8vIGluIG90aGVyIHdvcmRzLCB0aGlzIGZ1bmN0aW9uIGNhbiByZXNvbHZlIGB0cnVlYCBldmVuIGlmIGByZXNvbHZlZGAgaXMgZW1wdHkuLi5cbiAgICByZXNvbHZlZCA9IGxpc3RSZXN1bHQ/LmRlcGVuZGVuY2llcz8uYXBwaXVtPy5yZXNvbHZlZCA/PyAnJztcbiAgICAvLyAuLi5ob3dldmVyLCBpdCBjYW5ub3QgZG8gc28gdW5sZXNzIGB2ZXJzaW9uYCBpcyBub25lbXB0eS5cbiAgICB2ZXJzaW9uID0gbGlzdFJlc3VsdD8uZGVwZW5kZW5jaWVzPy5hcHBpdW0/LnZlcnNpb24gPz8gJyc7XG4gIH0gY2F0Y2gge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBwa2cgPSBhd2FpdCByZWFkUGFja2FnZUluRGlyKGN3ZCk7XG4gICAgICAvLyB3ZSdyZSBvbmx5IGdvaW5nIHRvIGxvb2sgYXQgdGhlc2UgdGhyZWUgZmllbGRzIGZvciBub3csIGJ1dCB3ZSBjYW4gY2hhbmdlIGl0IGxhdGVyIGlmIG5lZWQgYmUuXG4gICAgICB2ZXJzaW9uID0gcmVzb2x2ZWQgPVxuICAgICAgICBwa2c/LmRlcGVuZGVuY2llcz8uYXBwaXVtID8/XG4gICAgICAgIHBrZz8uZGV2RGVwZW5kZW5jaWVzPy5hcHBpdW0gPz9cbiAgICAgICAgcGtnPy5vcHRpb25hbERlcGVuZGVuY2llcz8uYXBwaXVtO1xuICAgIH0gY2F0Y2gge31cbiAgfVxuICByZXR1cm4gQm9vbGVhbihcbiAgICB2ZXJzaW9uICYmXG4gICAgICAoIXJlc29sdmVkIHx8IChyZXNvbHZlZCAmJiAhcmVzb2x2ZWQuc3RhcnRzV2l0aCgnZmlsZTonKSkpICYmXG4gICAgICAvLyBkb2luZyBhbnkgZnVydGhlciBjaGVja2luZyBoZXJlIG1heSBiZSBhIGZvb2wncyBlcnJhbmQsIGJlY2F1c2UgeW91IGNhbiBwaW4gdGhlIHZlcnNpb25cbiAgICAgIC8vIHRvIGEgX2xvdF8gb2YgZGlmZmVyZW50IHRoaW5ncyAodGFncywgVVJMcywgZXRjKS5cbiAgICAgICF2ZXJzaW9uLnN0YXJ0c1dpdGgoJzEnKSAmJlxuICAgICAgIXZlcnNpb24uc3RhcnRzV2l0aCgnMCcpLFxuICApO1xufVxuXG4vKipcbiAqIFJlYWQgYSBgcGFja2FnZS5qc29uYCBpbiBkaXIgYGN3ZGAuICBJZiBub25lIGZvdW5kLCByZXR1cm4gYHVuZGVmaW5lZGAuXG4gKi9cbmV4cG9ydCBjb25zdCByZWFkUGFja2FnZUluRGlyID0gXy5tZW1vaXplKFxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGN3ZCAtIERpcmVjdG9yeSBvc3RlbnNpYmx5IGhhdmluZyBhIGBwYWNrYWdlLmpzb25gXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGltcG9ydCgncmVhZC1wa2cnKS5Ob3JtYWxpemVkUGFja2FnZUpzb258dW5kZWZpbmVkPn1cbiAgICovXG4gIGFzeW5jIGZ1bmN0aW9uIF9yZWFkUGFja2FnZUluRGlyIChjd2QpIHtcbiAgICByZXR1cm4gYXdhaXQgcmVhZFBrZyh7Y3dkLCBub3JtYWxpemU6IHRydWV9KTtcbiAgfSxcbik7XG5cbi8qKlxuICogRGV0ZXJtaW5lcyBsb2NhdGlvbiBvZiBBcHBpdW0ncyBcImhvbWVcIiBkaXJcbiAqXG4gKiAtIElmIGBBUFBJVU1fSE9NRWAgaXMgc2V0IGluIHRoZSBlbnZpcm9ubWVudCwgdXNlIHRoYXRcbiAqIC0gSWYgd2UgaGF2ZSBhbiBgZXh0ZW5zaW9ucy55YW1sYCBpbiB7QGxpbmtjb2RlIERFRkFVTFRfQVBQSVVNX0hPTUV9LCB0aGVuIHVzZSB0aGF0LlxuICogLSBJZiB3ZSBmaW5kIGEgYHBhY2thZ2UuanNvbmAgaW4gb3IgYWJvdmUgYGN3ZGAgYW5kIHtAbGlua2NvZGUgc2hvdWxkVXNlQ3dkRm9yQXBwaXVtSG9tZX0gcmV0dXJucyBgdHJ1ZWAsIHRoZW4gdXNlIHRoZSBkaXJlY3RvcnkgY29udGFpbmluZyB0aGUgYHBhY2thZ2UuanNvbmAuXG4gKi9cbmV4cG9ydCBjb25zdCByZXNvbHZlQXBwaXVtSG9tZSA9IF8ubWVtb2l6ZShcbiAgLyoqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbY3dkXSAtIEN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuICBfTXVzdF8gYmUgYWJzb2x1dGUsIGlmIHNwZWNpZmllZC5cbiAgICogQHJldHVybnMge1Byb21pc2U8c3RyaW5nPn1cbiAgICovXG4gIGFzeW5jIGZ1bmN0aW9uIF9yZXNvbHZlQXBwaXVtSG9tZSAoY3dkID0gcHJvY2Vzcy5jd2QoKSkge1xuICAgIGlmIChwcm9jZXNzLmVudi5BUFBJVU1fSE9NRSkge1xuICAgICAgcmV0dXJuIHByb2Nlc3MuZW52LkFQUElVTV9IT01FO1xuICAgIH1cblxuICAgIGlmICghcGF0aC5pc0Fic29sdXRlKGN3ZCkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2Bjd2RgIHBhcmFtZXRlciBtdXN0IGJlIGFuIGFic29sdXRlIHBhdGgnKTtcbiAgICB9XG5cbiAgICAvKiogQHR5cGUge3N0cmluZ3x1bmRlZmluZWR9ICovXG4gICAgbGV0IGN1cnJlbnRQa2dEaXI7XG5cbiAgICB0cnkge1xuICAgICAgY3VycmVudFBrZ0RpciA9IGF3YWl0IHBrZ0Rpcihjd2QpO1xuXG4gICAgICAvLyBpZiB3ZSBjYW4ndCBmaW5kIGEgYHBhY2thZ2UuanNvbmAsIHVzZSB0aGUgZGVmYXVsdFxuICAgICAgaWYgKCFjdXJyZW50UGtnRGlyKSB7XG4gICAgICAgIHJldHVybiBERUZBVUxUX0FQUElVTV9IT01FO1xuICAgICAgfVxuICAgIH0gY2F0Y2gge1xuICAgICAgLy8gdW5jbGVhciBpZiB0aGlzIGNhbiBhY3R1YWxseSBoYXBwZW5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICByZXR1cm4gREVGQVVMVF9BUFBJVU1fSE9NRTtcbiAgICB9XG5cbiAgICByZXR1cm4gKGF3YWl0IGhhc0FwcGl1bURlcGVuZGVuY3koY3VycmVudFBrZ0RpcikpXG4gICAgICA/IGN1cnJlbnRQa2dEaXJcbiAgICAgIDogREVGQVVMVF9BUFBJVU1fSE9NRTtcbiAgfSxcbik7XG5cbi8qKlxuICogRmlndXJlIG91dCBtYW5pZmVzdCBwYXRoIGJhc2VkIG9uIGBhcHBpdW1Ib21lYC5cbiAqXG4gKiBUaGUgYXNzdW1wdGlvbiBpcyB0aGF0LCBpZiBgYXBwaXVtSG9tZWAgaGFzIGJlZW4gcHJvdmlkZWQsIGl0IHdhcyByZXNvbHZlZCB2aWEge0BsaW5rIHJlc29sdmVBcHBpdW1Ib21lIGByZXNvbHZlQXBwaXVtSG9tZSgpYH0hICBJZiB1bnN1cmUsXG4gKiBkb24ndCBwYXNzIGEgcGFyYW1ldGVyIGFuZCBsZXQgYHJlc29sdmVBcHBpdW1Ib21lKClgIGhhbmRsZSBpdC5cbiAqL1xuZXhwb3J0IGNvbnN0IHJlc29sdmVNYW5pZmVzdFBhdGggPSBfLm1lbW9pemUoXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2FwcGl1bUhvbWVdIC0gQXBwaXVtIGhvbWUgZGlyZWN0b3J5XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZz59XG4gICAqL1xuICBhc3luYyBmdW5jdGlvbiBfcmVzb2x2ZU1hbmlmZXN0UGF0aCAoYXBwaXVtSG9tZSkge1xuICAgIC8vIGNhbiB5b3UgXCJhd2FpdFwiIGluIGEgZGVmYXVsdCBwYXJhbWV0ZXI/IGlzIHRoYXQgYSBnb29kIGlkZWE/XG4gICAgYXBwaXVtSG9tZSA9IGFwcGl1bUhvbWUgPz8gKGF3YWl0IHJlc29sdmVBcHBpdW1Ib21lKCkpO1xuICAgIHJldHVybiBwYXRoLmpvaW4oYXBwaXVtSG9tZSwgTUFOSUZFU1RfUkVMQVRJVkVfUEFUSCk7XG4gIH0sXG4pO1xuXG4vKipcbiAqIEB0eXBlZGVmIHtpbXBvcnQoJ3JlYWQtcGtnJykuTm9ybWFsaXplZFBhY2thZ2VKc29ufSBOb3JtYWxpemVkUGFja2FnZUpzb25cbiAqL1xuIl19
102
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJERUZBVUxUX0FQUElVTV9IT01FIiwicGF0aCIsInJlc29sdmUiLCJob21lZGlyIiwiTUFOSUZFU1RfQkFTRU5BTUUiLCJNQU5JRkVTVF9SRUxBVElWRV9QQVRIIiwiam9pbiIsImhhc0FwcGl1bURlcGVuZGVuY3kiLCJjd2QiLCJsaXN0UmVzdWx0IiwicmVzb2x2ZWQiLCJ2ZXJzaW9uIiwibnBtIiwibGlzdCIsImRlcGVuZGVuY2llcyIsImFwcGl1bSIsInBrZyIsInJlYWRQYWNrYWdlSW5EaXIiLCJkZXZEZXBlbmRlbmNpZXMiLCJvcHRpb25hbERlcGVuZGVuY2llcyIsIkJvb2xlYW4iLCJzdGFydHNXaXRoIiwiXyIsIm1lbW9pemUiLCJfcmVhZFBhY2thZ2VJbkRpciIsInJlYWRQa2ciLCJub3JtYWxpemUiLCJyZXNvbHZlQXBwaXVtSG9tZSIsIl9yZXNvbHZlQXBwaXVtSG9tZSIsInByb2Nlc3MiLCJlbnYiLCJBUFBJVU1fSE9NRSIsImlzQWJzb2x1dGUiLCJUeXBlRXJyb3IiLCJjdXJyZW50UGtnRGlyIiwicGtnRGlyIiwicmVzb2x2ZU1hbmlmZXN0UGF0aCIsIl9yZXNvbHZlTWFuaWZlc3RQYXRoIiwiYXBwaXVtSG9tZSJdLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9lbnYuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWNoZWNrXG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IHtob21lZGlyfSBmcm9tICdvcyc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCBwa2dEaXIgZnJvbSAncGtnLWRpcic7XG5pbXBvcnQgcmVhZFBrZyBmcm9tICdyZWFkLXBrZyc7XG5pbXBvcnQge25wbX0gZnJvbSAnLi9ucG0nO1xuXG4vKipcbiAqIFBhdGggdG8gdGhlIGRlZmF1bHQgYEFQUElVTV9IT01FYCBkaXIgKGB+Ly5hcHBpdW1gKS5cbiAqIEB0eXBlIHtzdHJpbmd9XG4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX0FQUElVTV9IT01FID0gcGF0aC5yZXNvbHZlKGhvbWVkaXIoKSwgJy5hcHBpdW0nKTtcblxuLyoqXG4gKiBCYXNlbmFtZSBvZiBleHRlbnNpb24gbWFuaWZlc3QgZmlsZS5cbiAqIEB0eXBlIHtzdHJpbmd9XG4gKi9cbmV4cG9ydCBjb25zdCBNQU5JRkVTVF9CQVNFTkFNRSA9ICdleHRlbnNpb25zLnlhbWwnO1xuXG4vKipcbiAqIFJlbGF0aXZlIHBhdGggdG8gZXh0ZW5zaW9uIG1hbmlmZXN0IGZpbGUgZnJvbSBgQVBQSVVNX0hPTUVgLlxuICogQHR5cGUge3N0cmluZ31cbiAqL1xuZXhwb3J0IGNvbnN0IE1BTklGRVNUX1JFTEFUSVZFX1BBVEggPSBwYXRoLmpvaW4oXG4gICdub2RlX21vZHVsZXMnLFxuICAnLmNhY2hlJyxcbiAgJ2FwcGl1bScsXG4gIE1BTklGRVNUX0JBU0VOQU1FXG4pO1xuXG4vKipcbiAqIFJldHVybnMgYHRydWVgIGlmIGFwcGl1bSBpcyBpbnN0YWxsZWQgYXMgYSBkZXBlbmRlbmN5IG9mIGEgbG9jYWwgcGFja2FnZSBhdCBgY3dkYC5cbiAqXG4gKiBUaGUgZm9sbG93aW5nIHNwZWNpYWwgY2FzZXMgYXJlIGNvbnNpZGVyZWQ6XG4gKlxuICogLSBJZiBgcmVzb2x2ZWRgIHN0YXJ0cyB3aXRoIGBmaWxlOmAsIHRoZW4gYGN3ZGAgbGlrZWx5IHBvaW50cyB0byBgYXBwaXVtLW1vbm9yZXBvYCwgYW5kIChmb3Igbm93KSB3ZSBleHBlY3QgYEFQUElVTV9IT01FYCB0byBiZSB0aGUgZGVmYXVsdC5cbiAqIC0gSWYgdGhlIGB2ZXJzaW9uYCBiZWdpbnMgd2l0aCBgMGAgb3IgYDFgLCB3ZSdyZSBsb29raW5nIGF0IGFuIG9sZCB2ZXJzaW9uIG9mIGBhcHBpdW1gIChub3QgdGhpcyBvbmUhKVxuICpcbiAqIE5vdGUgdGhhdCB3ZSBhcmUgX25vdF8gcGVyZm9ybWluZyB0aGUgY2hlY2sgXCJpcyB0aGUgY3VycmVudGx5IHJ1bm5pbmcgQXBwaXVtIHRoZSBzYW1lIG9uZSBhcyBmb3VuZCBpbiB0aGUgbGlzdCBvZiBkZXBlbmRlbmNpZXNcIiwgYmVjYXVzZSBJJ20gbm90IHN1cmUgaXQgYWN0dWFsbHkgbWF0dGVycyAoYXNzdW1pbmcgdGhlIHZlcnNpb25zIGFyZSBjb21wYXRpYmxlKS5cbiAqIFJlZ2FyZGxlc3Mgd2UgbWF5IHdhbnQgdG8gbWFrZSB0aGlzIG1vcmUgcm9idXN0IGluIHRoZSBmdXR1cmUsIGFzIHdlIGhpdCBlZGdlIGNhc2VzLlxuICpcbiAqIF9BbHNvXyBub3RlIHRoYXQgaWYgYGFwcGl1bWAgYXBwZWFycyBhcyBhIGRlcGVuZGVuY3kgaW4gYHBhY2thZ2UuanNvbmAgX2J1dCBpdCBpcyBub3QgeWV0IGluc3RhbGxlZF8gdGhpcyBmdW5jdGlvbiB3aWxsIHJlc29sdmUgYGZhbHNlYC4gIFRoaXMgbWF5IG5vdCBiZSBleGFjdGx5IHdoYXQgd2Ugd2FudC5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gY3dkXG4gKiBAcmV0dXJucyB7UHJvbWlzZTxib29sZWFuPn1cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGhhc0FwcGl1bURlcGVuZGVuY3koY3dkKSB7XG4gIC8qKlxuICAgKiBAdG9kbyB0eXBlIHRoaXNcbiAgICogQHR5cGUge29iamVjdH1cbiAgICovXG4gIGxldCBsaXN0UmVzdWx0O1xuICAvKiogQHR5cGUge3N0cmluZ3x1bmRlZmluZWR9ICovXG4gIGxldCByZXNvbHZlZDtcbiAgLyoqIEB0eXBlIHtzdHJpbmd8dW5kZWZpbmVkfSAqL1xuICBsZXQgdmVyc2lvbjtcbiAgdHJ5IHtcbiAgICBsaXN0UmVzdWx0ID0gYXdhaXQgbnBtLmxpc3QoY3dkLCAnYXBwaXVtJyk7XG4gICAgLy8gaWYgXCJyZXNvbHZlZFwiIGlzIGVtcHR5LCB0aGVuIGBhcHBpdW1gIGlzIGluIGRlcGVuZGVuY2llcywgYnV0IGBucG0gaW5zdGFsbGAgaGFzIG5vdCBiZWVuIHJ1bi5cbiAgICAvLyBpbiBvdGhlciB3b3JkcywgdGhpcyBmdW5jdGlvbiBjYW4gcmVzb2x2ZSBgdHJ1ZWAgZXZlbiBpZiBgcmVzb2x2ZWRgIGlzIGVtcHR5Li4uXG4gICAgcmVzb2x2ZWQgPSBsaXN0UmVzdWx0Py5kZXBlbmRlbmNpZXM/LmFwcGl1bT8ucmVzb2x2ZWQgPz8gJyc7XG4gICAgLy8gLi4uaG93ZXZlciwgaXQgY2Fubm90IGRvIHNvIHVubGVzcyBgdmVyc2lvbmAgaXMgbm9uZW1wdHkuXG4gICAgdmVyc2lvbiA9IGxpc3RSZXN1bHQ/LmRlcGVuZGVuY2llcz8uYXBwaXVtPy52ZXJzaW9uID8/ICcnO1xuICB9IGNhdGNoIHtcbiAgICB0cnkge1xuICAgICAgY29uc3QgcGtnID0gYXdhaXQgcmVhZFBhY2thZ2VJbkRpcihjd2QpO1xuICAgICAgLy8gd2UncmUgb25seSBnb2luZyB0byBsb29rIGF0IHRoZXNlIHRocmVlIGZpZWxkcyBmb3Igbm93LCBidXQgd2UgY2FuIGNoYW5nZSBpdCBsYXRlciBpZiBuZWVkIGJlLlxuICAgICAgdmVyc2lvbiA9IHJlc29sdmVkID1cbiAgICAgICAgcGtnPy5kZXBlbmRlbmNpZXM/LmFwcGl1bSA/P1xuICAgICAgICBwa2c/LmRldkRlcGVuZGVuY2llcz8uYXBwaXVtID8/XG4gICAgICAgIHBrZz8ub3B0aW9uYWxEZXBlbmRlbmNpZXM/LmFwcGl1bTtcbiAgICB9IGNhdGNoIHt9XG4gIH1cbiAgcmV0dXJuIEJvb2xlYW4oXG4gICAgdmVyc2lvbiAmJlxuICAgICAgKCFyZXNvbHZlZCB8fCAocmVzb2x2ZWQgJiYgIXJlc29sdmVkLnN0YXJ0c1dpdGgoJ2ZpbGU6JykpKSAmJlxuICAgICAgLy8gZG9pbmcgYW55IGZ1cnRoZXIgY2hlY2tpbmcgaGVyZSBtYXkgYmUgYSBmb29sJ3MgZXJyYW5kLCBiZWNhdXNlIHlvdSBjYW4gcGluIHRoZSB2ZXJzaW9uXG4gICAgICAvLyB0byBhIF9sb3RfIG9mIGRpZmZlcmVudCB0aGluZ3MgKHRhZ3MsIFVSTHMsIGV0YykuXG4gICAgICAhdmVyc2lvbi5zdGFydHNXaXRoKCcxJykgJiZcbiAgICAgICF2ZXJzaW9uLnN0YXJ0c1dpdGgoJzAnKVxuICApO1xufVxuXG4vKipcbiAqIFJlYWQgYSBgcGFja2FnZS5qc29uYCBpbiBkaXIgYGN3ZGAuICBJZiBub25lIGZvdW5kLCByZXR1cm4gYHVuZGVmaW5lZGAuXG4gKi9cbmV4cG9ydCBjb25zdCByZWFkUGFja2FnZUluRGlyID0gXy5tZW1vaXplKFxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGN3ZCAtIERpcmVjdG9yeSBvc3RlbnNpYmx5IGhhdmluZyBhIGBwYWNrYWdlLmpzb25gXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPGltcG9ydCgncmVhZC1wa2cnKS5Ob3JtYWxpemVkUGFja2FnZUpzb258dW5kZWZpbmVkPn1cbiAgICovXG4gIGFzeW5jIGZ1bmN0aW9uIF9yZWFkUGFja2FnZUluRGlyKGN3ZCkge1xuICAgIHJldHVybiBhd2FpdCByZWFkUGtnKHtjd2QsIG5vcm1hbGl6ZTogdHJ1ZX0pO1xuICB9XG4pO1xuXG4vKipcbiAqIERldGVybWluZXMgbG9jYXRpb24gb2YgQXBwaXVtJ3MgXCJob21lXCIgZGlyXG4gKlxuICogLSBJZiBgQVBQSVVNX0hPTUVgIGlzIHNldCBpbiB0aGUgZW52aXJvbm1lbnQsIHVzZSB0aGF0XG4gKiAtIElmIHdlIGhhdmUgYW4gYGV4dGVuc2lvbnMueWFtbGAgaW4ge0BsaW5rY29kZSBERUZBVUxUX0FQUElVTV9IT01FfSwgdGhlbiB1c2UgdGhhdC5cbiAqIC0gSWYgd2UgZmluZCBhIGBwYWNrYWdlLmpzb25gIGluIG9yIGFib3ZlIGBjd2RgIGFuZCB7QGxpbmtjb2RlIHNob3VsZFVzZUN3ZEZvckFwcGl1bUhvbWV9IHJldHVybnMgYHRydWVgLCB0aGVuIHVzZSB0aGUgZGlyZWN0b3J5IGNvbnRhaW5pbmcgdGhlIGBwYWNrYWdlLmpzb25gLlxuICovXG5leHBvcnQgY29uc3QgcmVzb2x2ZUFwcGl1bUhvbWUgPSBfLm1lbW9pemUoXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2N3ZF0gLSBDdXJyZW50IHdvcmtpbmcgZGlyZWN0b3J5LiAgX011c3RfIGJlIGFic29sdXRlLCBpZiBzcGVjaWZpZWQuXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZz59XG4gICAqL1xuICBhc3luYyBmdW5jdGlvbiBfcmVzb2x2ZUFwcGl1bUhvbWUoY3dkID0gcHJvY2Vzcy5jd2QoKSkge1xuICAgIGlmIChwcm9jZXNzLmVudi5BUFBJVU1fSE9NRSkge1xuICAgICAgcmV0dXJuIHByb2Nlc3MuZW52LkFQUElVTV9IT01FO1xuICAgIH1cblxuICAgIGlmICghcGF0aC5pc0Fic29sdXRlKGN3ZCkpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2Bjd2RgIHBhcmFtZXRlciBtdXN0IGJlIGFuIGFic29sdXRlIHBhdGgnKTtcbiAgICB9XG5cbiAgICAvKiogQHR5cGUge3N0cmluZ3x1bmRlZmluZWR9ICovXG4gICAgbGV0IGN1cnJlbnRQa2dEaXI7XG5cbiAgICB0cnkge1xuICAgICAgY3VycmVudFBrZ0RpciA9IGF3YWl0IHBrZ0Rpcihjd2QpO1xuXG4gICAgICAvLyBpZiB3ZSBjYW4ndCBmaW5kIGEgYHBhY2thZ2UuanNvbmAsIHVzZSB0aGUgZGVmYXVsdFxuICAgICAgaWYgKCFjdXJyZW50UGtnRGlyKSB7XG4gICAgICAgIHJldHVybiBERUZBVUxUX0FQUElVTV9IT01FO1xuICAgICAgfVxuICAgIH0gY2F0Y2gge1xuICAgICAgLy8gdW5jbGVhciBpZiB0aGlzIGNhbiBhY3R1YWxseSBoYXBwZW5cbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICByZXR1cm4gREVGQVVMVF9BUFBJVU1fSE9NRTtcbiAgICB9XG5cbiAgICByZXR1cm4gKGF3YWl0IGhhc0FwcGl1bURlcGVuZGVuY3koY3VycmVudFBrZ0RpcikpID8gY3VycmVudFBrZ0RpciA6IERFRkFVTFRfQVBQSVVNX0hPTUU7XG4gIH1cbik7XG5cbi8qKlxuICogRmlndXJlIG91dCBtYW5pZmVzdCBwYXRoIGJhc2VkIG9uIGBhcHBpdW1Ib21lYC5cbiAqXG4gKiBUaGUgYXNzdW1wdGlvbiBpcyB0aGF0LCBpZiBgYXBwaXVtSG9tZWAgaGFzIGJlZW4gcHJvdmlkZWQsIGl0IHdhcyByZXNvbHZlZCB2aWEge0BsaW5rIHJlc29sdmVBcHBpdW1Ib21lIGByZXNvbHZlQXBwaXVtSG9tZSgpYH0hICBJZiB1bnN1cmUsXG4gKiBkb24ndCBwYXNzIGEgcGFyYW1ldGVyIGFuZCBsZXQgYHJlc29sdmVBcHBpdW1Ib21lKClgIGhhbmRsZSBpdC5cbiAqL1xuZXhwb3J0IGNvbnN0IHJlc29sdmVNYW5pZmVzdFBhdGggPSBfLm1lbW9pemUoXG4gIC8qKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2FwcGl1bUhvbWVdIC0gQXBwaXVtIGhvbWUgZGlyZWN0b3J5XG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZz59XG4gICAqL1xuICBhc3luYyBmdW5jdGlvbiBfcmVzb2x2ZU1hbmlmZXN0UGF0aChhcHBpdW1Ib21lKSB7XG4gICAgLy8gY2FuIHlvdSBcImF3YWl0XCIgaW4gYSBkZWZhdWx0IHBhcmFtZXRlcj8gaXMgdGhhdCBhIGdvb2QgaWRlYT9cbiAgICBhcHBpdW1Ib21lID0gYXBwaXVtSG9tZSA/PyAoYXdhaXQgcmVzb2x2ZUFwcGl1bUhvbWUoKSk7XG4gICAgcmV0dXJuIHBhdGguam9pbihhcHBpdW1Ib21lLCBNQU5JRkVTVF9SRUxBVElWRV9QQVRIKTtcbiAgfVxuKTtcblxuLyoqXG4gKiBAdHlwZWRlZiB7aW1wb3J0KCdyZWFkLXBrZycpLk5vcm1hbGl6ZWRQYWNrYWdlSnNvbn0gTm9ybWFsaXplZFBhY2thZ2VKc29uXG4gKi9cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQU1PLE1BQU1BLG1CQUFtQixHQUFHQyxhQUFBLENBQUtDLE9BQUwsQ0FBYSxJQUFBQyxXQUFBLEdBQWIsRUFBd0IsU0FBeEIsQ0FBNUI7OztBQU1BLE1BQU1DLGlCQUFpQixHQUFHLGlCQUExQjs7O0FBTUEsTUFBTUMsc0JBQXNCLEdB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
@@ -1 +1 @@
1
- {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../lib/fs.js"],"names":[],"mappings":";;;;;yCA2UW,MAAM,eACN,OAAO,KACN,OAAO;;;;IArTjB;;;;OAIG;IACH,yEAOC;IAZD;;;;OAIG;IACH,yEAOC;IAED;;;OAGG;IACH,sEAEC;IAND;;;OAGG;IACH,sEAEC;IAMkB,6FAAmE;;IAQtF;;;;;;;OAOG;IACH,0IAQC;IAhBD;;;;;;;OAOG;IACH,0IAQC;IACD;;;;;;;OAOG;IACH,6GAKC;IAbD;;;;;;;OAOG;IACH,6GAKC;IAED;;;;OAIG;IACH,sEAEC;IAPD;;;;OAIG;IACH,sEAEC;IAKc,uFAAwD;;;IAYtD,uFAAsD;;;IAQvE;;;;;OAKG;IACH,uGASC;IAfD;;;;;OAKG;IACH,uGASC;IAED;;;;;;;OAOG;IACH,gFAEC;IAVD;;;;;;;OAOG;IACH,gFAEC;IAED;;;;OAIG;IACH,gFAEC;IAPD;;;;OAIG;IACH,gFAEC;IAED;;;;;;;OAOG;IACH,4GAmEC;IA3ED;;;;;;;OAOG;IACH,4GAmEC;IACD;;;;;;OAMG;IACH,0FAQC;IAfD;;;;;;OAMG;IACH,0FAQC;IACD;;;;;;OAMG;IACH,8CASC;IAhBD;;;;;;OAMG;IACH,8CASC;;;;;;;;;;;;IAwEoqnB,yKAAkE"}
1
+ {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../lib/fs.js"],"names":[],"mappings":";;;;;yCAoWW,MAAM,eACN,OAAO,KACN,OAAO;;;;IAlUjB;;;;OAIG;IACH,yEAOC;IAZD;;;;OAIG;IACH,yEAOC;IAED;;;OAGG;IACH,sEAEC;IAND;;;OAGG;IACH,sEAEC;IAMkB,6FAAmE;;IAUtF;;;;;;;OAOG;IACH,0IAQC;IAhBD;;;;;;;OAOG;IACH,0IAQC;IACD;;;;;;;OAOG;IACH,6GAKC;IAbD;;;;;;;OAOG;IACH,6GAKC;IAED;;;;OAIG;IACH,sEAEC;IAPD;;;;OAIG;IACH,sEAEC;IAKc,uFAAwD;;;IAYtD,uFAAsD;;;IAQvE;;;;;OAKG;IACH,uGAcC;IApBD;;;;;OAKG;IACH,uGAcC;IAED;;;;;;;OAOG;IACH,gFAEC;IAVD;;;;;;;OAOG;IACH,gFAEC;IAED;;;;OAIG;IACH,gFAEC;IAPD;;;;OAIG;IACH,gFAEC;IAED;;;;;;;OAOG;IACH,4GAyEC;IAjFD;;;;;;;OAOG;IACH,4GAyEC;IACD;;;;;;OAMG;IACH,0FAQC;IAfD;;;;;;OAMG;IACH,0FAQC;IACD;;;;;;OAMG;IACH,8CASC;IAhBD;;;;;;OAMG;IACH,8CASC;;;;;;;;;;;;IAwE89mB,yKAAkE"}
package/build/lib/fs.js CHANGED
@@ -235,4 +235,4 @@ const fs = {
235
235
  exports.fs = fs;
236
236
  var _default = fs;
237
237
  exports.default = _default;
238
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9mcy5qcyJdLCJuYW1lcyI6WyJuY3BBc3luYyIsIkIiLCJwcm9taXNpZnkiLCJuY3AiLCJmaW5kUm9vdENhY2hlZCIsIl8iLCJtZW1vaXplIiwicGtnRGlyIiwic3luYyIsImZzIiwiaGFzQWNjZXNzIiwicGF0aCIsImZzUHJvbWlzZXMiLCJhY2Nlc3MiLCJjb25zdGFudHMiLCJSX09LIiwiZXJyIiwiZXhpc3RzIiwicmltcmFmIiwicmltcmFmSWR4IiwicmltcmFmU3luYyIsIm1rZGlyIiwiZmlsZXBhdGgiLCJvcHRzIiwiY29kZSIsImNvcHlGaWxlIiwic291cmNlIiwiZGVzdGluYXRpb24iLCJFcnJvciIsIm1kNSIsImZpbGVQYXRoIiwiaGFzaCIsIm12Iiwid2hpY2giLCJnbG9iIiwic2FuaXRpemVOYW1lIiwic2FuaXRpemUiLCJhbGdvcml0aG0iLCJyZXNvbHZlIiwicmVqZWN0IiwiZmlsZUhhc2giLCJjcnlwdG8iLCJjcmVhdGVIYXNoIiwicmVhZFN0cmVhbSIsIm9uIiwiZSIsIm1lc3NhZ2UiLCJjaHVuayIsInVwZGF0ZSIsImRpZ2VzdCIsIndhbGsiLCJkaXIiLCJta2RpcnAiLCJyZWN1cnNpdmUiLCJ3YWxrRGlyIiwiY2FsbGJhY2siLCJpc1ZhbGlkUm9vdCIsImVyck1zZyIsInN0YXQiLCJpc0RpcmVjdG9yeSIsIndhbGtlciIsImZpbGVDb3VudCIsImRpcmVjdG9yeUNvdW50IiwidGltZXIiLCJUaW1lciIsInN0YXJ0IiwibGFzdEZpbGVQcm9jZXNzZWQiLCJkZXB0aExpbWl0IiwiaXRlbSIsInBhdXNlIiwic3RhdHMiLCJ0cnkiLCJ0aGVuIiwiZG9uZSIsInJlc3VtZSIsImNhdGNoIiwibG9nIiwid2FybiIsImZpbGUiLCJmaW5hbGx5IiwiZGVidWciLCJnZXREdXJhdGlvbiIsImFzTWlsbGlTZWNvbmRzIiwidG9GaXhlZCIsImRlc3Ryb3kiLCJyZWFkUGFja2FnZUpzb25Gcm9tIiwiY3dkIiwiZmluZFJvb3QiLCJyZWFkUGtnIiwiaXNBYnNvbHV0ZSIsIlR5cGVFcnJvciIsInJlc3VsdCIsImFwcGVuZEZpbGUiLCJjaG1vZCIsImNsb3NlIiwiY3JlYXRlV3JpdGVTdHJlYW0iLCJjcmVhdGVSZWFkU3RyZWFtIiwibHN0YXQiLCJvcGVuIiwib3BlbkZpbGUiLCJyZWFkZGlyIiwicmVhZCIsInJlYWRGaWxlIiwicmVhZGxpbmsiLCJyZWFscGF0aCIsInJlbmFtZSIsInN5bWxpbmsiLCJ1bmxpbmsiLCJ3cml0ZSIsIndyaXRlRmlsZSIsIkZfT0siLCJXX09LIiwiWF9PSyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQSxNQUFNQSxRQUFRLEdBQXlGQyxrQkFBRUMsU0FBRixDQUFZQyxZQUFaLENBQXZHOztBQUNBLE1BQU1DLGNBQWMsR0FBR0MsZ0JBQUVDLE9BQUYsQ0FBVUMsZ0JBQU9DLElBQWpCLENBQXZCOztBQUVBLE1BQU1DLEVBQUUsR0FBRztBQU1ULFFBQU1DLFNBQU4sQ0FBaUJDLElBQWpCLEVBQXVCO0FBQ3JCLFFBQUk7QUFDRixZQUFNQyxhQUFXQyxNQUFYLENBQWtCRixJQUFsQixFQUF3QkcsY0FBVUMsSUFBbEMsQ0FBTjtBQUNELEtBRkQsQ0FFRSxPQUFPQyxHQUFQLEVBQVk7QUFDWixhQUFPLEtBQVA7QUFDRDs7QUFDRCxXQUFPLElBQVA7QUFDRCxHQWJROztBQW1CVCxRQUFNQyxNQUFOLENBQWNOLElBQWQsRUFBb0I7QUFDbEIsV0FBTyxNQUFNRixFQUFFLENBQUNDLFNBQUgsQ0FBYUMsSUFBYixDQUFiO0FBQ0QsR0FyQlE7O0FBMkJUTyxFQUFBQSxNQUFNLEVBQXFGakIsa0JBQUVDLFNBQUYsQ0FBWWlCLGVBQVosQ0EzQmxGO0FBaUNUQyxFQUFBQSxVQUFVLEVBQUVELGdCQUFVWCxJQWpDYjs7QUEyQ1QsUUFBTWEsS0FB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LElBelJQO0FBK1JUL0YsRUFBQUEsSUFBSSxFQUFFRCxjQUFVQyxJQS9SUDtBQXFTVGdHLEVBQUFBLElBQUksRUFBRWpHLGNBQVVpRyxJQXJTUDtBQTJTVEMsRUFBQUEsSUFBSSxFQUFFbEcsY0FBVWtHO0FBM1NQLENBQVg7O2VBK1NldkcsRSIsInNvdXJjZXNDb250ZW50IjpbIi8vIEB0cy1jaGVja1xuXG5pbXBvcnQgQiBmcm9tICdibHVlYmlyZCc7XG5pbXBvcnQgY3J5cHRvIGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBjbG9zZSwgY29uc3RhbnRzLCBjcmVhdGVSZWFkU3RyZWFtLCBjcmVhdGVXcml0ZVN0cmVhbSwgcHJvbWlzZXMgYXMgZnNQcm9taXNlcywgcmVhZCwgd3JpdGUsIG9wZW4gfSBmcm9tICdmcyc7XG5pbXBvcnQgZ2xvYiBmcm9tICdnbG9iJztcbmltcG9ydCBrbGF3IGZyb20gJ2tsYXcnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCBtdiBmcm9tICdtdic7XG5pbXBvcnQgbmNwIGZyb20gJ25jcCc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCBwa2dEaXIgZnJvbSAncGtnLWRpcic7XG5pbXBvcnQgcmVhZFBrZyBmcm9tICdyZWFkLXBrZyc7XG5pbXBvcnQgcmltcmFmSWR4IGZyb20gJ3JpbXJhZic7XG5pbXBvcnQgc2FuaXRpemUgZnJvbSAnc2FuaXRpemUtZmlsZW5hbWUnO1xuaW1wb3J0IHdoaWNoIGZyb20gJ3doaWNoJztcbmltcG9ydCBsb2cgZnJvbSAnLi9sb2dnZXInO1xuaW1wb3J0IFRpbWVyIGZyb20gJy4vdGltaW5nJztcbmltcG9ydCB7IHBsdXJhbGl6ZSB9IGZyb20gJy4vdXRpbCc7XG5cbmNvbnN0IG5jcEFzeW5jID0gLyoqIEB0eXBlIHsoc291cmNlOiBzdHJpbmcsIGRlc3Q6IHN0cmluZywgb3B0czogbmNwLk9wdGlvbnN8dW5kZWZpbmVkKSA9PiBCPHZvaWQ+fSAqLyhCLnByb21pc2lmeShuY3ApKTtcbmNvbnN0IGZpbmRSb290Q2FjaGVkID0gXy5tZW1vaXplKHBrZ0Rpci5zeW5jKTtcblxuY29uc3QgZnMgPSB7XG4gIC8qKlxuICAgKiBSZXNvbHZlcyBgdHJ1ZWAgaWYgYHBhdGhgIGlzIF9yZWFkYWJsZV8sIHdoaWNoIGRpZmZlcnMgZnJvbSBOb2RlLmpzJyBkZWZhdWx0IGJlaGF2aW9yIG9mIFwiY2FuIHdlIHNlZSBpdD9cIlxuICAgKiBAcGFyYW0ge2ltcG9ydCgnZnMnKS5QYXRoTGlrZX0gcGF0aFxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxib29sZWFuPn1cbiAgICovXG4gIGFzeW5jIGhhc0FjY2VzcyAocGF0aCkge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCBmc1Byb21pc2VzLmFjY2VzcyhwYXRoLCBjb25zdGFudHMuUl9PSyk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9LFxuXG4gIC8qKlxuICAgKiBBbGlhcyBmb3Ige0BsaW5rY29kZSBmcy5oYXNBY2Nlc3N9XG4gICAqIEBwYXJhbSB7aW1wb3J0KCdmcycpLlBhdGhMaWtlfSBwYXRoXG4gICAqL1xuICBhc3luYyBleGlzdHMgKHBhdGgpIHtcbiAgICByZXR1cm4gYXdhaXQgZnMuaGFzQWNjZXNzKHBhdGgpO1xuICB9LFxuXG4gIC8qKlxuICAgKiBSZW1vdmUgYSBkaXJlY3RvcnkgYW5kIGFsbCBpdHMgY29udGVudHMsIHJlY3Vyc2l2ZWx5XG4gICAqIEB0b2RvIFJlcGxhY2Ugd2l0aCBgcm0oKWAgZnJvbSBgZnMucHJvbWlzZXNgIHdoZW4gTm9kZS5qcyB2MTIgc3VwcG9ydCBpcyBkcm9wcGVkLlxuICAgKi9cbiAgcmltcmFmOiAvKiogQHR5cGUgeyhkaXJwYXRoOiBzdHJpbmcsIG9wdHM/OiBpbXBvcnQoJ3JpbXJhZicpLk9wdGlvbnMpID0+IFByb21pc2U8dm9pZD59ICovKEIucHJvbWlzaWZ5KHJpbXJhZklkeCkpLFxuXG4gIC8qKlxuICAgKiBBbGlhcyBvZiB7QGxpbmtjb2RlIHJpbXJhZklkeC5zeW5jfVxuICAgKiBAdG9kbyBSZXBsYWNlIHdpdGggYHJtU3luYygpYCBmcm9tIGBmc2Agd2hlbiBOb2RlLmpzIHYxMiBzdXBwb3J0IGlzIGRyb3BwZWQuXG4gICAqL1xuICByaW1yYWZTeW5jOiByaW1yYWZJZHguc3luYyxcblxuICAvKipcbiAgICogTGlrZSBOb2RlLmpzJyBgZnNQcm9taXNlcy5ta2RpcigpYCwgYnV0IHdpbGwgX25vdF8gcmVqZWN0IGlmIHRoZSBkaXJlY3RvcnkgYWxyZWFkeSBleGlzdHMuXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfEJ1ZmZlcnxVUkx9IGZpbGVwYXRoXG4gICAqIEBwYXJhbSB7aW1wb3J0KCdmcycpLk1ha2VEaXJlY3RvcnlPcHRpb25zfSBbb3B0c11cbiAgICogQHJldHVybnMge1Byb21pc2U8c3RyaW5nfHVuZGVmaW5lZD59XG4gICAqIEBzZWUgaHR0cHM6Ly9ub2RlanMub3JnL2FwaS9mcy5odG1sI2ZzcHJvbWlzZXNta2RpcnBhdGgtb3B0aW9uc1xuICAgKi9cbiAgYXN5bmMgbWtkaXIgKGZpbGVwYXRoLCBvcHRzID0ge30pIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGZzUHJvbWlzZXMubWtkaXIoZmlsZXBhdGgsIG9wdHMpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVycj8uY29kZSAhPT0gJ0VFWElTVCcpIHtcbiAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgLyoqXG4gICAqIENvcGllcyBmaWxlcyBfYW5kIGVudGlyZSBkaXJlY3Rvcmllc19cbiAgICogQHBhcmFtIHtzdHJpbmd9IHNvdXJjZSAtIFNvdXJjZSB0byBjb3B5XG4gICAqIEBwYXJhbSB7c3RyaW5nfSBkZXN0aW5hdGlvbiAtIERlc3RpbmF0aW9uIHRvIGNvcHkgdG9cbiAgICogQHBhcmFtIHtuY3AuT3B0aW9uc30gW29wdHNdIC0gQWRkaXRpb25hbCBhcmd1bWVudHMgdG8gcGFzcyB0byBgbmNwYFxuICAgKiBAc2VlIGh0dHBzOi8vbnBtLmltL25jcFxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn1cbiAgICovXG4gIGFzeW5jIGNvcHlGaWxlIChzb3VyY2UsIGRlc3RpbmF0aW9uLCBvcHRzID0ge30pIHtcbiAgICBpZiAoIWF3YWl0IGZzLmhhc0FjY2Vzcyhzb3VyY2UpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZSBmaWxlIGF0ICcke3NvdXJjZX0nIGRvZXMgbm90IGV4aXN0IG9yIGlzIG5vdCBhY2Nlc3NpYmxlYCk7XG4gICAgfVxuICAgIHJldHVybiBhd2FpdCBuY3BBc3luYyhzb3VyY2UsIGRlc3RpbmF0aW9uLCBvcHRzKTtcbiAgfSxcblxuICAvKipcbiAgICogQ3JlYXRlIGFuIE1ENSBoYXNoIG9mIGEgZmlsZS5cbiAgICogQHBhcmFtIHtpbXBvcnQoJ2ZzJykuUGF0aExpa2V9IGZpbGVQYXRoXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZz59XG4gICAqL1xuICBhc3luYyBtZDUgKGZpbGVQYXRoKSB7XG4gICAgcmV0dXJuIGF3YWl0IGZzLmhhc2goZmlsZVBhdGgsICdtZDUnKTtcbiAgfSxcblxuICAvKipcbiAgICogTW92ZSBhIGZpbGVcbiAgICovXG4gIG12OiAvKiogQHR5cGUgeyhmcm9tOiBzdHJpbmcsIHRvOiBzdHJpbmcsIG9wdHM/OiBtdi5PcHRpb25zKSA9PiBCPHZvaWQ+fSAqLyhCLnByb21pc2lmeShtdikpLFxuXG4gIC8qKlxuICAgKiBGaW5kIHBhdGggdG8gYW4gZXhlY3V0YWJsZSBpbiBzeXN0ZW0gYFBBVEhgXG4gICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25wbS9ub2RlLXdoaWNoXG4gICAqL1xuICB3aGljaCxcblxuICAvKipcbiAgICogR2l2ZW4gYSBnbG9iIHBhdHRlcm4sIHJlc29sdmUgd2l0aCBsaXN0IG9mIGZpbGVzIG1hdGNoaW5nIHRoYXQgcGF0dGVyblxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9pc2FhY3Mvbm9kZS1nbG9iXG4gICAqL1xuICBnbG9iOiAvKiogQHR5cGUgeyhwYXR0ZXJuOiBzdHJpbmcsIG9wdHM/OiBnbG9iLklPcHRpb25zKSA9PiBCPHN0cmluZ1tdPn0gKi8oQi5wcm9taXNpZnkoZ2xvYikpLFxuXG4gIC8qKlxuICAgKiBTYW5pdGl6ZSBhIGZpbGVuYW1lXG4gICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3BhcnNoYXAvbm9kZS1zYW5pdGl6ZS1maWxlbmFtZVxuICAgKi9cbiAgc2FuaXRpemVOYW1lOiBzYW5pdGl6ZSxcblxuICAvKipcbiAgICogQ3JlYXRlIGEgaGV4IGRpZ2VzdCBvZiBzb21lIGZpbGUgYXQgYGZpbGVQYXRoYFxuICAgKiBAcGFyYW0ge2ltcG9ydCgnZnMnKS5QYXRoTGlrZX0gZmlsZVBhdGhcbiAgICogQHBhcmFtIHtzdHJpbmd9IFthbGdvcml0aG1dXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZz59XG4gICAqL1xuICBhc3luYyBoYXNoIChmaWxlUGF0aCwgYWxnb3JpdGhtID0gJ3NoYTEnKSB7XG4gICAgcmV0dXJuIGF3YWl0IG5ldyBCKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgIGNvbnN0IGZpbGVIYXNoID0gY3J5cHRvLmNyZWF0ZUhhc2goYWxnb3JpdGhtKTtcbiAgICAgIGNvbnN0IHJlYWRTdHJlYW0gPSBjcmVhdGVSZWFkU3RyZWFtKGZpbGVQYXRoKTtcbiAgICAgIHJlYWRTdHJlYW0ub24oJ2Vycm9yJywgKGUpID0+IHJlamVjdChcbiAgICAgICAgbmV3IEVycm9yKGBDYW5ub3QgY2FsY3VsYXRlICR7YWxnb3JpdGhtfSBoYXNoIGZvciAnJHtmaWxlUGF0aH0nLiBPcmlnaW5hbCBlcnJvcjogJHtlLm1lc3NhZ2V9YCkpKTtcbiAgICAgIHJlYWRTdHJlYW0ub24oJ2RhdGEnLCAoY2h1bmspID0+IGZpbGVIYXNoLnVwZGF0ZShjaHVuaykpO1xuICAgICAgcmVhZFN0cmVhbS5vbignZW5kJywgKCkgPT4gcmVzb2x2ZShmaWxlSGFzaC5kaWdlc3QoJ2hleCcpKSk7XG4gICAgfSk7XG4gIH0sXG5cbiAgLyoqXG4gICAqIFJldHVybnMgYW4gYFdhbGtlcmAgaW5zdGFuY2UsIHdoaWNoIGlzIGEgcmVhZGFibGUgc3RyZWFtIChhbmQgdGh1c2x5IGFuIGFzeW5jIGl0ZXJhdG9yKS5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGRpciAtIERpciB0byBzdGFydCB3YWxraW5nIGF0XG4gICAqIEBwYXJhbSB7aW1wb3J0KCdrbGF3JykuT3B0aW9uc30gW29wdHNdXG4gICAqIEByZXR1cm5zIHtpbXBvcnQoJ2tsYXcnKS5XYWxrZXJ9XG4gICAqIEBzZWUgaHR0cHM6Ly93d3cubnBtanMuY29tL3BhY2thZ2Uva2xhd1xuICAgKi9cbiAgd2FsayAoZGlyLCBvcHRzKSB7XG4gICAgcmV0dXJuIGtsYXcoZGlyLCBvcHRzKTtcbiAgfSxcblxuICAvKipcbiAgICogUmVjdXJzaXZlbHkgY3JlYXRlIGEgZGlyZWN0b3J5LlxuICAgKiBAcGFyYW0ge2ltcG9ydCgnZnMnKS5QYXRoTGlrZX0gZGlyXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZ3x1bmRlZmluZWQ+fVxuICAgKi9cbiAgYXN5bmMgbWtkaXJwIChkaXIpIHtcbiAgICByZXR1cm4gYXdhaXQgZnMubWtkaXIoZGlyLCB7cmVjdXJzaXZlOiB0cnVlfSk7XG4gIH0sXG5cbiAgLyoqXG4gICAqIFdhbGtzIGEgZGlyZWN0b3J5IGdpdmVuIGFjY29yZGluZyB0byB0aGUgcGFyYW1ldGVycyBnaXZlbi4gVGhlIGNhbGxiYWNrIHdpbGwgYmUgaW52b2tlZCB3aXRoIGEgcGF0aCBqb2luZWQgd2l0aCB0aGUgZGlyIHBhcmFtZXRlclxuICAgKiBAcGFyYW0ge3N0cmluZ30gZGlyIERpcmVjdG9yeSBwYXRoIHdoZXJlIHdlIHdpbGwgc3RhcnQgd2Fsa2luZ1xuICAgKiBAcGFyYW0ge2Jvb2xlYW59IHJlY3Vyc2l2ZSBTZXQgaXQgdG8gdHJ1ZSBpZiB5b3Ugd2FudCB0byBjb250aW51ZSB3YWxraW5nIHN1YiBkaXJlY3Rvcmllc1xuICAgKiBAcGFyYW0ge1dhbGtEaXJDYWxsYmFja30gY2FsbGJhY2sgVGhlIGNhbGxiYWNrIHRvIGJlIGNhbGxlZCB3aGVuIGEgbmV3IHBhdGggaXMgZm91bmRcbiAgICogQHRocm93cyB7RXJyb3J9IElmIHRoZSBgZGlyYCBwYXJhbWV0ZXIgY29udGFpbnMgYSBwYXRoIHRvIGFuIGludmFsaWQgZm9sZGVyXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZz8+fSByZXR1cm5zIHRoZSBmb3VuZCBwYXRoIG9yIG51bGwgaWYgdGhlIGl0ZW0gd2FzIG5vdCBmb3VuZFxuICAgKi9cbiAgYXN5bmMgd2Fsa0RpciAoZGlyLCByZWN1cnNpdmUsIGNhbGxiYWNrKSB7IC8vZXNsaW50LWRpc2FibGUtbGluZSBwcm9taXNlL3ByZWZlci1hd2FpdC10by1jYWxsYmFja3NcbiAgICBsZXQgaXNWYWxpZFJvb3QgPSBmYWxzZTtcbiAgICBsZXQgZXJyTXNnID0gbnVsbDtcbiAgICB0cnkge1xuICAgICAgaXNWYWxpZFJvb3QgPSAoYXdhaXQgZnMuc3RhdChkaXIpKS5pc0RpcmVjdG9yeSgpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGVyck1zZyA9IGUubWVzc2FnZTtcbiAgICB9XG4gICAgaWYgKCFpc1ZhbGlkUm9vdCkge1xuICAgICAgdGhyb3cgRXJyb3IoYCcke2Rpcn0nIGlzIG5vdCBhIHZhbGlkIHJvb3QgZGlyZWN0b3J5YCArIChlcnJNc2cgPyBgLiBPcmlnaW5hbCBlcnJvcjogJHtlcnJNc2d9YCA6ICcnKSk7XG4gICAgfVxuXG4gICAgbGV0IHdhbGtlcjtcbiAgICBsZXQgZmlsZUNvdW50ID0gMDtcbiAgICBsZXQgZGlyZWN0b3J5Q291bnQgPSAwO1xuICAgIGNvbnN0IHRpbWVyID0gbmV3IFRpbWVyKCkuc3RhcnQoKTtcbiAgICByZXR1cm4gYXdhaXQgbmV3IEIoZnVuY3Rpb24gKHJlc29sdmUsIHJlamVjdCkge1xuICAgICAgbGV0IGxhc3RGaWxlUHJvY2Vzc2VkID0gQi5yZXNvbHZlKCk7XG4gICAgICB3YWxrZXIgPSBrbGF3KGRpciwge1xuICAgICAgICBkZXB0aExpbWl0OiByZWN1cnNpdmUgPyAtMSA6IDAsXG4gICAgICB9KTtcbiAgICAgIHdhbGtlci5vbignZGF0YScsIGZ1bmN0aW9uIChpdGVtKSB7XG4gICAgICAgIHdhbGtlci5wYXVzZSgpO1xuXG4gICAgICAgIGlmICghaXRlbS5zdGF0cy5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICAgICAgZmlsZUNvdW50Kys7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgZGlyZWN0b3J5Q291bnQrKztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9taXNlL3ByZWZlci1hd2FpdC10by1jYWxsYmFja3NcbiAgICAgICAgbGFzdEZpbGVQcm9jZXNzZWQgPSBCLnRyeShhc3luYyAoKSA9PiBhd2FpdCBjYWxsYmFjayhpdGVtLnBhdGgsIGl0ZW0uc3RhdHMuaXNEaXJlY3RvcnkoKSkpXG4gICAgICAgICAgLnRoZW4oZnVuY3Rpb24gKGRvbmUgPSBmYWxzZSkge1xuICAgICAgICAgICAgaWYgKGRvbmUpIHtcbiAgICAgICAgICAgICAgcmVzb2x2ZShpdGVtLnBhdGgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgd2Fsa2VyLnJlc3VtZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pXG4gICAgICAgICAgLmNhdGNoKHJlamVjdCk7XG4gICAgICB9KVxuICAgICAgLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlcnIsIGl0ZW0pIHtcbiAgICAgICAgbG9nLndhcm4oYEdvdCBhbiBlcnJvciB3aGlsZSB3YWxraW5nICcke2l0ZW0ucGF0aH0nOiAke2Vyci5tZXNzYWdlfWApO1xuICAgICAgICAvLyBrbGF3IGNhbm5vdCBnZXQgYmFjayBmcm9tIGFuIEVOT0VOVCBlcnJvclxuICAgICAgICBpZiAoZXJyLmNvZGUgPT09ICdFTk9FTlQnKSB7XG4gICAgICAgICAgbG9nLndhcm4oJ0FsbCBmaWxlcyBtYXkgbm90IGhhdmUgYmVlbiBhY2Nlc3NlZCcpO1xuICAgICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICAgLm9uKCdlbmQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgIGxhc3RGaWxlUHJvY2Vzc2VkXG4gICAgICAgICAgLnRoZW4oKGZpbGUpID0+IHtcbiAgICAgICAgICAgIHJlc29sdmUoLyoqIEB0eXBlIHtzdHJpbmd8dW5kZWZpbmVkfSAqLyhmaWxlKSA/PyBudWxsKTtcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5jYXRjaChmdW5jdGlvbiAoZXJyKSB7XG4gICAgICAgICAgICBsb2cud2FybihgVW5leHBlY3RlZCBlcnJvcjogJHtlcnIubWVzc2FnZX1gKTtcbiAgICAgICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSkuZmluYWxseShmdW5jdGlvbiAoKSB7XG4gICAgICBsb2cuZGVidWcoYFRyYXZlcnNlZCAke3BsdXJhbGl6ZSgnZGlyZWN0b3J5JywgZGlyZWN0b3J5Q291bnQsIHRydWUpfSBgICtcbiAgICAgICAgYGFuZCAke3BsdXJhbGl6ZSgnZmlsZScsIGZpbGVDb3VudCwgdHJ1ZSl9IGAgK1xuICAgICAgICBgaW4gJHt0aW1lci5nZXREdXJhdGlvbigpLmFzTWlsbGlTZWNvbmRzLnRvRml4ZWQoMCl9bXNgKTtcbiAgICAgIGlmICh3YWxrZXIpIHtcbiAgICAgICAgd2Fsa2VyLmRlc3Ryb3koKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfSxcbiAgLyoqXG4gICAqIFJlYWRzIHRoZSBjbG9zZXN0IGBwYWNrYWdlLmpzb25gIGZpbGUgZnJvbSBhYnNvbHV0ZSBwYXRoIGBkaXJgLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZGlyIC0gRGlyZWN0b3J5IHRvIHNlYXJjaCBmcm9tXG4gICAqIEBwYXJhbSB7aW1wb3J0KCdyZWFkLXBrZycpLk9wdGlvbnN9IFtvcHRzXSAtIEFkZGl0aW9uYWwgb3B0aW9ucyBmb3IgYHJlYWQtcGtnYFxuICAgKiBAdGhyb3dzIHtFcnJvcn0gSWYgdGhlcmUgd2VyZSBwcm9ibGVtcyBmaW5kaW5nIG9yIHJlYWRpbmcgYSBgcGFja2FnZS5qc29uYCBmaWxlXG4gICAqIEByZXR1cm5zIHtvYmplY3R9IEEgcGFyc2VkIGBwYWNrYWdlLmpzb25gXG4gICAqL1xuICByZWFkUGFja2FnZUpzb25Gcm9tIChkaXIsIG9wdHMgPSB7fSkge1xuICAgIGNvbnN0IGN3ZCA9IGZzLmZpbmRSb290KGRpcik7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiByZWFkUGtnLnN5bmMoey4uLm9wdHMsIGN3ZH0pO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgZXJyLm1lc3NhZ2UgPSBgRmFpbGVkIHRvIHJlYWQgYSBcXGBwYWNrYWdlLmpzb25cXGAgZnJvbSBkaXIgXFxgJHtkaXJ9XFxgOlxcblxcbiR7ZXJyLm1lc3NhZ2V9YDtcbiAgICAgIHRocm93IGVycjtcbiAgICB9XG4gIH0sXG4gIC8qKlxuICAgKiBGaW5kcyB0aGUgcHJvamVjdCByb290IGRpcmVjdG9yeSBmcm9tIGBkaXJgLlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZGlyIC0gRGlyZWN0b3J5IHRvIHNlYXJjaCBmcm9tXG4gICAqIEB0aHJvd3Mge1R5cGVFcnJvcn0gSWYgYGRpcmAgaXMgbm90IGEgbm9uZW1wdHkgc3RyaW5nIG9yIHJlbGF0aXZlIHBhdGhcbiAgICogQHRocm93cyB7RXJyb3J9IElmIHRoZXJlIHdlcmUgcHJvYmxlbXMgZmluZGluZyB0aGUgcHJvamVjdCByb290XG4gICAqIEByZXR1cm5zIHtzdHJpbmd9IFRoZSBjbG9zZXNldCBwYXJlbnQgZGlyIGNvbnRhaW5pbmcgYHBhY2thZ2UuanNvbmBcbiAgICovXG4gIGZpbmRSb290IChkaXIpIHtcbiAgICBpZiAoIWRpciB8fCAhcGF0aC5pc0Fic29sdXRlKGRpcikpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2BmaW5kUm9vdCgpYCBtdXN0IGJlIHByb3ZpZGVkIGEgbm9uLWVtcHR5LCBhYnNvbHV0ZSBwYXRoJyk7XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdCA9IGZpbmRSb290Q2FjaGVkKGRpcik7XG4gICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgXFxgZmluZFJvb3QoKVxcYCBjb3VsZCBub3QgZmluZCBcXGBwYWNrYWdlLmpzb25cXGAgZnJvbSAke2Rpcn1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfSxcblxuICAvLyBhZGQgdGhlIHN1cHBvcnRlZCBgZnNgIGZ1bmN0aW9uc1xuICBhY2Nlc3M6IGZzUHJvbWlzZXMuYWNjZXNzLFxuICBhcHBlbmRGaWxlOiBmc1Byb21pc2VzLmFwcGVuZEZpbGUsXG4gIGNobW9kOiBmc1Byb21pc2VzLmNobW9kLFxuICBjbG9zZTogQi5wcm9taXNpZnkoY2xvc2UpLFxuICBjb25zdGFudHMsXG4gIGNyZWF0ZVdyaXRlU3RyZWFtLFxuICBjcmVhdGVSZWFkU3RyZWFtLFxuICBsc3RhdDogZnNQcm9taXNlcy5sc3RhdCxcbiAgLyoqXG4gICAqIFdhcm5pbmc6IHRoaXMgaXMgYSBwcm9taXNpZmllZCB7QGxpbmtjb2RlIG9wZW4gZnMub3Blbn0uXG4gICAqIEl0IHJlc29sdmVzIHcvYSBmaWxlIGRlc2NyaXB0b3IgaW5zdGVhZCBvZiBhIHtAbGlua2NvZGUgZnNQcm9taXNlcy5GaWxlSGFuZGxlIEZpbGVIYW5kbGV9IG9iamVjdCwgYXMge0BsaW5rY29kZSBmc1Byb21pc2VzLm9wZW59IGRvZXMuIFVzZSB7QGxpbmtjb2RlIGZzLm9wZW5GaWxlfSBpZiB5b3Ugd2FudCBhIGBGaWxlSGFuZGxlYC5cbiAgICogQHR5cGUgeyhwYXRoOiBpbXBvcnQoJ2ZzJykuUGF0aExpa2UsIGZsYWdzOiBpbXBvcnQoJ2ZzJykuT3Blbk1vZGUsIG1vZGU/OiBpbXBvcnQoJ2ZzJykuTW9kZSkgPT4gUHJvbWlzZTxudW1iZXI+fVxuICAgKi9cbiAgb3BlbjogQi5wcm9taXNpZnkob3BlbiksXG4gIG9wZW5GaWxlOiBmc1Byb21pc2VzLm9wZW4sXG4gIHJlYWRkaXI6IGZzUHJvbWlzZXMucmVhZGRpcixcbiAgcmVhZDogQi5wcm9taXNpZnkocmVhZCksXG4gIHJlYWRGaWxlOiBmc1Byb21pc2VzLnJlYWRGaWxlLFxuICByZWFkbGluazogZnNQcm9taXNlcy5yZWFkbGluayxcbiAgcmVhbHBhdGg6IGZzUHJvbWlzZXMucmVhbHBhdGgsXG4gIHJlbmFtZTogZnNQcm9taXNlcy5yZW5hbWUsXG4gIHN0YXQ6IGZzUHJvbWlzZXMuc3RhdCxcbiAgc3ltbGluazogZnNQcm9taXNlcy5zeW1saW5rLFxuICB1bmxpbms6IGZzUHJvbWlzZXMudW5saW5rLFxuICB3cml0ZTogQi5wcm9taXNpZnkod3JpdGUpLFxuICB3cml0ZUZpbGU6IGZzUHJvbWlzZXMud3JpdGVGaWxlLFxuXG4gIC8vIGRlcHJlY2F0ZWQgcHJvcHNcblxuICAvKipcbiAgICogVXNlIGBjb25zdGFudHMuRl9PS2AgaW5zdGVhZC5cbiAgICogQGRlcHJlY2F0ZWRcbiAgICovXG4gIEZfT0s6IGNvbnN0YW50cy5GX09LLFxuXG4gIC8qKlxuICAgKiBVc2UgYGNvbnN0YW50cy5SX09LYCBpbnN0ZWFkLlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKi9cbiAgUl9PSzogY29uc3RhbnRzLlJfT0ssXG5cbiAgLyoqXG4gICAqIFVzZSBgY29uc3RhbnRzLldfT0tgIGluc3RlYWQuXG4gICAqIEBkZXByZWNhdGVkXG4gICAqL1xuICBXX09LOiBjb25zdGFudHMuV19PSyxcblxuICAvKipcbiAgICogVXNlIGBjb25zdGFudHMuWF9PS2AgaW5zdGVhZC5cbiAgICogQGRlcHJlY2F0ZWRcbiAgICovXG4gIFhfT0s6IGNvbnN0YW50cy5YX09LXG59O1xuXG5leHBvcnQgeyBmcyB9O1xuZXhwb3J0IGRlZmF1bHQgZnM7XG5cbi8qKlxuICogVGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHdoaWNoIHdpbGwgYmUgY2FsbGVkIGR1cmluZyB0aGUgZGlyZWN0b3J5IHdhbGtpbmdcbiAqIEBjYWxsYmFjayBXYWxrRGlyQ2FsbGJhY2tcbiAqIEBwYXJhbSB7c3RyaW5nfSBpdGVtUGF0aCBUaGUgcGF0aCBvZiB0aGUgZmlsZSBvciBmb2xkZXJcbiAqIEBwYXJhbSB7Ym9vbGVhbn0gaXNEaXJlY3RvcnkgU2hvd3MgaWYgaXQgaXMgYSBkaXJlY3Rvcnkgb3IgYSBmaWxlXG4gKiBAcmV0dXJuIHtib29sZWFufSByZXR1cm4gdHJ1ZSBpZiB5b3Ugd2FudCB0byBzdG9wIHdhbGtpbmdcbiovXG5cbi8qKlxuICogQHR5cGVkZWYge2ltcG9ydCgnZ2xvYicpfSBnbG9iXG4gKiBAdHlwZWRlZiB7aW1wb3J0KCdtdicpfSBtdlxuICovXG4iXX0=
238
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJuY3BBc3luYyIsIkIiLCJwcm9taXNpZnkiLCJuY3AiLCJmaW5kUm9vdENhY2hlZCIsIl8iLCJtZW1vaXplIiwicGtnRGlyIiwic3luYyIsImZzIiwiaGFzQWNjZXNzIiwicGF0aCIsImZzUHJvbWlzZXMiLCJhY2Nlc3MiLCJjb25zdGFudHMiLCJSX09LIiwiZXJyIiwiZXhpc3RzIiwicmltcmFmIiwicmltcmFmSWR4IiwicmltcmFmU3luYyIsIm1rZGlyIiwiZmlsZXBhdGgiLCJvcHRzIiwiY29kZSIsImNvcHlGaWxlIiwic291cmNlIiwiZGVzdGluYXRpb24iLCJFcnJvciIsIm1kNSIsImZpbGVQYXRoIiwiaGFzaCIsIm12Iiwid2hpY2giLCJnbG9iIiwic2FuaXRpemVOYW1lIiwic2FuaXRpemUiLCJhbGdvcml0aG0iLCJyZXNvbHZlIiwicmVqZWN0IiwiZmlsZUhhc2giLCJjcnlwdG8iLCJjcmVhdGVIYXNoIiwicmVhZFN0cmVhbSIsImNyZWF0ZVJlYWRTdHJlYW0iLCJvbiIsImUiLCJtZXNzYWdlIiwiY2h1bmsiLCJ1cGRhdGUiLCJkaWdlc3QiLCJ3YWxrIiwiZGlyIiwia2xhdyIsIm1rZGlycCIsInJlY3Vyc2l2ZSIsIndhbGtEaXIiLCJjYWxsYmFjayIsImlzVmFsaWRSb290IiwiZXJyTXNnIiwic3RhdCIsImlzRGlyZWN0b3J5Iiwid2Fsa2VyIiwiZmlsZUNvdW50IiwiZGlyZWN0b3J5Q291bnQiLCJ0aW1lciIsIlRpbWVyIiwic3RhcnQiLCJsYXN0RmlsZVByb2Nlc3NlZCIsImRlcHRoTGltaXQiLCJpdGVtIiwicGF1c2UiLCJzdGF0cyIsInRyeSIsInRoZW4iLCJkb25lIiwicmVzdW1lIiwiY2F0Y2giLCJsb2ciLCJ3YXJuIiwiZmlsZSIsImZpbmFsbHkiLCJkZWJ1ZyIsInBsdXJhbGl6ZSIsImdldER1cmF0aW9uIiwiYXNNaWxsaVNlY29uZHMiLCJ0b0ZpeGVkIiwiZGVzdHJveSIsInJlYWRQYWNrYWdlSnNvbkZyb20iLCJjd2QiLCJmaW5kUm9vdCIsInJlYWRQa2ciLCJpc0Fic29sdXRlIiwiVHlwZUVycm9yIiwicmVzdWx0IiwiYXBwZW5kRmlsZSIsImNobW9kIiwiY2xvc2UiLCJjcmVhdGVXcml0ZVN0cmVhbSIsImxzdGF0Iiwib3BlbiIsIm9wZW5GaWxlIiwicmVhZGRpciIsInJlYWQiLCJyZWFkRmlsZSIsInJlYWRsaW5rIiwicmVhbHBhdGgiLCJyZW5hbWUiLCJzeW1saW5rIiwidW5saW5rIiwid3JpdGUiLCJ3cml0ZUZpbGUiLCJGX09LIiwiV19PSyIsIlhfT0siXSwic291cmNlcyI6WyIuLi8uLi9saWIvZnMuanMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQHRzLWNoZWNrXG5cbmltcG9ydCBCIGZyb20gJ2JsdWViaXJkJztcbmltcG9ydCBjcnlwdG8gZnJvbSAnY3J5cHRvJztcbmltcG9ydCB7XG4gIGNsb3NlLFxuICBjb25zdGFudHMsXG4gIGNyZWF0ZVJlYWRTdHJlYW0sXG4gIGNyZWF0ZVdyaXRlU3RyZWFtLFxuICBwcm9taXNlcyBhcyBmc1Byb21pc2VzLFxuICByZWFkLFxuICB3cml0ZSxcbiAgb3Blbixcbn0gZnJvbSAnZnMnO1xuaW1wb3J0IGdsb2IgZnJvbSAnZ2xvYic7XG5pbXBvcnQga2xhdyBmcm9tICdrbGF3JztcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgbXYgZnJvbSAnbXYnO1xuaW1wb3J0IG5jcCBmcm9tICduY3AnO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgcGtnRGlyIGZyb20gJ3BrZy1kaXInO1xuaW1wb3J0IHJlYWRQa2cgZnJvbSAncmVhZC1wa2cnO1xuaW1wb3J0IHJpbXJhZklkeCBmcm9tICdyaW1yYWYnO1xuaW1wb3J0IHNhbml0aXplIGZyb20gJ3Nhbml0aXplLWZpbGVuYW1lJztcbmltcG9ydCB3aGljaCBmcm9tICd3aGljaCc7XG5pbXBvcnQgbG9nIGZyb20gJy4vbG9nZ2VyJztcbmltcG9ydCBUaW1lciBmcm9tICcuL3RpbWluZyc7XG5pbXBvcnQge3BsdXJhbGl6ZX0gZnJvbSAnLi91dGlsJztcblxuY29uc3QgbmNwQXN5bmMgPVxuICAvKiogQHR5cGUgeyhzb3VyY2U6IHN0cmluZywgZGVzdDogc3RyaW5nLCBvcHRzOiBuY3AuT3B0aW9uc3x1bmRlZmluZWQpID0+IEI8dm9pZD59ICovIChcbiAgICBCLnByb21pc2lmeShuY3ApXG4gICk7XG5jb25zdCBmaW5kUm9vdENhY2hlZCA9IF8ubWVtb2l6ZShwa2dEaXIuc3luYyk7XG5cbmNvbnN0IGZzID0ge1xuICAvKipcbiAgICogUmVzb2x2ZXMgYHRydWVgIGlmIGBwYXRoYCBpcyBfcmVhZGFibGVfLCB3aGljaCBkaWZmZXJzIGZyb20gTm9kZS5qcycgZGVmYXVsdCBiZWhhdmlvciBvZiBcImNhbiB3ZSBzZWUgaXQ/XCJcbiAgICogQHBhcmFtIHtpbXBvcnQoJ2ZzJykuUGF0aExpa2V9IHBhdGhcbiAgICogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59XG4gICAqL1xuICBhc3luYyBoYXNBY2Nlc3MocGF0aCkge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCBmc1Byb21pc2VzLmFjY2VzcyhwYXRoLCBjb25zdGFudHMuUl9PSyk7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9LFxuXG4gIC8qKlxuICAgKiBBbGlhcyBmb3Ige0BsaW5rY29kZSBmcy5oYXNBY2Nlc3N9XG4gICAqIEBwYXJhbSB7aW1wb3J0KCdmcycpLlBhdGhMaWtlfSBwYXRoXG4gICAqL1xuICBhc3luYyBleGlzdHMocGF0aCkge1xuICAgIHJldHVybiBhd2FpdCBmcy5oYXNBY2Nlc3MocGF0aCk7XG4gIH0sXG5cbiAgLyoqXG4gICAqIFJlbW92ZSBhIGRpcmVjdG9yeSBhbmQgYWxsIGl0cyBjb250ZW50cywgcmVjdXJzaXZlbHlcbiAgICogQHRvZG8gUmVwbGFjZSB3aXRoIGBybSgpYCBmcm9tIGBmcy5wcm9taXNlc2Agd2hlbiBOb2RlLmpzIHYxMiBzdXBwb3J0IGlzIGRyb3BwZWQuXG4gICAqL1xuICByaW1yYWY6IC8qKiBAdHlwZSB7KGRpcnBhdGg6IHN0cmluZywgb3B0cz86IGltcG9ydCgncmltcmFmJykuT3B0aW9ucykgPT4gUHJvbWlzZTx2b2lkPn0gKi8gKFxuICAgIEIucHJvbWlzaWZ5KHJpbXJhZklkeClcbiAgKSxcblxuICAvKipcbiAgICogQWxpYXMgb2Yge0BsaW5rY29kZSByaW1yYWZJZHguc3luY31cbiAgICogQHRvZG8gUmVwbGFjZSB3aXRoIGBybVN5bmMoKWAgZnJvbSBgZnNgIHdoZW4gTm9kZS5qcyB2MTIgc3VwcG9ydCBpcyBkcm9wcGVkLlxuICAgKi9cbiAgcmltcmFmU3luYzogcmltcmFmSWR4LnN5bmMsXG5cbiAgLyoqXG4gICAqIExpa2UgTm9kZS5qcycgYGZzUHJvbWlzZXMubWtkaXIoKWAsIGJ1dCB3aWxsIF9ub3RfIHJlamVjdCBpZiB0aGUgZGlyZWN0b3J5IGFscmVhZHkgZXhpc3RzLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ3xCdWZmZXJ8VVJMfSBmaWxlcGF0aFxuICAgKiBAcGFyYW0ge2ltcG9ydCgnZnMnKS5NYWtlRGlyZWN0b3J5T3B0aW9uc30gW29wdHNdXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZ3x1bmRlZmluZWQ+fVxuICAgKiBAc2VlIGh0dHBzOi8vbm9kZWpzLm9yZy9hcGkvZnMuaHRtbCNmc3Byb21pc2VzbWtkaXJwYXRoLW9wdGlvbnNcbiAgICovXG4gIGFzeW5jIG1rZGlyKGZpbGVwYXRoLCBvcHRzID0ge30pIHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIGF3YWl0IGZzUHJvbWlzZXMubWtkaXIoZmlsZXBhdGgsIG9wdHMpO1xuICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgaWYgKGVycj8uY29kZSAhPT0gJ0VFWElTVCcpIHtcbiAgICAgICAgdGhyb3cgZXJyO1xuICAgICAgfVxuICAgIH1cbiAgfSxcbiAgLyoqXG4gICAqIENvcGllcyBmaWxlcyBfYW5kIGVudGlyZSBkaXJlY3Rvcmllc19cbiAgICogQHBhcmFtIHtzdHJpbmd9IHNvdXJjZSAtIFNvdXJjZSB0byBjb3B5XG4gICAqIEBwYXJhbSB7c3RyaW5nfSBkZXN0aW5hdGlvbiAtIERlc3RpbmF0aW9uIHRvIGNvcHkgdG9cbiAgICogQHBhcmFtIHtuY3AuT3B0aW9uc30gW29wdHNdIC0gQWRkaXRpb25hbCBhcmd1bWVudHMgdG8gcGFzcyB0byBgbmNwYFxuICAgKiBAc2VlIGh0dHBzOi8vbnBtLmltL25jcFxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTx2b2lkPn1cbiAgICovXG4gIGFzeW5jIGNvcHlGaWxlKHNvdXJjZSwgZGVzdGluYXRpb24sIG9wdHMgPSB7fSkge1xuICAgIGlmICghKGF3YWl0IGZzLmhhc0FjY2Vzcyhzb3VyY2UpKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBUaGUgZmlsZSBhdCAnJHtzb3VyY2V9JyBkb2VzIG5vdCBleGlzdCBvciBpcyBub3QgYWNjZXNzaWJsZWApO1xuICAgIH1cbiAgICByZXR1cm4gYXdhaXQgbmNwQXN5bmMoc291cmNlLCBkZXN0aW5hdGlvbiwgb3B0cyk7XG4gIH0sXG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhbiBNRDUgaGFzaCBvZiBhIGZpbGUuXG4gICAqIEBwYXJhbSB7aW1wb3J0KCdmcycpLlBhdGhMaWtlfSBmaWxlUGF0aFxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxzdHJpbmc+fVxuICAgKi9cbiAgYXN5bmMgbWQ1KGZpbGVQYXRoKSB7XG4gICAgcmV0dXJuIGF3YWl0IGZzLmhhc2goZmlsZVBhdGgsICdtZDUnKTtcbiAgfSxcblxuICAvKipcbiAgICogTW92ZSBhIGZpbGVcbiAgICovXG4gIG12OiAvKiogQHR5cGUgeyhmcm9tOiBzdHJpbmcsIHRvOiBzdHJpbmcsIG9wdHM/OiBtdi5PcHRpb25zKSA9PiBCPHZvaWQ+fSAqLyAoQi5wcm9taXNpZnkobXYpKSxcblxuICAvKipcbiAgICogRmluZCBwYXRoIHRvIGFuIGV4ZWN1dGFibGUgaW4gc3lzdGVtIGBQQVRIYFxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9ucG0vbm9kZS13aGljaFxuICAgKi9cbiAgd2hpY2gsXG5cbiAgLyoqXG4gICAqIEdpdmVuIGEgZ2xvYiBwYXR0ZXJuLCByZXNvbHZlIHdpdGggbGlzdCBvZiBmaWxlcyBtYXRjaGluZyB0aGF0IHBhdHRlcm5cbiAgICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vaXNhYWNzL25vZGUtZ2xvYlxuICAgKi9cbiAgZ2xvYjogLyoqIEB0eXBlIHsocGF0dGVybjogc3RyaW5nLCBvcHRzPzogZ2xvYi5JT3B0aW9ucykgPT4gQjxzdHJpbmdbXT59ICovIChCLnByb21pc2lmeShnbG9iKSksXG5cbiAgLyoqXG4gICAqIFNhbml0aXplIGEgZmlsZW5hbWVcbiAgICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vcGFyc2hhcC9ub2RlLXNhbml0aXplLWZpbGVuYW1lXG4gICAqL1xuICBzYW5pdGl6ZU5hbWU6IHNhbml0aXplLFxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBoZXggZGlnZXN0IG9mIHNvbWUgZmlsZSBhdCBgZmlsZVBhdGhgXG4gICAqIEBwYXJhbSB7aW1wb3J0KCdmcycpLlBhdGhMaWtlfSBmaWxlUGF0aFxuICAgKiBAcGFyYW0ge3N0cmluZ30gW2FsZ29yaXRobV1cbiAgICogQHJldHVybnMge1Byb21pc2U8c3RyaW5nPn1cbiAgICovXG4gIGFzeW5jIGhhc2goZmlsZVBhdGgsIGFsZ29yaXRobSA9ICdzaGExJykge1xuICAgIHJldHVybiBhd2FpdCBuZXcgQigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICBjb25zdCBmaWxlSGFzaCA9IGNyeXB0by5jcmVhdGVIYXNoKGFsZ29yaXRobSk7XG4gICAgICBjb25zdCByZWFkU3RyZWFtID0gY3JlYXRlUmVhZFN0cmVhbShmaWxlUGF0aCk7XG4gICAgICByZWFkU3RyZWFtLm9uKCdlcnJvcicsIChlKSA9PlxuICAgICAgICByZWplY3QoXG4gICAgICAgICAgbmV3IEVycm9yKFxuICAgICAgICAgICAgYENhbm5vdCBjYWxjdWxhdGUgJHthbGdvcml0aG19IGhhc2ggZm9yICcke2ZpbGVQYXRofScuIE9yaWdpbmFsIGVycm9yOiAke2UubWVzc2FnZX1gXG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICApO1xuICAgICAgcmVhZFN0cmVhbS5vbignZGF0YScsIChjaHVuaykgPT4gZmlsZUhhc2gudXBkYXRlKGNodW5rKSk7XG4gICAgICByZWFkU3RyZWFtLm9uKCdlbmQnLCAoKSA9PiByZXNvbHZlKGZpbGVIYXNoLmRpZ2VzdCgnaGV4JykpKTtcbiAgICB9KTtcbiAgfSxcblxuICAvKipcbiAgICogUmV0dXJucyBhbiBgV2Fsa2VyYCBpbnN0YW5jZSwgd2hpY2ggaXMgYSByZWFkYWJsZSBzdHJlYW0gKGFuZCB0aHVzbHkgYW4gYXN5bmMgaXRlcmF0b3IpLlxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gZGlyIC0gRGlyIHRvIHN0YXJ0IHdhbGtpbmcgYXRcbiAgICogQHBhcmFtIHtpbXBvcnQoJ2tsYXcnKS5PcHRpb25zfSBbb3B0c11cbiAgICogQHJldHVybnMge2ltcG9ydCgna2xhdycpLldhbGtlcn1cbiAgICogQHNlZSBodHRwczovL3d3dy5ucG1qcy5jb20vcGFja2FnZS9rbGF3XG4gICAqL1xuICB3YWxrKGRpciwgb3B0cykge1xuICAgIHJldHVybiBrbGF3KGRpciwgb3B0cyk7XG4gIH0sXG5cbiAgLyoqXG4gICAqIFJlY3Vyc2l2ZWx5IGNyZWF0ZSBhIGRpcmVjdG9yeS5cbiAgICogQHBhcmFtIHtpbXBvcnQoJ2ZzJykuUGF0aExpa2V9IGRpclxuICAgKiBAcmV0dXJucyB7UHJvbWlzZTxzdHJpbmd8dW5kZWZpbmVkPn1cbiAgICovXG4gIGFzeW5jIG1rZGlycChkaXIpIHtcbiAgICByZXR1cm4gYXdhaXQgZnMubWtkaXIoZGlyLCB7cmVjdXJzaXZlOiB0cnVlfSk7XG4gIH0sXG5cbiAgLyoqXG4gICAqIFdhbGtzIGEgZGlyZWN0b3J5IGdpdmVuIGFjY29yZGluZyB0byB0aGUgcGFyYW1ldGVycyBnaXZlbi4gVGhlIGNhbGxiYWNrIHdpbGwgYmUgaW52b2tlZCB3aXRoIGEgcGF0aCBqb2luZWQgd2l0aCB0aGUgZGlyIHBhcmFtZXRlclxuICAgKiBAcGFyYW0ge3N0cmluZ30gZGlyIERpcmVjdG9yeSBwYXRoIHdoZXJlIHdlIHdpbGwgc3RhcnQgd2Fsa2luZ1xuICAgKiBAcGFyYW0ge2Jvb2xlYW59IHJlY3Vyc2l2ZSBTZXQgaXQgdG8gdHJ1ZSBpZiB5b3Ugd2FudCB0byBjb250aW51ZSB3YWxraW5nIHN1YiBkaXJlY3Rvcmllc1xuICAgKiBAcGFyYW0ge1dhbGtEaXJDYWxsYmFja30gY2FsbGJhY2sgVGhlIGNhbGxiYWNrIHRvIGJlIGNhbGxlZCB3aGVuIGEgbmV3IHBhdGggaXMgZm91bmRcbiAgICogQHRocm93cyB7RXJyb3J9IElmIHRoZSBgZGlyYCBwYXJhbWV0ZXIgY29udGFpbnMgYSBwYXRoIHRvIGFuIGludmFsaWQgZm9sZGVyXG4gICAqIEByZXR1cm5zIHtQcm9taXNlPHN0cmluZz8+fSByZXR1cm5zIHRoZSBmb3VuZCBwYXRoIG9yIG51bGwgaWYgdGhlIGl0ZW0gd2FzIG5vdCBmb3VuZFxuICAgKi9cbiAgYXN5bmMgd2Fsa0RpcihkaXIsIHJlY3Vyc2l2ZSwgY2FsbGJhY2spIHtcbiAgICAvL2VzbGludC1kaXNhYmxlLWxpbmUgcHJvbWlzZS9wcmVmZXItYXdhaXQtdG8tY2FsbGJhY2tzXG4gICAgbGV0IGlzVmFsaWRSb290ID0gZmFsc2U7XG4gICAgbGV0IGVyck1zZyA9IG51bGw7XG4gICAgdHJ5IHtcbiAgICAgIGlzVmFsaWRSb290ID0gKGF3YWl0IGZzLnN0YXQoZGlyKSkuaXNEaXJlY3RvcnkoKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBlcnJNc2cgPSBlLm1lc3NhZ2U7XG4gICAgfVxuICAgIGlmICghaXNWYWxpZFJvb3QpIHtcbiAgICAgIHRocm93IEVycm9yKFxuICAgICAgICBgJyR7ZGlyfScgaXMgbm90IGEgdmFsaWQgcm9vdCBkaXJlY3RvcnlgICsgKGVyck1zZyA/IGAuIE9yaWdpbmFsIGVycm9yOiAke2Vyck1zZ31gIDogJycpXG4gICAgICApO1xuICAgIH1cblxuICAgIGxldCB3YWxrZXI7XG4gICAgbGV0IGZpbGVDb3VudCA9IDA7XG4gICAgbGV0IGRpcmVjdG9yeUNvdW50ID0gMDtcbiAgICBjb25zdCB0aW1lciA9IG5ldyBUaW1lcigpLnN0YXJ0KCk7XG4gICAgcmV0dXJuIGF3YWl0IG5ldyBCKGZ1bmN0aW9uIChyZXNvbHZlLCByZWplY3QpIHtcbiAgICAgIGxldCBsYXN0RmlsZVByb2Nlc3NlZCA9IEIucmVzb2x2ZSgpO1xuICAgICAgd2Fsa2VyID0ga2xhdyhkaXIsIHtcbiAgICAgICAgZGVwdGhMaW1pdDogcmVjdXJzaXZlID8gLTEgOiAwLFxuICAgICAgfSk7XG4gICAgICB3YWxrZXJcbiAgICAgICAgLm9uKCdkYXRhJywgZnVuY3Rpb24gKGl0ZW0pIHtcbiAgICAgICAgICB3YWxrZXIucGF1c2UoKTtcblxuICAgICAgICAgIGlmICghaXRlbS5zdGF0cy5pc0RpcmVjdG9yeSgpKSB7XG4gICAgICAgICAgICBmaWxlQ291bnQrKztcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZGlyZWN0b3J5Q291bnQrKztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvbWlzZS9wcmVmZXItYXdhaXQtdG8tY2FsbGJhY2tzXG4gICAgICAgICAgbGFzdEZpbGVQcm9jZXNzZWQgPSBCLnRyeShhc3luYyAoKSA9PiBhd2FpdCBjYWxsYmFjayhpdGVtLnBhdGgsIGl0ZW0uc3RhdHMuaXNEaXJlY3RvcnkoKSkpXG4gICAgICAgICAgICAudGhlbihmdW5jdGlvbiAoZG9uZSA9IGZhbHNlKSB7XG4gICAgICAgICAgICAgIGlmIChkb25lKSB7XG4gICAgICAgICAgICAgICAgcmVzb2x2ZShpdGVtLnBhdGgpO1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHdhbGtlci5yZXN1bWUoKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5jYXRjaChyZWplY3QpO1xuICAgICAgICB9KVxuICAgICAgICAub24oJ2Vycm9yJywgZnVuY3Rpb24gKGVyciwgaXRlbSkge1xuICAgICAgICAgIGxvZy53YXJuKGBHb3QgYW4gZXJyb3Igd2hpbGUgd2Fsa2luZyAnJHtpdGVtLnBhdGh9JzogJHtlcnIubWVzc2FnZX1gKTtcbiAgICAgICAgICAvLyBrbGF3IGNhbm5vdCBnZXQgYmFjayBmcm9tIGFuIEVOT0VOVCBlcnJvclxuICAgICAgICAgIGlmIChlcnIuY29kZSA9PT0gJ0VOT0VOVCcpIHtcbiAgICAgICAgICAgIGxvZy53YXJuKCdBbGwgZmlsZXMgbWF5IG5vdCBoYXZlIGJlZW4gYWNjZXNzZWQnKTtcbiAgICAgICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgLm9uKCdlbmQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICAgICAgbGFzdEZpbGVQcm9jZXNzZWRcbiAgICAgICAgICAgIC50aGVuKChmaWxlKSA9PiB7XG4gICAgICAgICAgICAgIHJlc29sdmUoLyoqIEB0eXBlIHtzdHJpbmd8dW5kZWZpbmVkfSAqLyAoZmlsZSkgPz8gbnVsbCk7XG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLmNhdGNoKGZ1bmN0aW9uIChlcnIpIHtcbiAgICAgICAgICAgICAgbG9nLndhcm4oYFVuZXhwZWN0ZWQgZXJyb3I6ICR7ZXJyLm1lc3NhZ2V9YCk7XG4gICAgICAgICAgICAgIHJlamVjdChlcnIpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH0pLmZpbmFsbHkoZnVuY3Rpb24gKCkge1xuICAgICAgbG9nLmRlYnVnKFxuICAgICAgICBgVHJhdmVyc2VkICR7cGx1cmFsaXplKCdkaXJlY3RvcnknLCBkaXJlY3RvcnlDb3VudCwgdHJ1ZSl9IGAgK1xuICAgICAgICAgIGBhbmQgJHtwbHVyYWxpemUoJ2ZpbGUnLCBmaWxlQ291bnQsIHRydWUpfSBgICtcbiAgICAgICAgICBgaW4gJHt0aW1lci5nZXREdXJhdGlvbigpLmFzTWlsbGlTZWNvbmRzLnRvRml4ZWQoMCl9bXNgXG4gICAgICApO1xuICAgICAgaWYgKHdhbGtlcikge1xuICAgICAgICB3YWxrZXIuZGVzdHJveSgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9LFxuICAvKipcbiAgICogUmVhZHMgdGhlIGNsb3Nlc3QgYHBhY2thZ2UuanNvbmAgZmlsZSBmcm9tIGFic29sdXRlIHBhdGggYGRpcmAuXG4gICAqIEBwYXJhbSB7c3RyaW5nfSBkaXIgLSBEaXJlY3RvcnkgdG8gc2VhcmNoIGZyb21cbiAgICogQHBhcmFtIHtpbXBvcnQoJ3JlYWQtcGtnJykuT3B0aW9uc30gW29wdHNdIC0gQWRkaXRpb25hbCBvcHRpb25zIGZvciBgcmVhZC1wa2dgXG4gICAqIEB0aHJvd3Mge0Vycm9yfSBJZiB0aGVyZSB3ZXJlIHByb2JsZW1zIGZpbmRpbmcgb3IgcmVhZGluZyBhIGBwYWNrYWdlLmpzb25gIGZpbGVcbiAgICogQHJldHVybnMge29iamVjdH0gQSBwYXJzZWQgYHBhY2thZ2UuanNvbmBcbiAgICovXG4gIHJlYWRQYWNrYWdlSnNvbkZyb20oZGlyLCBvcHRzID0ge30pIHtcbiAgICBjb25zdCBjd2QgPSBmcy5maW5kUm9vdChkaXIpO1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gcmVhZFBrZy5zeW5jKHsuLi5vcHRzLCBjd2R9KTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIGVyci5tZXNzYWdlID0gYEZhaWxlZCB0byByZWFkIGEgXFxgcGFja2FnZS5qc29uXFxgIGZyb20gZGlyIFxcYCR7ZGlyfVxcYDpcXG5cXG4ke2Vyci5tZXNzYWdlfWA7XG4gICAgICB0aHJvdyBlcnI7XG4gICAgfVxuICB9LFxuICAvKipcbiAgICogRmluZHMgdGhlIHByb2plY3Qgcm9vdCBkaXJlY3RvcnkgZnJvbSBgZGlyYC5cbiAgICogQHBhcmFtIHtzdHJpbmd9IGRpciAtIERpcmVjdG9yeSB0byBzZWFyY2ggZnJvbVxuICAgKiBAdGhyb3dzIHtUeXBlRXJyb3J9IElmIGBkaXJgIGlzIG5vdCBhIG5vbmVtcHR5IHN0cmluZyBvciByZWxhdGl2ZSBwYXRoXG4gICAqIEB0aHJvd3Mge0Vycm9yfSBJZiB0aGVyZSB3ZXJlIHByb2JsZW1zIGZpbmRpbmcgdGhlIHByb2plY3Qgcm9vdFxuICAgKiBAcmV0dXJucyB7c3RyaW5nfSBUaGUgY2xvc2VzZXQgcGFyZW50IGRpciBjb250YWluaW5nIGBwYWNrYWdlLmpzb25gXG4gICAqL1xuICBmaW5kUm9vdChkaXIpIHtcbiAgICBpZiAoIWRpciB8fCAhcGF0aC5pc0Fic29sdXRlKGRpcikpIHtcbiAgICAgIHRocm93IG5ldyBUeXBlRXJyb3IoJ2BmaW5kUm9vdCgpYCBtdXN0IGJlIHByb3ZpZGVkIGEgbm9uLWVtcHR5LCBhYnNvbHV0ZSBwYXRoJyk7XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdCA9IGZpbmRSb290Q2FjaGVkKGRpcik7XG4gICAgaWYgKCFyZXN1bHQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgXFxgZmluZFJvb3QoKVxcYCBjb3VsZCBub3QgZmluZCBcXGBwYWNrYWdlLmpzb25cXGAgZnJvbSAke2Rpcn1gKTtcbiAgICB9XG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfSxcblxuICAvLyBhZGQgdGhlIHN1cHBvcnRlZCBgZnNgIGZ1bmN0aW9uc1xuICBhY2Nlc3M6IGZzUHJvbWlzZXMuYWNjZXNzLFxuICBhcHBlbmRGaWxlOiBmc1Byb21pc2VzLmFwcGVuZEZpbGUsXG4gIGNobW9kOiBmc1Byb21pc2VzLmNobW9kLFxuICBjbG9zZTogQi5wcm9taXNpZnkoY2xvc2UpLFxuICBjb25zdGFudHMsXG4gIGNyZWF0ZVdyaXRlU3RyZWFtLFxuICBjcmVhdGVSZWFkU3RyZWFtLFxuICBsc3RhdDogZnNQcm9taXNlcy5sc3RhdCxcbiAgLyoqXG4gICAqIFdhcm5pbmc6IHRoaXMgaXMgYSBwcm9taXNpZmllZCB7QGxpbmtjb2RlIG9wZW4gZnMub3Blbn0uXG4gICAqIEl0IHJlc29sdmVzIHcvYSBmaWxlIGRlc2NyaXB0b3IgaW5zdGVhZCBvZiBhIHtAbGlua2NvZGUgZnNQcm9taXNlcy5GaWxlSGFuZGxlIEZpbGVIYW5kbGV9IG9iamVjdCwgYXMge0BsaW5rY29kZSBmc1Byb21pc2VzLm9wZW59IGRvZXMuIFVzZSB7QGxpbmtjb2RlIGZzLm9wZW5GaWxlfSBpZiB5b3Ugd2FudCBhIGBGaWxlSGFuZGxlYC5cbiAgICogQHR5cGUgeyhwYXRoOiBpbXBvcnQoJ2ZzJykuUGF0aExpa2UsIGZsYWdzOiBpbXBvcnQoJ2ZzJykuT3Blbk1vZGUsIG1vZGU/OiBpbXBvcnQoJ2ZzJykuTW9kZSkgPT4gUHJvbWlzZTxudW1iZXI+fVxuICAgKi9cbiAgb3BlbjogQi5wcm9taXNpZnkob3BlbiksXG4gIG9wZW5GaWxlOiBmc1Byb21pc2VzLm9wZW4sXG4gIHJlYWRkaXI6IGZzUHJvbWlzZXMucmVhZGRpcixcbiAgcmVhZDogQi5wcm9taXNpZnkocmVhZCksXG4gIHJlYWRGaWxlOiBmc1Byb21pc2VzLnJlYWRGaWxlLFxuICByZWFkbGluazogZnNQcm9taXNlcy5yZWFkbGluayxcbiAgcmVhbHBhdGg6IGZzUHJvbWlzZXMucmVhbHBhdGgsXG4gIHJlbmFtZTogZnNQcm9taXNlcy5yZW5hbWUsXG4gIHN0YXQ6IGZzUHJvbWlzZXMuc3RhdCxcbiAgc3ltbGluazogZnNQcm9taXNlcy5zeW1saW5rLFxuICB1bmxpbms6IGZzUHJvbWlzZXMudW5saW5rLFxuICB3cml0ZTogQi5wcm9taXNpZnkod3JpdGUpLFxuICB3cml0ZUZpbGU6IGZzUHJvbWlzZXMud3JpdGVGaWxlLFxuXG4gIC8vIGRlcHJlY2F0ZWQgcHJvcHNcblxuICAvKipcbiAgICogVXNlIGBjb25zdGFudHMuRl9PS2AgaW5zdGVhZC5cbiAgICogQGRlcHJlY2F0ZWRcbiAgICovXG4gIEZfT0s6IGNvbnN0YW50cy5GX09LLFxuXG4gIC8qKlxuICAgKiBVc2UgYGNvbnN0YW50cy5SX09LYCBpbnN0ZWFkLlxuICAgKiBAZGVwcmVjYXRlZFxuICAgKi9cbiAgUl9PSzogY29uc3RhbnRzLlJfT0ssXG5cbiAgLyoqXG4gICAqIFVzZSBgY29uc3RhbnRzLldfT0tgIGluc3RlYWQuXG4gICAqIEBkZXByZWNhdGVkXG4gICAqL1xuICBXX09LOiBjb25zdGFudHMuV19PSyxcblxuICAvKipcbiAgICogVXNlIGBjb25zdGFudHMuWF9PS2AgaW5zdGVhZC5cbiAgICogQGRlcHJlY2F0ZWRcbiAgICovXG4gIFhfT0s6IGNvbnN0YW50cy5YX09LLFxufTtcblxuZXhwb3J0IHtmc307XG5leHBvcnQgZGVmYXVsdCBmcztcblxuLyoqXG4gKiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gd2hpY2ggd2lsbCBiZSBjYWxsZWQgZHVyaW5nIHRoZSBkaXJlY3Rvcnkgd2Fsa2luZ1xuICogQGNhbGxiYWNrIFdhbGtEaXJDYWxsYmFja1xuICogQHBhcmFtIHtzdHJpbmd9IGl0ZW1QYXRoIFRoZSBwYXRoIG9mIHRoZSBmaWxlIG9yIGZvbGRlclxuICogQHBhcmFtIHtib29sZWFufSBpc0RpcmVjdG9yeSBTaG93cyBpZiBpdCBpcyBhIGRpcmVjdG9yeSBvciBhIGZpbGVcbiAqIEByZXR1cm4ge2Jvb2xlYW59IHJldHVybiB0cnVlIGlmIHlvdSB3YW50IHRvIHN0b3Agd2Fsa2luZ1xuICovXG5cbi8qKlxuICogQHR5cGVkZWYge2ltcG9ydCgnZ2xvYicpfSBnbG9iXG4gKiBAdHlwZWRlZiB7aW1wb3J0KCdtdicpfSBtdlxuICovXG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBVUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEsTUFBTUEsUUFBUSxHQUVWQyxpQkFBQSxDQUFFQyxTQUFGLENBQVlDLFlBQVosQ0FGSjs7QUFJQSxNQUFNQyxjQUFjLEdB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
@@ -1 +1 @@
1
- {"version":3,"file":"image-util.d.ts","sourceRoot":"","sources":["../../lib/image-util.js"],"names":[],"mappings":";yBAkJa,KAAK,IAAI,EAAC,WAAW,CAAC,GAAG;IAAC,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAA;CAAC;;UAK3D,MAAM;SACN,MAAM;WACN,MAAM;YACN,MAAM;;AA5GpB;;;;;;GAMG;AACH,6CAJW,MAAM,QACN,MAAM,GACL,QAAQ,MAAM,CAAC,CAM1B;AAED;;;;;GAKG;AACH,2CAHW,MAAM,GACL,QAAQ,GAAG,CAAC,CAavB;AAED;;;;;GAKG;AACH,qCAHW,GAAG,GACF,QAAQ,MAAM,CAAC,CAa1B;AAED;;;;;GAKG;AACH,iCAHW,GAAG,QACH,MAAM,OA6BhB;AAxHD;;;;;;;;GAQG;AACH,mCAJW,MAAM,GAAC,MAAM,GAEX,QAAQ,UAAU,CAAC,CA2B/B"}
1
+ {"version":3,"file":"image-util.d.ts","sourceRoot":"","sources":["../../lib/image-util.js"],"names":[],"mappings":";yBAoKa,KAAK,IAAI,EAAC,WAAW,CAAC,GAAG;IAAC,SAAS,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAA;CAAC;;UAK3D,MAAM;SACN,MAAM;WACN,MAAM;YACN,MAAM;;AA1HpB;;;;;;GAMG;AACH,6CAJW,MAAM,QACN,MAAM,GACL,QAAQ,MAAM,CAAC,CAM1B;AAED;;;;;GAKG;AACH,2CAHW,MAAM,GACL,QAAQ,GAAG,CAAC,CAcvB;AAED;;;;;GAKG;AACH,qCAHW,GAAG,GACF,QAAQ,MAAM,CAAC,CAgB1B;AAED;;;;;GAKG;AACH,iCAHW,GAAG,QACH,MAAM,OAiChB;AApID;;;;;;;;GAQG;AACH,mCAJW,MAAM,GAAC,MAAM,GAEX,QAAQ,UAAU,CAAC,CA+B/B"}
@@ -141,4 +141,4 @@ function getRectIntersection(rect, imageSize) {
141
141
  height
142
142
  };
143
143
  }
144
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9pbWFnZS11dGlsLmpzIl0sIm5hbWVzIjpbIkJZVEVTX0lOX1BJWEVMX0JMT0NLIiwiU0NBTkxJTkVfRklMVEVSX01FVEhPRCIsIk1JTUVfSlBFRyIsIk1JTUVfUE5HIiwiTUlNRV9CTVAiLCJKaW1wIiwiZ2V0SmltcEltYWdlIiwiZGF0YSIsIkIiLCJyZXNvbHZlIiwicmVqZWN0IiwiXyIsImlzU3RyaW5nIiwiaXNCdWZmZXIiLCJFcnJvciIsIkJ1ZmZlciIsImZyb20iLCJlcnIiLCJpbWdPYmoiLCJnZXRCdWZmZXIiLCJwcm9taXNpZnkiLCJiaW5kIiwiY29udGV4dCIsImNyb3BCYXNlNjRJbWFnZSIsImJhc2U2NEltYWdlIiwicmVjdCIsImltYWdlIiwiYmFzZTY0VG9JbWFnZSIsImNyb3BJbWFnZSIsImltYWdlVG9CYXNlNjQiLCJpbWFnZUJ1ZmZlciIsIlBORyIsImZpbHRlclR5cGUiLCJwYXJzZSIsImNodW5rcyIsInBhY2siLCJvbiIsImNodW5rIiwicHVzaCIsImNvbmNhdCIsInRvU3RyaW5nIiwiaW1hZ2VSZWN0Iiwid2lkdGgiLCJoZWlnaHQiLCJpbnRlclJlY3QiLCJnZXRSZWN0SW50ZXJzZWN0aW9uIiwiSlNPTiIsInN0cmluZ2lmeSIsImZpcnN0VmVydGljYWxQaXhlbCIsInRvcCIsImxhc3RWZXJ0aWNhbFBpeGVsIiwiZmlyc3RIb3Jpem9udGFsUGl4ZWwiLCJsZWZ0IiwibGFzdEhvcml6b250YWxQaXhlbCIsImNyb3BwZWRBcnJheSIsInkiLCJ4IiwiZmlyc3RCeXRlSWR4SW5QaXhlbEJsb2NrIiwiYnl0ZUlkeCIsImltYWdlU2l6ZSJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUVBLE1BQU1BLG9CQUFvQixHQUFHLENBQTdCO0FBQ0EsTUFBTUMsc0JBQXNCLEdBQUcsQ0FBL0I7QUFDQSxNQUFNO0FBQUVDLEVBQUFBLFNBQUY7QUFBYUMsRUFBQUEsUUFB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LEdBQXVEaUIsU0FBUyxDQUFDakIsS0FBVixHQUFrQlUsSUFBdkY7QUFDQSxRQUFNVCxNQUFNLEdBQUdnQixTQUFTLENBQUNoQixNQUFWLElBQXFCTSxHQUFHLEdBQUd4QixJQUFJLENBQUNrQixNQUFoQyxHQUEwQ2xCLElBQUksQ0FBQ2tCLE1BQS9DLEdBQXlEZ0IsU0FBUyxDQUFDaEIsTUFBVixHQUFtQk0sR0FBM0Y7QUFDQSxTQUFPO0FBQUNHLElBQUFBLElBQUQ7QUFBT0gsSUFBQUEsR0FBUDtBQUFZUCxJQUFBQSxLQUFaO0FBQW1CQyxJQUFBQTtBQUFuQixHQUFQO0FBQ0QiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IEppbXAgZnJvbSAnamltcCc7XG5pbXBvcnQgeyBCdWZmZXIgfSBmcm9tICdidWZmZXInO1xuaW1wb3J0IHsgUE5HIH0gZnJvbSAncG5nanMnO1xuaW1wb3J0IEIgZnJvbSAnYmx1ZWJpcmQnO1xuXG5jb25zdCBCWVRFU19JTl9QSVhFTF9CTE9DSyA9IDQ7XG5jb25zdCBTQ0FOTElORV9GSUxURVJfTUVUSE9EID0gNDtcbmNvbnN0IHsgTUlNRV9KUEVHLCBNSU1FX1BORywgTUlNRV9CTVAgfSA9IEppbXA7XG5cbi8qKlxuICogVXRpbGl0eSBmdW5jdGlvbiB0byBnZXQgYSBKaW1wIGltYWdlIG9iamVjdCBmcm9tIGJ1ZmZlciBvciBiYXNlNjQgZGF0YS4gSmltcFxuICogaXMgYSBncmVhdCBsaWJyYXJ5IGhvd2V2ZXIgaXQgZG9lcyBJTyBpbiB0aGUgY29uc3RydWN0b3Igc28gaXQncyBub3RcbiAqIGNvbnZlbmllbnQgZm9yIG91ciBhc3luYy9hd2FpdCBtb2RlbC5cbiAqXG4gKiBAcGFyYW0ge0J1ZmZlcnxzdHJpbmd9IGRhdGEgLSBiaW5hcnkgaW1hZ2UgYnVmZmVyIG9yIGJhc2U2NC1lbmNvZGVkIGltYWdlXG4gKiBzdHJpbmdcbiAqIEByZXR1cm5zIHtQcm9taXNlPEFwcGl1bUppbXA+fSAtIHRoZSBqaW1wIGltYWdlIG9iamVjdFxuICovXG5hc3luYyBmdW5jdGlvbiBnZXRKaW1wSW1hZ2UgKGRhdGEpIHtcbiAgcmV0dXJuIGF3YWl0IG5ldyBCKChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICBpZiAoIV8uaXNTdHJpbmcoZGF0YSkgJiYgIV8uaXNCdWZmZXIoZGF0YSkpIHtcbiAgICAgIHJldHVybiByZWplY3QobmV3IEVycm9yKCdNdXN0IGluaXRpYWxpemUgamltcCBvYmplY3Qgd2l0aCBzdHJpbmcgb3IgYnVmZmVyJykpO1xuICAgIH1cbiAgICAvLyBpZiBkYXRhIGlzIGEgc3RyaW5nLCBhc3N1bWUgaXQgaXMgYSBiYXNlNjQtZW5jb2RlZCBpbWFnZVxuICAgIGlmIChfLmlzU3RyaW5nKGRhdGEpKSB7XG4gICAgICBkYXRhID0gQnVmZmVyLmZyb20oZGF0YSwgJ2Jhc2U2NCcpO1xuICAgIH1cbiAgICBuZXcgSmltcChkYXRhLFxuICAgICAgLyoqXG4gICAgICAgKiBAcGFyYW0ge0Vycm9yP30gZXJyXG4gICAgICAgKiBAcGFyYW0ge0FwcGl1bUppbXB9IGltZ09ialxuICAgICAgICovXG4gICAgKGVyciwgaW1nT2JqKSA9PiB7XG4gICAgICBpZiAoZXJyKSB7XG4gICAgICAgIHJldHVybiByZWplY3QoZXJyKTtcbiAgICAgIH1cbiAgICAgIGlmICghaW1nT2JqKSB7XG4gICAgICAgIHJldHVybiByZWplY3QobmV3IEVycm9yKCdDb3VsZCBub3QgY3JlYXRlIGppbXAgaW1hZ2UgZnJvbSB0aGF0IGRhdGEnKSk7XG4gICAgICB9XG4gICAgICBpbWdPYmouZ2V0QnVmZmVyID0gQi5wcm9taXNpZnkoaW1nT2JqLmdldEJ1ZmZlci5iaW5kKGltZ09iaiksIHtjb250ZXh0OiBpbWdPYmp9KTtcbiAgICAgIHJlc29sdmUoaW1nT2JqKTtcbiAgICB9KTtcbiAgfSk7XG59XG5cbi8qKlxuICogQ3JvcCB0aGUgaW1hZ2UgYnkgZ2l2ZW4gcmVjdGFuZ2xlICh1c2UgYmFzZTY0IHN0cmluZyBhcyBpbnB1dCBhbmQgb3V0cHV0KVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBiYXNlNjRJbWFnZSBUaGUgc3RyaW5nIHdpdGggYmFzZTY0IGVuY29kZWQgaW1hZ2VcbiAqIEBwYXJhbSB7UmVnaW9ufSByZWN0IFRoZSBzZWxlY3RlZCByZWdpb24gb2YgaW1hZ2VcbiAqIEByZXR1cm4ge1Byb21pc2U8c3RyaW5nPn0gYmFzZTY0IGVuY29kZWQgc3RyaW5nIG9mIGNyb3BwZWQgaW1hZ2VcbiAqL1xuYXN5bmMgZnVuY3Rpb24gY3JvcEJhc2U2NEltYWdlIChiYXNlNjRJbWFnZSwgcmVjdCkge1xuICBjb25zdCBpbWFnZSA9IGF3YWl0IGJhc2U2NFRvSW1hZ2UoYmFzZTY0SW1hZ2UpO1xuICBjcm9wSW1hZ2UoaW1hZ2UsIHJlY3QpO1xuICByZXR1cm4gYXdhaXQgaW1hZ2VUb0Jhc2U2NChpbWFnZSk7XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgcG5nanMgaW1hZ2UgZnJvbSBnaXZlbiBiYXNlNjQgaW1hZ2VcbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gYmFzZTY0SW1hZ2UgVGhlIHN0cmluZyB3aXRoIGJhc2U2NCBlbmNvZGVkIGltYWdlXG4gKiBAcmV0dXJuIHtQcm9taXNlPFBORz59IFRoZSBpbWFnZSBvYmplY3RcbiAqL1xuYXN5bmMgZnVuY3Rpb24gYmFzZTY0VG9JbWFnZSAoYmFzZTY0SW1hZ2UpIHtcbiAgY29uc3QgaW1hZ2VCdWZmZXIgPSBCdWZmZXIuZnJvbShiYXNlNjRJbWFnZSwgJ2Jhc2U2NCcpO1xuICByZXR1cm4gYXdhaXQgbmV3IEIoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IGltYWdlID0gbmV3IFBORyh7ZmlsdGVyVHlwZTogU0NBTkxJTkVfRklMVEVSX01FVEhPRH0pO1xuICAgIGltYWdlLnBhcnNlKGltYWdlQnVmZmVyLCAoZXJyLCBpbWFnZSkgPT4geyAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIHByb21pc2UvcHJlZmVyLWF3YWl0LXRvLWNhbGxiYWNrc1xuICAgICAgaWYgKGVycikge1xuICAgICAgICByZXR1cm4gcmVqZWN0KGVycik7XG4gICAgICB9XG4gICAgICByZXNvbHZlKGltYWdlKTtcbiAgICB9KTtcbiAgfSk7XG59XG5cbi8qKlxuICogQ3JlYXRlIGEgYmFzZTY0IHN0cmluZyBmb3IgZ2l2ZW4gaW1hZ2Ugb2JqZWN0XG4gKlxuICogQHBhcmFtIHtQTkd9IGltYWdlIFRoZSBpbWFnZSBvYmplY3RcbiAqIEByZXR1cm4ge1Byb21pc2U8c3RyaW5nPn0gVGhlIHN0cmluZyB3aXRoIGJhc2U2NCBlbmNvZGVkIGltYWdlXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIGltYWdlVG9CYXNlNjQgKGltYWdlKSB7XG4gIHJldHVybiBhd2FpdCBuZXcgQigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3QgY2h1bmtzID0gW107XG4gICAgaW1hZ2UucGFjaygpXG4gICAgLm9uKCdkYXRhJywgKGNodW5rKSA9PiBjaHVua3MucHVzaChjaHVuaykpLm9uKCdlbmQnLCAoKSA9PiB7XG4gICAgICByZXNvbHZlKEJ1ZmZlci5jb25jYXQoY2h1bmtzKS50b1N0cmluZygnYmFzZTY0JykpO1xuICAgIH0pXG4gICAgLm9uKCdlcnJvcicsIChlcnIpID0+IHsgLy8gZXNsaW50LWRpc2FibGUtbGluZSBwcm9taXNlL3ByZWZlci1hd2FpdC10by1jYWxsYmFja3NcbiAgICAgIHJlamVjdChlcnIpO1xuICAgIH0pO1xuICB9KTtcbn1cblxuLyoqXG4gKiBDcm9wIHRoZSBpbWFnZSBieSBnaXZlbiByZWN0YW5nbGVcbiAqXG4gKiBAcGFyYW0ge1BOR30gaW1hZ2UgVGhlIGltYWdlIHRvIG11dGF0ZSBieSBjcm9wcGluZ1xuICogQHBhcmFtIHtSZWdpb259IHJlY3QgVGhlIHNlbGVjdGVkIHJlZ2lvbiBvZiBpbWFnZVxuICovXG5mdW5jdGlvbiBjcm9wSW1hZ2UgKGltYWdlLCByZWN0KSB7XG4gIGNvbnN0IGltYWdlUmVjdCA9IHt3aWR0aDogaW1hZ2Uud2lkdGgsIGhlaWdodDogaW1hZ2UuaGVpZ2h0fTtcbiAgY29uc3QgaW50ZXJSZWN0ID0gZ2V0UmVjdEludGVyc2VjdGlvbihyZWN0LCBpbWFnZVJlY3QpO1xuICBpZiAoaW50ZXJSZWN0LndpZHRoIDwgcmVjdC53aWR0aCB8fCBpbnRlclJlY3QuaGVpZ2h0IDwgcmVjdC5oZWlnaHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYENhbm5vdCBjcm9wICR7SlNPTi5zdHJpbmdpZnkocmVjdCl9IGZyb20gJHtKU09OLnN0cmluZ2lmeShpbWFnZVJlY3QpfSBiZWNhdXNlIHRoZSBpbnRlcnNlY3Rpb24gYmV0d2VlbiB0aGVtIHdhcyBub3QgdGhlIHNpemUgb2YgdGhlIHJlY3RgKTtcbiAgfVxuXG4gIGNvbnN0IGZpcnN0VmVydGljYWxQaXhlbCA9IGludGVyUmVjdC50b3A7XG4gIGNvbnN0IGxhc3RWZXJ0aWNhbFBpeGVsID0gaW50ZXJSZWN0LnRvcCArIGludGVyUmVjdC5oZWlnaHQ7XG5cbiAgY29uc3QgZmlyc3RIb3Jpem9udGFsUGl4ZWwgPSBpbnRlclJlY3QubGVmdDtcbiAgY29uc3QgbGFzdEhvcml6b250YWxQaXhlbCA9IGludGVyUmVjdC5sZWZ0ICsgaW50ZXJSZWN0LndpZHRoO1xuXG4gIGNvbnN0IGNyb3BwZWRBcnJheSA9IFtdO1xuICBmb3IgKGxldCB5ID0gZmlyc3RWZXJ0aWNhbFBpeGVsOyB5IDwgbGFzdFZlcnRpY2FsUGl4ZWw7IHkrKykge1xuICAgIGZvciAobGV0IHggPSBmaXJzdEhvcml6b250YWxQaXhlbDsgeCA8IGxhc3RIb3Jpem9udGFsUGl4ZWw7IHgrKykge1xuICAgICAgY29uc3QgZmlyc3RCeXRlSWR4SW5QaXhlbEJsb2NrID0gKGltYWdlUmVjdC53aWR0aCAqIHkgKyB4KSA8PCAyO1xuICAgICAgZm9yIChsZXQgYnl0ZUlkeCA9IDA7IGJ5dGVJZHggPCBCWVRFU19JTl9QSVhFTF9CTE9DSzsgYnl0ZUlkeCsrKSB7XG4gICAgICAgIGNyb3BwZWRBcnJheS5wdXNoKGltYWdlLmRhdGFbZmlyc3RCeXRlSWR4SW5QaXhlbEJsb2NrICsgYnl0ZUlkeF0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGltYWdlLmRhdGEgPSBCdWZmZXIuZnJvbShjcm9wcGVkQXJyYXkpO1xuICBpbWFnZS53aWR0aCA9IGludGVyUmVjdC53aWR0aDtcbiAgaW1hZ2UuaGVpZ2h0ID0gaW50ZXJSZWN0LmhlaWdodDtcbiAgcmV0dXJuIGltYWdlO1xufVxuXG5mdW5jdGlvbiBnZXRSZWN0SW50ZXJzZWN0aW9uIChyZWN0LCBpbWFnZVNpemUpIHtcbiAgY29uc3QgbGVmdCA9IHJlY3QubGVmdCA+PSBpbWFnZVNpemUud2lkdGggPyBpbWFnZVNpemUud2lkdGggOiByZWN0LmxlZnQ7XG4gIGNvbnN0IHRvcCA9IHJlY3QudG9wID49IGltYWdlU2l6ZS5oZWlnaHQgPyBpbWFnZVNpemUuaGVpZ2h0IDogcmVjdC50b3A7XG4gIGNvbnN0IHdpZHRoID0gaW1hZ2VTaXplLndpZHRoID49IChsZWZ0ICsgcmVjdC53aWR0aCkgPyByZWN0LndpZHRoIDogKGltYWdlU2l6ZS53aWR0aCAtIGxlZnQpO1xuICBjb25zdCBoZWlnaHQgPSBpbWFnZVNpemUuaGVpZ2h0ID49ICh0b3AgKyByZWN0LmhlaWdodCkgPyByZWN0LmhlaWdodCA6IChpbWFnZVNpemUuaGVpZ2h0IC0gdG9wKTtcbiAgcmV0dXJuIHtsZWZ0LCB0b3AsIHdpZHRoLCBoZWlnaHR9O1xufVxuXG5leHBvcnQge1xuICBjcm9wQmFzZTY0SW1hZ2UsIGJhc2U2NFRvSW1hZ2UsIGltYWdlVG9CYXNlNjQsIGNyb3BJbWFnZSxcbiAgZ2V0SmltcEltYWdlLCBNSU1FX0pQRUcsIE1JTUVfUE5HLCBNSU1FX0JNUFxufTtcblxuLyoqXG4gKiBAdHlwZWRlZiB7T21pdDxKaW1wLCdnZXRCdWZmZXInPiAmIHtnZXRCdWZmZXI6IEppbXBbJ2dldEJ1ZmZlckFzeW5jJ119fSBBcHBpdW1KaW1wXG4gKi9cblxuLyoqXG4gKiBAdHlwZWRlZiBSZWdpb25cbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBsZWZ0XG4gKiBAcHJvcGVydHkge251bWJlcn0gdG9wXG4gKiBAcHJvcGVydHkge251bWJlcn0gd2lkdGhcbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBoZWlnaHRcbiAqL1xuIl19
144
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJCWVRFU19JTl9QSVhFTF9CTE9DSyIsIlNDQU5MSU5FX0ZJTFRFUl9NRVRIT0QiLCJNSU1FX0pQRUciLCJNSU1FX1BORyIsIk1JTUVfQk1QIiwiSmltcCIsImdldEppbXBJbWFnZSIsImRhdGEiLCJCIiwicmVzb2x2ZSIsInJlamVjdCIsIl8iLCJpc1N0cmluZyIsImlzQnVmZmVyIiwiRXJyb3IiLCJCdWZmZXIiLCJmcm9tIiwiZXJyIiwiaW1nT2JqIiwiZ2V0QnVmZmVyIiwicHJvbWlzaWZ5IiwiYmluZCIsImNvbnRleHQiLCJjcm9wQmFzZTY0SW1hZ2UiLCJiYXNlNjRJbWFnZSIsInJlY3QiLCJpbWFnZSIsImJhc2U2NFRvSW1hZ2UiLCJjcm9wSW1hZ2UiLCJpbWFnZVRvQmFzZTY0IiwiaW1hZ2VCdWZmZXIiLCJQTkciLCJmaWx0ZXJUeXBlIiwicGFyc2UiLCJjaHVua3MiLCJwYWNrIiwib24iLCJjaHVuayIsInB1c2giLCJjb25jYXQiLCJ0b1N0cmluZyIsImltYWdlUmVjdCIsIndpZHRoIiwiaGVpZ2h0IiwiaW50ZXJSZWN0IiwiZ2V0UmVjdEludGVyc2VjdGlvbiIsIkpTT04iLCJzdHJpbmdpZnkiLCJmaXJzdFZlcnRpY2FsUGl4ZWwiLCJ0b3AiLCJsYXN0VmVydGljYWxQaXhlbCIsImZpcnN0SG9yaXpvbnRhbFBpeGVsIiwibGVmdCIsImxhc3RIb3Jpem9udGFsUGl4ZWwiLCJjcm9wcGVkQXJyYXkiLCJ5IiwieCIsImZpcnN0Qnl0ZUlkeEluUGl4ZWxCbG9jayIsImJ5dGVJZHgiLCJpbWFnZVNpemUiXSwic291cmNlcyI6WyIuLi8uLi9saWIvaW1hZ2UtdXRpbC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuaW1wb3J0IEppbXAgZnJvbSAnamltcCc7XG5pbXBvcnQge0J1ZmZlcn0gZnJvbSAnYnVmZmVyJztcbmltcG9ydCB7UE5HfSBmcm9tICdwbmdqcyc7XG5pbXBvcnQgQiBmcm9tICdibHVlYmlyZCc7XG5cbmNvbnN0IEJZVEVTX0lOX1BJWEVMX0JMT0NLID0gNDtcbmNvbnN0IFNDQU5MSU5FX0ZJTFRFUl9NRVRIT0QgPSA0O1xuY29uc3Qge01JTUVfSlBFRywgTUlNRV9QTkcsIE1JTUVfQk1QfSA9IEppbXA7XG5cbi8qKlxuICogVXRpbGl0eSBmdW5jdGlvbiB0byBnZXQgYSBKaW1wIGltYWdlIG9iamVjdCBmcm9tIGJ1ZmZlciBvciBiYXNlNjQgZGF0YS4gSmltcFxuICogaXMgYSBncmVhdCBsaWJyYXJ5IGhvd2V2ZXIgaXQgZG9lcyBJTyBpbiB0aGUgY29uc3RydWN0b3Igc28gaXQncyBub3RcbiAqIGNvbnZlbmllbnQgZm9yIG91ciBhc3luYy9hd2FpdCBtb2RlbC5cbiAqXG4gKiBAcGFyYW0ge0J1ZmZlcnxzdHJpbmd9IGRhdGEgLSBiaW5hcnkgaW1hZ2UgYnVmZmVyIG9yIGJhc2U2NC1lbmNvZGVkIGltYWdlXG4gKiBzdHJpbmdcbiAqIEByZXR1cm5zIHtQcm9taXNlPEFwcGl1bUppbXA+fSAtIHRoZSBqaW1wIGltYWdlIG9iamVjdFxuICovXG5hc3luYyBmdW5jdGlvbiBnZXRKaW1wSW1hZ2UoZGF0YSkge1xuICByZXR1cm4gYXdhaXQgbmV3IEIoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGlmICghXy5pc1N0cmluZyhkYXRhKSAmJiAhXy5pc0J1ZmZlcihkYXRhKSkge1xuICAgICAgcmV0dXJuIHJlamVjdChuZXcgRXJyb3IoJ011c3QgaW5pdGlhbGl6ZSBqaW1wIG9iamVjdCB3aXRoIHN0cmluZyBvciBidWZmZXInKSk7XG4gICAgfVxuICAgIC8vIGlmIGRhdGEgaXMgYSBzdHJpbmcsIGFzc3VtZSBpdCBpcyBhIGJhc2U2NC1lbmNvZGVkIGltYWdlXG4gICAgaWYgKF8uaXNTdHJpbmcoZGF0YSkpIHtcbiAgICAgIGRhdGEgPSBCdWZmZXIuZnJvbShkYXRhLCAnYmFzZTY0Jyk7XG4gICAgfVxuICAgIG5ldyBKaW1wKFxuICAgICAgZGF0YSxcbiAgICAgIC8qKlxuICAgICAgICogQHBhcmFtIHtFcnJvcj99IGVyclxuICAgICAgICogQHBhcmFtIHtBcHBpdW1KaW1wfSBpbWdPYmpcbiAgICAgICAqL1xuICAgICAgKGVyciwgaW1nT2JqKSA9PiB7XG4gICAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgICByZXR1cm4gcmVqZWN0KGVycik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFpbWdPYmopIHtcbiAgICAgICAgICByZXR1cm4gcmVqZWN0KG5ldyBFcnJvcignQ291bGQgbm90IGNyZWF0ZSBqaW1wIGltYWdlIGZyb20gdGhhdCBkYXRhJykpO1xuICAgICAgICB9XG4gICAgICAgIGltZ09iai5nZXRCdWZmZXIgPSBCLnByb21pc2lmeShpbWdPYmouZ2V0QnVmZmVyLmJpbmQoaW1nT2JqKSwge1xuICAgICAgICAgIGNvbnRleHQ6IGltZ09iaixcbiAgICAgICAgfSk7XG4gICAgICAgIHJlc29sdmUoaW1nT2JqKTtcbiAgICAgIH1cbiAgICApO1xuICB9KTtcbn1cblxuLyoqXG4gKiBDcm9wIHRoZSBpbWFnZSBieSBnaXZlbiByZWN0YW5nbGUgKHVzZSBiYXNlNjQgc3RyaW5nIGFzIGlucHV0IGFuZCBvdXRwdXQpXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGJhc2U2NEltYWdlIFRoZSBzdHJpbmcgd2l0aCBiYXNlNjQgZW5jb2RlZCBpbWFnZVxuICogQHBhcmFtIHtSZWdpb259IHJlY3QgVGhlIHNlbGVjdGVkIHJlZ2lvbiBvZiBpbWFnZVxuICogQHJldHVybiB7UHJvbWlzZTxzdHJpbmc+fSBiYXNlNjQgZW5jb2RlZCBzdHJpbmcgb2YgY3JvcHBlZCBpbWFnZVxuICovXG5hc3luYyBmdW5jdGlvbiBjcm9wQmFzZTY0SW1hZ2UoYmFzZTY0SW1hZ2UsIHJlY3QpIHtcbiAgY29uc3QgaW1hZ2UgPSBhd2FpdCBiYXNlNjRUb0ltYWdlKGJhc2U2NEltYWdlKTtcbiAgY3JvcEltYWdlKGltYWdlLCByZWN0KTtcbiAgcmV0dXJuIGF3YWl0IGltYWdlVG9CYXNlNjQoaW1hZ2UpO1xufVxuXG4vKipcbiAqIENyZWF0ZSBhIHBuZ2pzIGltYWdlIGZyb20gZ2l2ZW4gYmFzZTY0IGltYWdlXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGJhc2U2NEltYWdlIFRoZSBzdHJpbmcgd2l0aCBiYXNlNjQgZW5jb2RlZCBpbWFnZVxuICogQHJldHVybiB7UHJvbWlzZTxQTkc+fSBUaGUgaW1hZ2Ugb2JqZWN0XG4gKi9cbmFzeW5jIGZ1bmN0aW9uIGJhc2U2NFRvSW1hZ2UoYmFzZTY0SW1hZ2UpIHtcbiAgY29uc3QgaW1hZ2VCdWZmZXIgPSBCdWZmZXIuZnJvbShiYXNlNjRJbWFnZSwgJ2Jhc2U2NCcpO1xuICByZXR1cm4gYXdhaXQgbmV3IEIoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgIGNvbnN0IGltYWdlID0gbmV3IFBORyh7ZmlsdGVyVHlwZTogU0NBTkxJTkVfRklMVEVSX01FVEhPRH0pO1xuICAgIGltYWdlLnBhcnNlKGltYWdlQnVmZmVyLCAoZXJyLCBpbWFnZSkgPT4ge1xuICAgICAgLy8gZXNsaW50LWRpc2FibGUtbGluZSBwcm9taXNlL3ByZWZlci1hd2FpdC10by1jYWxsYmFja3NcbiAgICAgIGlmIChlcnIpIHtcbiAgICAgICAgcmV0dXJuIHJlamVjdChlcnIpO1xuICAgICAgfVxuICAgICAgcmVzb2x2ZShpbWFnZSk7XG4gICAgfSk7XG4gIH0pO1xufVxuXG4vKipcbiAqIENyZWF0ZSBhIGJhc2U2NCBzdHJpbmcgZm9yIGdpdmVuIGltYWdlIG9iamVjdFxuICpcbiAqIEBwYXJhbSB7UE5HfSBpbWFnZSBUaGUgaW1hZ2Ugb2JqZWN0XG4gKiBAcmV0dXJuIHtQcm9taXNlPHN0cmluZz59IFRoZSBzdHJpbmcgd2l0aCBiYXNlNjQgZW5jb2RlZCBpbWFnZVxuICovXG5hc3luYyBmdW5jdGlvbiBpbWFnZVRvQmFzZTY0KGltYWdlKSB7XG4gIHJldHVybiBhd2FpdCBuZXcgQigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgY29uc3QgY2h1bmtzID0gW107XG4gICAgaW1hZ2VcbiAgICAgIC5wYWNrKClcbiAgICAgIC5vbignZGF0YScsIChjaHVuaykgPT4gY2h1bmtzLnB1c2goY2h1bmspKVxuICAgICAgLm9uKCdlbmQnLCAoKSA9PiB7XG4gICAgICAgIHJlc29sdmUoQnVmZmVyLmNvbmNhdChjaHVua3MpLnRvU3RyaW5nKCdiYXNlNjQnKSk7XG4gICAgICB9KVxuICAgICAgLm9uKCdlcnJvcicsIChlcnIpID0+IHtcbiAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbGluZSBwcm9taXNlL3ByZWZlci1hd2FpdC10by1jYWxsYmFja3NcbiAgICAgICAgcmVqZWN0KGVycik7XG4gICAgICB9KTtcbiAgfSk7XG59XG5cbi8qKlxuICogQ3JvcCB0aGUgaW1hZ2UgYnkgZ2l2ZW4gcmVjdGFuZ2xlXG4gKlxuICogQHBhcmFtIHtQTkd9IGltYWdlIFRoZSBpbWFnZSB0byBtdXRhdGUgYnkgY3JvcHBpbmdcbiAqIEBwYXJhbSB7UmVnaW9ufSByZWN0IFRoZSBzZWxlY3RlZCByZWdpb24gb2YgaW1hZ2VcbiAqL1xuZnVuY3Rpb24gY3JvcEltYWdlKGltYWdlLCByZWN0KSB7XG4gIGNvbnN0IGltYWdlUmVjdCA9IHt3aWR0aDogaW1hZ2Uud2lkdGgsIGhlaWdodDogaW1hZ2UuaGVpZ2h0fTtcbiAgY29uc3QgaW50ZXJSZWN0ID0gZ2V0UmVjdEludGVyc2VjdGlvbihyZWN0LCBpbWFnZVJlY3QpO1xuICBpZiAoaW50ZXJSZWN0LndpZHRoIDwgcmVjdC53aWR0aCB8fCBpbnRlclJlY3QuaGVpZ2h0IDwgcmVjdC5oZWlnaHQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICBgQ2Fubm90IGNyb3AgJHtKU09OLnN0cmluZ2lmeShyZWN0KX0gZnJvbSAke0pTT04uc3RyaW5naWZ5KFxuICAgICAgICBpbWFnZVJlY3RcbiAgICAgICl9IGJlY2F1c2UgdGhlIGludGVyc2VjdGlvbiBiZXR3ZWVuIHRoZW0gd2FzIG5vdCB0aGUgc2l6ZSBvZiB0aGUgcmVjdGBcbiAgICApO1xuICB9XG5cbiAgY29uc3QgZmlyc3RWZXJ0aWNhbFBpeGVsID0gaW50ZXJSZWN0LnRvcDtcbiAgY29uc3QgbGFzdFZlcnRpY2FsUGl4ZWwgPSBpbnRlclJlY3QudG9wICsgaW50ZXJSZWN0LmhlaWdodDtcblxuICBjb25zdCBmaXJzdEhvcml6b250YWxQaXhlbCA9IGludGVyUmVjdC5sZWZ0O1xuICBjb25zdCBsYXN0SG9yaXpvbnRhbFBpeGVsID0gaW50ZXJSZWN0LmxlZnQgKyBpbnRlclJlY3Qud2lkdGg7XG5cbiAgY29uc3QgY3JvcHBlZEFycmF5ID0gW107XG4gIGZvciAobGV0IHkgPSBmaXJzdFZlcnRpY2FsUGl4ZWw7IHkgPCBsYXN0VmVydGljYWxQaXhlbDsgeSsrKSB7XG4gICAgZm9yIChsZXQgeCA9IGZpcnN0SG9yaXpvbnRhbFBpeGVsOyB4IDwgbGFzdEhvcml6b250YWxQaXhlbDsgeCsrKSB7XG4gICAgICBjb25zdCBmaXJzdEJ5dGVJZHhJblBpeGVsQmxvY2sgPSAoaW1hZ2VSZWN0LndpZHRoICogeSArIHgpIDw8IDI7XG4gICAgICBmb3IgKGxldCBieXRlSWR4ID0gMDsgYnl0ZUlkeCA8IEJZVEVTX0lOX1BJWEVMX0JMT0NLOyBieXRlSWR4KyspIHtcbiAgICAgICAgY3JvcHBlZEFycmF5LnB1c2goaW1hZ2UuZGF0YVtmaXJzdEJ5dGVJZHhJblBpeGVsQmxvY2sgKyBieXRlSWR4XSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaW1hZ2UuZGF0YSA9IEJ1ZmZlci5mcm9tKGNyb3BwZWRBcnJheSk7XG4gIGltYWdlLndpZHRoID0gaW50ZXJSZWN0LndpZHRoO1xuICBpbWFnZS5oZWlnaHQgPSBpbnRlclJlY3QuaGVpZ2h0O1xuICByZXR1cm4gaW1hZ2U7XG59XG5cbmZ1bmN0aW9uIGdldFJlY3RJbnRlcnNlY3Rpb24ocmVjdCwgaW1hZ2VTaXplKSB7XG4gIGNvbnN0IGxlZnQgPSByZWN0LmxlZnQgPj0gaW1hZ2VTaXplLndpZHRoID8gaW1hZ2VTaXplLndpZHRoIDogcmVjdC5sZWZ0O1xuICBjb25zdCB0b3AgPSByZWN0LnRvcCA+PSBpbWFnZVNpemUuaGVpZ2h0ID8gaW1hZ2VTaXplLmhlaWdodCA6IHJlY3QudG9wO1xuICBjb25zdCB3aWR0aCA9IGltYWdlU2l6ZS53aWR0aCA+PSBsZWZ0ICsgcmVjdC53aWR0aCA/IHJlY3Qud2lkdGggOiBpbWFnZVNpemUud2lkdGggLSBsZWZ0O1xuICBjb25zdCBoZWlnaHQgPSBpbWFnZVNpemUuaGVpZ2h0ID49IHRvcCArIHJlY3QuaGVpZ2h0ID8gcmVjdC5oZWlnaHQgOiBpbWFnZVNpemUuaGVpZ2h0IC0gdG9wO1xuICByZXR1cm4ge2xlZnQsIHRvcCwgd2lkdGgsIGhlaWdodH07XG59XG5cbmV4cG9ydCB7XG4gIGNyb3BCYXNlNjRJbWFnZSxcbiAgYmFzZTY0VG9JbWFnZSxcbiAgaW1hZ2VUb0Jhc2U2NCxcbiAgY3JvcEltYWdlLFxuICBnZXRKaW1wSW1hZ2UsXG4gIE1JTUVfSlBFRyxcbiAgTUlNRV9QTkcsXG4gIE1JTUVfQk1QLFxufTtcblxuLyoqXG4gKiBAdHlwZWRlZiB7T21pdDxKaW1wLCdnZXRCdWZmZXInPiAmIHtnZXRCdWZmZXI6IEppbXBbJ2dldEJ1ZmZlckFzeW5jJ119fSBBcHBpdW1KaW1wXG4gKi9cblxuLyoqXG4gKiBAdHlwZWRlZiBSZWdpb25cbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBsZWZ0XG4gKiBAcHJvcGVydHkge251bWJlcn0gdG9wXG4gKiBAcHJvcGVydHkge251bWJlcn0gd2lkdGhcbiAqIEBwcm9wZXJ0eSB7bnVtYmVyfSBoZWlnaHRcbiAqL1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEsTUFBTUEsb0JBQW9CLEdBQUcsQ0FBN0I7QUFDQSxNQUFNQyxzQkFBc0IsR0FBRyxDQUEvQjtBQUNBLE1BQU07RUFBQ0MsU0FBRDtFQUFZQyxRQUFaO0VBQXNCQztBQUF0QixJQUFrQ0MsYUFBeEM7Ozs7O0FBV0EsZUFBZUMsWUFBZixDQUE0QkMsSUFBNUIsRUFBa0M7RUFDaEMsT0FB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
@@ -16,6 +16,7 @@ declare namespace _default {
16
16
  export { node };
17
17
  export { timing };
18
18
  export { env };
19
+ export { console };
19
20
  }
20
21
  export default _default;
21
22
  import * as tempDir from "./tempdir";
@@ -34,5 +35,6 @@ import * as mjpeg from "./mjpeg";
34
35
  import * as node from "./node";
35
36
  import * as timing from "./timing";
36
37
  import * as env from "./env";
37
- export { tempDir, system, util, fs, plist, mkdirp, logger, process, zip, imageUtil, net, mjpeg, node, timing, env };
38
+ import * as console from "./console";
39
+ export { tempDir, system, util, fs, plist, mkdirp, logger, process, zip, imageUtil, net, mjpeg, node, timing, env, console };
38
40
  //# sourceMappingURL=index.d.ts.map
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.env = exports.default = exports.cancellableDelay = void 0;
6
+ exports.env = exports.default = exports.console = exports.cancellableDelay = void 0;
7
7
  Object.defineProperty(exports, "fs", {
8
8
  enumerable: true,
9
9
  get: function () {
@@ -84,6 +84,10 @@ var env = _interopRequireWildcard(require("./env"));
84
84
 
85
85
  exports.env = env;
86
86
 
87
+ var console = _interopRequireWildcard(require("./console"));
88
+
89
+ exports.console = console;
90
+
87
91
  var _npm = require("./npm");
88
92
 
89
93
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -110,7 +114,8 @@ var _default = {
110
114
  mjpeg,
111
115
  node,
112
116
  timing,
113
- env
117
+ env,
118
+ console
114
119
  };
115
120
  exports.default = _default;
116
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL2xpYi9pbmRleC5qcyJdLCJuYW1lcyI6WyJjYW5jZWxsYWJsZURlbGF5IiwidXRpbCIsInRlbXBEaXIiLCJzeXN0ZW0iLCJmcyIsInBsaXN0IiwibWtkaXJwIiwibG9nZ2VyIiwicHJvY2VzcyIsInppcCIsImltYWdlVXRpbCIsIm5ldCIsIm1qcGVnIiwibm9kZSIsInRpbWluZyIsImVudiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFFQTs7Ozs7O0FBRUEsTUFBTTtBQUFFQSxFQUFBQTtBQUFGLElBQXVCQyxJQUE3Qjs7ZUFNZTtBQUNiQyxFQUFBQSxPQURhO0FBQ0pDLEVBQUFBLE1BREk7QUFDSUYsRUFBQUEsSUFESjtBQUNVRyxFQUFBQSxFQUFFLEVBQUZBLE1BRFY7QUFDY0osRUFBQUEsZ0JBRGQ7QUFDZ0NLLEVBQUFBLEtBRGhDO0FBQ3VDQyxFQUFBQSxNQUFNLEVBQU5BLGNBRHZDO0FBQytDQyxFQUFBQSxNQUQvQztBQUN1REMsRUFBQUEsT0FEdkQ7QUFFYkMsRUFBQUEsR0FGYTtBQUVSQyxFQUFBQSxTQUZRO0FBRUdDLEVBQUFBLEdBRkg7QUFFUUMsRUFBQUEsS0FGUjtBQUVlQyxFQUFBQSxJQUZmO0FBRXFCQyxFQUFBQSxNQUZyQjtBQUU2QkMsRUFBQUE7QUFGN0IsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHRlbXBEaXIgZnJvbSAnLi90ZW1wZGlyJztcbmltcG9ydCAqIGFzIHN5c3RlbSBmcm9tICcuL3N5c3RlbSc7XG5pbXBvcnQgKiBhcyB1dGlsIGZyb20gJy4vdXRpbCc7XG5pbXBvcnQgeyBmcyB9IGZyb20gJy4vZnMnO1xuaW1wb3J0ICogYXMgbmV0IGZyb20gJy4vbmV0JztcbmltcG9ydCAqIGFzIHBsaXN0IGZyb20gJy4vcGxpc3QnO1xuaW1wb3J0IHsgbWtkaXJwIH0gZnJvbSAnLi9ta2RpcnAnO1xuaW1wb3J0ICogYXMgbG9nZ2VyIGZyb20gJy4vbG9nZ2luZyc7XG5pbXBvcnQgKiBhcyBwcm9jZXNzIGZyb20gJy4vcHJvY2Vzcyc7XG5pbXBvcnQgKiBhcyB6aXAgZnJvbSAnLi96aXAnO1xuaW1wb3J0ICogYXMgaW1hZ2VVdGlsIGZyb20gJy4vaW1hZ2UtdXRpbCc7XG5pbXBvcnQgKiBhcyBtanBlZyBmcm9tICcuL21qcGVnJztcbmltcG9ydCAqIGFzIG5vZGUgZnJvbSAnLi9ub2RlJztcbmltcG9ydCAqIGFzIHRpbWluZyBmcm9tICcuL3RpbWluZyc7XG5pbXBvcnQgKiBhcyBlbnYgZnJvbSAnLi9lbnYnO1xuXG5leHBvcnQgeyBucG0gfSBmcm9tICcuL25wbSc7XG5cbmNvbnN0IHsgY2FuY2VsbGFibGVEZWxheSB9ID0gdXRpbDtcblxuZXhwb3J0IHtcbiAgdGVtcERpciwgc3lzdGVtLCB1dGlsLCBmcywgY2FuY2VsbGFibGVEZWxheSwgcGxpc3QsIG1rZGlycCwgbG9nZ2VyLCBwcm9jZXNzLFxuICB6aXAsIGltYWdlVXRpbCwgbmV0LCBtanBlZywgbm9kZSwgdGltaW5nLCBlbnZcbn07XG5leHBvcnQgZGVmYXVsdCB7XG4gIHRlbXBEaXIsIHN5c3RlbSwgdXRpbCwgZnMsIGNhbmNlbGxhYmxlRGVsYXksIHBsaXN0LCBta2RpcnAsIGxvZ2dlciwgcHJvY2VzcyxcbiAgemlwLCBpbWFnZVV0aWwsIG5ldCwgbWpwZWcsIG5vZGUsIHRpbWluZywgZW52XG59O1xuIl19
121
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjYW5jZWxsYWJsZURlbGF5IiwidXRpbCIsInRlbXBEaXIiLCJzeXN0ZW0iLCJmcyIsInBsaXN0IiwibWtkaXJwIiwibG9nZ2VyIiwicHJvY2VzcyIsInppcCIsImltYWdlVXRpbCIsIm5ldCIsIm1qcGVnIiwibm9kZSIsInRpbWluZyIsImVudiIsImNvbnNvbGUiXSwic291cmNlcyI6WyIuLi8uLi9saWIvaW5kZXguanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgdGVtcERpciBmcm9tICcuL3RlbXBkaXInO1xuaW1wb3J0ICogYXMgc3lzdGVtIGZyb20gJy4vc3lzdGVtJztcbmltcG9ydCAqIGFzIHV0aWwgZnJvbSAnLi91dGlsJztcbmltcG9ydCB7ZnN9IGZyb20gJy4vZnMnO1xuaW1wb3J0ICogYXMgbmV0IGZyb20gJy4vbmV0JztcbmltcG9ydCAqIGFzIHBsaXN0IGZyb20gJy4vcGxpc3QnO1xuaW1wb3J0IHtta2RpcnB9IGZyb20gJy4vbWtkaXJwJztcbmltcG9ydCAqIGFzIGxvZ2dlciBmcm9tICcuL2xvZ2dpbmcnO1xuaW1wb3J0ICogYXMgcHJvY2VzcyBmcm9tICcuL3Byb2Nlc3MnO1xuaW1wb3J0ICogYXMgemlwIGZyb20gJy4vemlwJztcbmltcG9ydCAqIGFzIGltYWdlVXRpbCBmcm9tICcuL2ltYWdlLXV0aWwnO1xuaW1wb3J0ICogYXMgbWpwZWcgZnJvbSAnLi9tanBlZyc7XG5pbXBvcnQgKiBhcyBub2RlIGZyb20gJy4vbm9kZSc7XG5pbXBvcnQgKiBhcyB0aW1pbmcgZnJvbSAnLi90aW1pbmcnO1xuaW1wb3J0ICogYXMgZW52IGZyb20gJy4vZW52JztcbmltcG9ydCAqIGFzIGNvbnNvbGUgZnJvbSAnLi9jb25zb2xlJztcblxuZXhwb3J0IHtucG19IGZyb20gJy4vbnBtJztcblxuY29uc3Qge2NhbmNlbGxhYmxlRGVsYXl9ID0gdXRpbDtcblxuZXhwb3J0IHtcbiAgdGVtcERpcixcbiAgc3lzdGVtLFxuICB1dGlsLFxuICBmcyxcbiAgY2FuY2VsbGFibGVEZWxheSxcbiAgcGxpc3QsXG4gIG1rZGlycCxcbiAgbG9nZ2VyLFxuICBwcm9jZXNzLFxuICB6aXAsXG4gIGltYWdlVXRpbCxcbiAgbmV0LFxuICBtanBlZyxcbiAgbm9kZSxcbiAgdGltaW5nLFxuICBlbnYsXG4gIGNvbnNvbGUsXG59O1xuZXhwb3J0IGRlZmF1bHQge1xuICB0ZW1wRGlyLFxuICBzeXN0ZW0sXG4gIHV0aWwsXG4gIGZzLFxuICBjYW5jZWxsYWJsZURlbGF5LFxuICBwbGlzdCxcbiAgbWtkaXJwLFxuICBsb2dnZXIsXG4gIHByb2Nlc3MsXG4gIHppcCxcbiAgaW1hZ2VVdGlsLFxuICBuZXQsXG4gIG1qcGVnLFxuICBub2RlLFxuICB0aW1pbmcsXG4gIGVudixcbiAgY29uc29sZSxcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFDQTs7OztBQUNBOzs7O0FBQ0E7Ozs7QUFFQTs7Ozs7O0FBRUEsTUFBTTtFQUFDQTtBQUFELElBQXFCQyxJQUEzQjs7ZUFxQmU7RUFDYkMsT0FEYTtFQUViQyxNQUZhO0VBR2JGLElBSGE7RUFJYkcsRUFBRSxFQUFGQSxNQUphO0VBS2JKLGdCQUxhO0VBTWJLLEtBTmE7RUFPYkMsTUFBTSxFQUFOQSxjQVBhO0VBUWJDLE1BUmE7RUFTYkMsT0FUYTtFQVViQyxHQVZhO0VBV2JDLFNBWGE7RUFZYkMsR0FaYTtFQWFiQyxLQWJhO0VBY2JDLElBZGE7RUFlYkMsTUFmYTtFQWdCYkMsR0FoQmE7RUFpQmJDO0FBakJhLEMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"log-internal.d.ts","sourceRoot":"","sources":["../../lib/log-internal.js"],"names":[],"mappings":";;;;;aA+Ic,MAAM;;;;;UACN,MAAM;;;;;;;;;;;;;;;;;;aAYN,MAAM;;;;;;;AApBpB,kEAAkE;AAlIlE;IAEI,cAAgB;IAGlB;;;OAGG;IACH,4CAEC;IAED;;;;;;;OAOG;IACH,gBALW,MAAM,GAAC,IAAI,GAGT,4BAA4B,CAgDxC;IAED;;;;;;;;;OASG;IACH,kBAPW,MAAM,GAAC,MAAM,EAAE,GAAC,IAAI,EAAE,GAIpB,QAAQ,MAAM,EAAE,CAAC,CA+B7B;IAED;;;;;;;OAOG;IACH,gBAHW,MAAM,GACJ,MAAM,CAYlB;CACF"}
1
+ {"version":3,"file":"log-internal.d.ts","sourceRoot":"","sources":["../../lib/log-internal.js"],"names":[],"mappings":";;;;;aAoJc,MAAM;;;;;UACN,MAAM;;;;;;;;;;;;;;;;;;aAYN,MAAM;;;;;;;AApBpB,kEAAkE;AAxIlE;IAEI,cAAgB;IAGlB;;;OAGG;IACH,4CAEC;IAED;;;;;;;OAOG;IACH,gBALW,MAAM,GAAC,IAAI,GAGT,4BAA4B,CAsDxC;IAED;;;;;;;;;OASG;IACH,kBAPW,MAAM,GAAC,MAAM,EAAE,GAAC,IAAI,EAAE,GAIpB,QAAQ,MAAM,EAAE,CAAC,CA+B7B;IAED;;;;;;;OAOG;IACH,gBAHW,MAAM,GACJ,MAAM,CAYlB;CACF"}