@anansi/core 0.15.4 → 0.15.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/lib/scripts/serve.d.ts.map +1 -1
- package/lib/scripts/serve.js +8 -5
- package/lib/scripts/startDevserver.d.ts.map +1 -1
- package/lib/scripts/startDevserver.js +9 -6
- package/lib/scripts/types.d.ts +1 -1
- package/lib/scripts/types.d.ts.map +1 -1
- package/lib/scripts/types.js +1 -1
- package/package.json +4 -4
- package/src/scripts/serve.ts +11 -7
- package/src/scripts/startDevserver.ts +12 -8
- package/src/scripts/types.ts +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,20 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
### [0.15.6](https://github.com/ntucker/anansi/compare/@anansi/core@0.15.5...@anansi/core@0.15.6) (2022-12-17)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @anansi/core
|
|
9
|
+
|
|
10
|
+
### [0.15.5](https://github.com/ntucker/anansi/compare/@anansi/core@0.15.4...@anansi/core@0.15.5) (2022-12-06)
|
|
11
|
+
|
|
12
|
+
### 🐛 Bug Fix
|
|
13
|
+
|
|
14
|
+
* Polyfill Object.hasOwn for node 14 or lower ([268ba81](https://github.com/ntucker/anansi/commit/268ba81b5c4aa4811262aa59d346d69404adf298))
|
|
15
|
+
|
|
16
|
+
### 📦 Package
|
|
17
|
+
|
|
18
|
+
* Update webpack packages ([#1787](https://github.com/ntucker/anansi/issues/1787)) ([d297255](https://github.com/ntucker/anansi/commit/d29725594e94e3f30b7648c62715eb863534261f))
|
|
19
|
+
|
|
6
20
|
### [0.15.4](https://github.com/ntucker/anansi/compare/@anansi/core@0.15.3...@anansi/core@0.15.4) (2022-12-02)
|
|
7
21
|
|
|
8
22
|
### 💅 Enhancement
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/scripts/serve.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/scripts/serve.ts"],"names":[],"mappings":";AAeA,OAAO,sBAAsB,CAAC;AAe9B,MAAM,CAAC,OAAO,UAAU,KAAK,CAC3B,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,QAqK9D"}
|
package/lib/scripts/serve.js
CHANGED
|
@@ -4,14 +4,17 @@
|
|
|
4
4
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
5
|
exports.__esModule = true;
|
|
6
6
|
exports.default = serve;
|
|
7
|
-
var
|
|
8
|
-
var _fs = _interopRequireDefault(require("fs"));
|
|
9
|
-
var _path = _interopRequireDefault(require("path"));
|
|
7
|
+
var _compression = _interopRequireDefault(require("compression"));
|
|
10
8
|
var _express = _interopRequireDefault(require("express"));
|
|
9
|
+
var _fs = _interopRequireDefault(require("fs"));
|
|
11
10
|
var _ora = _interopRequireDefault(require("ora"));
|
|
12
|
-
var
|
|
11
|
+
var _path = _interopRequireDefault(require("path"));
|
|
12
|
+
var _util = require("util");
|
|
13
13
|
require("cross-fetch/polyfill");
|
|
14
14
|
var _getProxyMiddlewares = _interopRequireDefault(require("./getProxyMiddlewares"));
|
|
15
|
+
Object.hasOwn = Object.hasOwn || /* istanbul ignore next */function hasOwn(it, key) {
|
|
16
|
+
return Object.prototype.hasOwnProperty.call(it, key);
|
|
17
|
+
};
|
|
15
18
|
// run directly from node
|
|
16
19
|
if (require.main === module) {
|
|
17
20
|
const entrypoint = process.argv[2];
|
|
@@ -150,4 +153,4 @@ function getManifestPathFromWebpackconfig(webpackConfig) {
|
|
|
150
153
|
const manifestPath = _path.default.join((_webpackConfig$output = webpackConfig == null ? void 0 : (_webpackConfig$output2 = webpackConfig.output) == null ? void 0 : _webpackConfig$output2.path) != null ? _webpackConfig$output : '', manifestFilename);
|
|
151
154
|
return manifestPath;
|
|
152
155
|
}
|
|
153
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwibWFpbiIsIm1vZHVsZSIsImVudHJ5cG9pbnQiLCJwcm9jZXNzIiwiYXJndiIsImNvbnNvbGUiLCJsb2ciLCJleGl0Iiwic2VydmUiLCJvcHRpb25zIiwiUE9SVCIsImVudiIsImxvYWRlciIsIm9yYSIsInN0YXJ0Iiwid2VicGFja0NvbmZpZyIsInJlc29sdmUiLCJwYXRoIiwiam9pbiIsImN3ZCIsIm1hbmlmZXN0UGF0aCIsImdldE1hbmlmZXN0UGF0aEZyb21XZWJwYWNrY29uZmlnIiwibW9kZSIsInJlYWRGaWxlIiwicHJvbWlzaWZ5IiwiZGlza0ZzIiwic2VydmVyIiwiaGFuZGxlRXJyb3JzIiwiZm4iLCJyZXEiLCJyZXMiLCJuZXh0IiwieCIsImluaXRpYWxpemVBcHAiLCJjbGllbnRNYW5pZmVzdCIsImluZm8iLCJmYWlsIiwid3JhcHBpbmdBcHAiLCJleHByZXNzIiwidXNlIiwiY29tcHJlc3MiLCJzZXJ2ZUFzc2V0cyIsImZpbGVuYW1lIiwidXJsIiwic3Vic3RyIiwiV0VCUEFDS19QVUJMSUNfUEFUSCIsImxlbmd0aCIsImFzc2V0UGF0aCIsIm91dHB1dFBhdGgiLCJleGlzdHNTeW5jIiwibHN0YXRTeW5jIiwiaXNEaXJlY3RvcnkiLCJmaWxlQ29udGVudCIsInRvU3RyaW5nIiwiY29udGVudFR5cGUiLCJzZW5kIiwiZSIsInNlcnZlUHJveHkiLCJkZXZDb25maWciLCJkZXZTZXJ2ZXIiLCJwcm94eSIsIm1pZGRsZXdhcmVzIiwiZ2V0UHJveHlNaWRkbGV3YXJlcyIsIm1hcCIsIm1pZGRsZXdhcmUiLCJyZW5kZXIiLCJkZWZhdWx0IiwiZ2V0IiwiZW5kc1dpdGgiLCJzdGF0dXNDb2RlIiwic2V0SGVhZGVyIiwic29ja2V0Iiwib24iLCJlcnJvciIsImxpc3RlbiIsInN5c2NhbGwiLCJpc1BpcGUiLCJwb3J0T3JQaXBlIiwiTnVtYmVyIiwiaXNOYU4iLCJiaW5kIiwiY29kZSIsIndhcm4iLCJjbG9zZSIsIm1hbmlmZXN0RmlsZW5hbWUiLCJwbHVnaW5zIiwiZmluZCIsInBsdWdpbiIsImNvbnN0cnVjdG9yIiwibmFtZSIsIm9wdHMiLCJvdXRwdXQiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NyaXB0cy9zZXJ2ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIjIS91c3IvYmluL2VudiBub2RlXG5cbmltcG9ydCB7IHByb21pc2lmeSB9IGZyb20gJ3V0aWwnO1xuaW1wb3J0IGRpc2tGcyBmcm9tICdmcyc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB3ZWJwYWNrLCB7IHdlYiB9IGZyb20gJ3dlYnBhY2snO1xuaW1wb3J0IHsgU2VydmVyLCBJbmNvbWluZ01lc3NhZ2UsIFNlcnZlclJlc3BvbnNlIH0gZnJvbSAnaHR0cCc7XG5pbXBvcnQgZXhwcmVzcywgeyBOZXh0RnVuY3Rpb24gfSBmcm9tICdleHByZXNzJztcbmltcG9ydCBvcmEgZnJvbSAnb3JhJztcbmltcG9ydCBjb21wcmVzcyBmcm9tICdjb21wcmVzc2lvbic7XG5cbmltcG9ydCAnY3Jvc3MtZmV0Y2gvcG9seWZpbGwnO1xuaW1wb3J0IHsgUmVuZGVyIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgZ2V0UHJveHlNaWRkbGV3YXJlcyBmcm9tICcuL2dldFByb3h5TWlkZGxld2FyZXMnO1xuXG4vLyBydW4gZGlyZWN0bHkgZnJvbSBub2RlXG5pZiAocmVxdWlyZS5tYWluID09PSBtb2R1bGUpIHtcbiAgY29uc3QgZW50cnlwb2ludCA9IHByb2Nlc3MuYXJndlsyXTtcblxuICBpZiAoIWVudHJ5cG9pbnQpIHtcbiAgICBjb25zb2xlLmxvZyhgVXNhZ2U6ICR7cHJvY2Vzcy5hcmd2WzBdfSA8c2VydmVyLWVudHJ5cG9pbnQ+YCk7XG4gICAgcHJvY2Vzcy5leGl0KC0xKTtcbiAgfVxuICBzZXJ2ZShlbnRyeXBvaW50KTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gc2VydmUoXG4gIGVudHJ5cG9pbnQ6IHN0cmluZyxcbiAgb3B0aW9uczogeyBzZXJ2ZUFzc2V0cz86IGJvb2xlYW47IHNlcnZlUHJveHk/OiBib29sZWFuIH0gPSB7fSxcbikge1xuICBjb25zdCBQT1JUID0gcHJvY2Vzcy5lbnYuUE9SVCB8fCA4MDgwO1xuXG4gIGNvbnN0IGxvYWRlciA9IG9yYSgnSW5pdGlhbGl6aW5nJykuc3RhcnQoKTtcblxuICBjb25zdCB3ZWJwYWNrQ29uZmlnOiAoXG4gICAgZW52OiBhbnksXG4gICAgYXJndjogYW55LFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdmFyLXJlcXVpcmVzXG4gICkgPT4gd2VicGFjay5Db25maWd1cmF0aW9uID0gcmVxdWlyZShyZXF1aXJlLnJlc29sdmUoXG4gICAgLy8gVE9ETzogdXNlIG5vcm1hbCByZXNvbHV0aW9uIGFsZ29yaXRobSB0byBmaW5kIHdlYnBhY2sgZmlsZVxuICAgIHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCAnd2VicGFjay5jb25maWcnKSxcbiAgKSk7XG5cbiAgY29uc3QgbWFuaWZlc3RQYXRoID0gZ2V0TWFuaWZlc3RQYXRoRnJvbVdlYnBhY2tjb25maWcoXG4gICAgd2VicGFja0NvbmZpZyh7fSwgeyBtb2RlOiAncHJvZHVjdGlvbicgfSksXG4gICk7XG5cbiAgY29uc3QgcmVhZEZpbGUgPSBwcm9taXNpZnkoZGlza0ZzLnJlYWRGaWxlKTtcbiAgbGV0IHNlcnZlcjogU2VydmVyIHwgdW5kZWZpbmVkO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZUVycm9yczxcbiAgICBGIGV4dGVuZHMgKFxuICAgICAgcmVxOiBSZXF1ZXN0IHwgSW5jb21pbmdNZXNzYWdlLFxuICAgICAgcmVzOiBSZXNwb25zZSB8IFNlcnZlclJlc3BvbnNlLFxuICAgICkgPT4gUHJvbWlzZTx2b2lkPixcbiAgPihmbjogRikge1xuICAgIHJldHVybiBhc3luYyBmdW5jdGlvbiAoXG4gICAgICByZXE6IFJlcXVlc3QgfCBJbmNvbWluZ01lc3NhZ2UsXG4gICAgICByZXM6IFJlc3BvbnNlIHwgU2VydmVyUmVzcG9uc2UsXG4gICAgICBuZXh0OiBOZXh0RnVuY3Rpb24sXG4gICAgKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gYXdhaXQgZm4ocmVxLCByZXMpO1xuICAgICAgfSBjYXRjaCAoeCkge1xuICAgICAgICBuZXh0KHgpO1xuICAgICAgfVxuICAgIH07XG4gIH1cblxuICAvLyBTdGFydCB0aGUgZXhwcmVzcyBzZXJ2ZXIgYWZ0ZXIgdGhlIGZpcnN0IGNvbXBpbGF0aW9uXG4gIGZ1bmN0aW9uIGluaXRpYWxpemVBcHAoY2xpZW50TWFuaWZlc3Q6IHdlYnBhY2suU3RhdHNDb21waWxhdGlvbikge1xuICAgIGxvYWRlci5pbmZvKCdMYXVuY2hpbmcgc2VydmVyJyk7XG4gICAgaWYgKCFjbGllbnRNYW5pZmVzdCkge1xuICAgICAgbG9hZGVyLmZhaWwoJ01hbmlmZXN0IG5vdCBmb3VuZCcpO1xuICAgICAgLy8gVE9ETzogaGFuZGxlIG1vcmUgZ3JhY2VmdWxseVxuICAgICAgcHJvY2Vzcy5leGl0KC0xKTtcbiAgICB9XG5cbiAgICBjb25zdCB3cmFwcGluZ0FwcCA9IGV4cHJlc3MoKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICAvL0B0cy1pZ25vcmVcbiAgICB3cmFwcGluZ0FwcC51c2UoY29tcHJlc3MoKSk7XG5cbiAgICAvLyBBU1NFVFNcbiAgICBpZiAob3B0aW9ucy5zZXJ2ZUFzc2V0cykge1xuICAgICAgd3JhcHBpbmdBcHAudXNlKFxuICAgICAgICBhc3luYyAoXG4gICAgICAgICAgcmVxOiBSZXF1ZXN0IHwgSW5jb21pbmdNZXNzYWdlLFxuICAgICAgICAgIHJlczogYW55LFxuICAgICAgICAgIG5leHQ6IE5leHRGdW5jdGlvbixcbiAgICAgICAgKSA9PiB7XG4gICAgICAgICAgY29uc3QgZmlsZW5hbWUgPVxuICAgICAgICAgICAgcmVxLnVybD8uc3Vic3RyKFxuICAgICAgICAgICAgICAocHJvY2Vzcy5lbnYuV0VCUEFDS19QVUJMSUNfUEFUSCBhcyBzdHJpbmcpLmxlbmd0aCxcbiAgICAgICAgICAgICkgPz8gJyc7XG4gICAgICAgICAgY29uc3QgYXNzZXRQYXRoID0gcGF0aC5qb2luKFxuICAgICAgICAgICAgY2xpZW50TWFuaWZlc3Qub3V0cHV0UGF0aCA/PyAnJyxcbiAgICAgICAgICAgIGZpbGVuYW1lLFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBkaXNrRnMuZXhpc3RzU3luYyhhc3NldFBhdGgpICYmXG4gICAgICAgICAgICAhZGlza0ZzLmxzdGF0U3luYyhhc3NldFBhdGgpLmlzRGlyZWN0b3J5KClcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIGNvbnN0IGZpbGVDb250ZW50ID0gKGF3YWl0IHJlYWRGaWxlKGFzc2V0UGF0aCkpLnRvU3RyaW5nKCk7XG4gICAgICAgICAgICAgIHJlcy5jb250ZW50VHlwZShmaWxlbmFtZSk7XG4gICAgICAgICAgICAgIHJlcy5zZW5kKGZpbGVDb250ZW50KTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIG5leHQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV4dCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gUFJPWElFU1xuICAgIGlmIChvcHRpb25zLnNlcnZlUHJveHkpIHtcbiAgICAgIGNvbnN0IGRldkNvbmZpZzogd2VicGFjay5Db25maWd1cmF0aW9uID0gd2VicGFja0NvbmZpZyhcbiAgICAgICAge30sXG4gICAgICAgIHsgbW9kZTogJ2RldmVsb3BtZW50JyB9LFxuICAgICAgKTtcbiAgICAgIGlmIChkZXZDb25maWcuZGV2U2VydmVyPy5wcm94eSkge1xuICAgICAgICBjb25zdCBtaWRkbGV3YXJlcyA9IGdldFByb3h5TWlkZGxld2FyZXMoZGV2Q29uZmlnLmRldlNlcnZlcj8ucHJveHkpO1xuICAgICAgICBpZiAobWlkZGxld2FyZXMpIHtcbiAgICAgICAgICB3cmFwcGluZ0FwcC51c2UoLi4ubWlkZGxld2FyZXMubWFwKCh7IG1pZGRsZXdhcmUgfSkgPT4gbWlkZGxld2FyZSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU0VSVkVSIFNJREUgUkVOREVSSU5HXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby12YXItcmVxdWlyZXNcbiAgICBjb25zdCByZW5kZXI6IFJlbmRlciA9IHJlcXVpcmUocGF0aC5qb2luKFxuICAgICAgcHJvY2Vzcy5jd2QoKSxcbiAgICAgIGVudHJ5cG9pbnQsXG4gICAgKSkuZGVmYXVsdDtcblxuICAgIHdyYXBwaW5nQXBwLmdldChcbiAgICAgICcvKicsXG4gICAgICBoYW5kbGVFcnJvcnMoYXN5bmMgZnVuY3Rpb24gKHJlcTogYW55LCByZXM6IGFueSkge1xuICAgICAgICBpZiAocmVxLnVybC5lbmRzV2l0aCgnZmF2aWNvbi5pY28nKSkge1xuICAgICAgICAgIHJlcy5zdGF0dXNDb2RlID0gNDA0O1xuICAgICAgICAgIHJlcy5zZXRIZWFkZXIoJ0NvbnRlbnQtdHlwZScsICd0ZXh0L2h0bWwnKTtcbiAgICAgICAgICByZXMuc2VuZCgnbm90IGZvdW5kJyk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHJlcy5zb2NrZXQub24oJ2Vycm9yJywgKGVycm9yOiB1bmtub3duKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignRmF0YWwnLCBlcnJvcik7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGF3YWl0IHJlbmRlcihjbGllbnRNYW5pZmVzdCwgcmVxLCByZXMpO1xuICAgICAgfSksXG4gICAgKTtcblxuICAgIHNlcnZlciA9IHdyYXBwaW5nQXBwXG4gICAgICAubGlzdGVuKFBPUlQsICgpID0+IHtcbiAgICAgICAgbG9hZGVyLmluZm8oYExpc3RlbmluZyBhdCAke1BPUlR9Li4uYCk7XG4gICAgICB9KVxuICAgICAgLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlcnJvcjogYW55KSB7XG4gICAgICAgIGlmIChlcnJvci5zeXNjYWxsICE9PSAnbGlzdGVuJykge1xuICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGlzUGlwZSA9IChwb3J0T3JQaXBlOiBzdHJpbmcgfCBudW1iZXIpID0+XG4gICAgICAgICAgTnVtYmVyLmlzTmFOKHBvcnRPclBpcGUpO1xuICAgICAgICBjb25zdCBiaW5kID0gaXNQaXBlKFBPUlQpID8gJ1BpcGUgJyArIFBPUlQgOiAnUG9ydCAnICsgUE9SVDtcbiAgICAgICAgc3dpdGNoIChlcnJvci5jb2RlKSB7XG4gICAgICAgICAgY2FzZSAnRUFDQ0VTJzpcbiAgICAgICAgICAgIGxvYWRlci5mYWlsKGJpbmQgKyAnIHJlcXVpcmVzIGVsZXZhdGVkIHByaXZpbGVnZXMnKTtcbiAgICAgICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZmFsbHRocm91Z2hcbiAgICAgICAgICBjYXNlICdFQUREUklOVVNFJzpcbiAgICAgICAgICAgIGxvYWRlci5mYWlsKGJpbmQgKyAnIGlzIGFscmVhZHkgaW4gdXNlJyk7XG4gICAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWZhbGx0aHJvdWdoXG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdmFyLXJlcXVpcmVzXG4gIGluaXRpYWxpemVBcHAocmVxdWlyZShtYW5pZmVzdFBhdGgpKTtcblxuICBwcm9jZXNzLm9uKCdTSUdJTlQnLCAoKSA9PiB7XG4gICAgbG9hZGVyLndhcm4oJ1JlY2VpdmVkIFNJR0lOVCwgZGV2c2VydmVyIHNodXR0aW5nIGRvd24nKTtcbiAgICBpZiAoc2VydmVyKSBjb25zb2xlLmxvZygnQ2xvc2luZyBzZXJ2ZXInKTtcbiAgICBzZXJ2ZXI/LmNsb3NlKCgpID0+IHtcbiAgICAgIGxvYWRlci5pbmZvKCdTZXJ2ZXIgY2xvc2VkJyk7XG4gICAgfSk7XG4gICAgcHJvY2Vzcy5leGl0KC0xKTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGdldE1hbmlmZXN0UGF0aEZyb21XZWJwYWNrY29uZmlnKFxuICB3ZWJwYWNrQ29uZmlnOiB3ZWJwYWNrLkNvbmZpZ3VyYXRpb24sXG4pIHtcbiAgY29uc3QgbWFuaWZlc3RGaWxlbmFtZTogc3RyaW5nID1cbiAgICAoXG4gICAgICB3ZWJwYWNrQ29uZmlnPy5wbHVnaW5zPy5maW5kKHBsdWdpbiA9PiB7XG4gICAgICAgIHJldHVybiBwbHVnaW4uY29uc3RydWN0b3IubmFtZSA9PT0gJ1N0YXRzV3JpdGVyUGx1Z2luJztcbiAgICAgIH0pIGFzIGFueVxuICAgICk/Lm9wdHM/LmZpbGVuYW1lID8/ICdtYW5pZmVzdC5qc29uJztcblxuICBjb25zdCBtYW5pZmVzdFBhdGggPSBwYXRoLmpvaW4oXG4gICAgd2VicGFja0NvbmZpZz8ub3V0cHV0Py5wYXRoID8/ICcnLFxuICAgIG1hbmlmZXN0RmlsZW5hbWUsXG4gICk7XG4gIHJldHVybiBtYW5pZmVzdFBhdGg7XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQW1COztBQUFBO0FBQUE7QUFBQTtBQUVuQjtBQUNBO0FBQ0E7QUFHQTtBQUNBO0FBQ0E7QUFFQTtBQUVBO0FBRUE7QUFDQSxJQUFJQSxPQUFPLENBQUNDLElBQUksS0FBS0MsTUFBTSxFQUFFO0VBQzNCLE1BQU1DLFVBQVUsR0FBR0MsT0FBTyxDQUFDQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0VBRWxDLElBQUksQ0FBQ0YsVUFBVSxFQUFFO0lB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
|
|
156
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPYmplY3QiLCJoYXNPd24iLCJpdCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsInJlcXVpcmUiLCJtYWluIiwibW9kdWxlIiwiZW50cnlwb2ludCIsInByb2Nlc3MiLCJhcmd2IiwiY29uc29sZSIsImxvZyIsImV4aXQiLCJzZXJ2ZSIsIm9wdGlvbnMiLCJQT1JUIiwiZW52IiwibG9hZGVyIiwib3JhIiwic3RhcnQiLCJ3ZWJwYWNrQ29uZmlnIiwicmVzb2x2ZSIsInBhdGgiLCJqb2luIiwiY3dkIiwibWFuaWZlc3RQYXRoIiwiZ2V0TWFuaWZlc3RQYXRoRnJvbVdlYnBhY2tjb25maWciLCJtb2RlIiwicmVhZEZpbGUiLCJwcm9taXNpZnkiLCJkaXNrRnMiLCJzZXJ2ZXIiLCJoYW5kbGVFcnJvcnMiLCJmbiIsInJlcSIsInJlcyIsIm5leHQiLCJ4IiwiaW5pdGlhbGl6ZUFwcCIsImNsaWVudE1hbmlmZXN0IiwiaW5mbyIsImZhaWwiLCJ3cmFwcGluZ0FwcCIsImV4cHJlc3MiLCJ1c2UiLCJjb21wcmVzcyIsInNlcnZlQXNzZXRzIiwiZmlsZW5hbWUiLCJ1cmwiLCJzdWJzdHIiLCJXRUJQQUNLX1BVQkxJQ19QQVRIIiwibGVuZ3RoIiwiYXNzZXRQYXRoIiwib3V0cHV0UGF0aCIsImV4aXN0c1N5bmMiLCJsc3RhdFN5bmMiLCJpc0RpcmVjdG9yeSIsImZpbGVDb250ZW50IiwidG9TdHJpbmciLCJjb250ZW50VHlwZSIsInNlbmQiLCJlIiwic2VydmVQcm94eSIsImRldkNvbmZpZyIsImRldlNlcnZlciIsInByb3h5IiwibWlkZGxld2FyZXMiLCJnZXRQcm94eU1pZGRsZXdhcmVzIiwibWFwIiwibWlkZGxld2FyZSIsInJlbmRlciIsImRlZmF1bHQiLCJnZXQiLCJlbmRzV2l0aCIsInN0YXR1c0NvZGUiLCJzZXRIZWFkZXIiLCJzb2NrZXQiLCJvbiIsImVycm9yIiwibGlzdGVuIiwic3lzY2FsbCIsImlzUGlwZSIsInBvcnRPclBpcGUiLCJOdW1iZXIiLCJpc05hTiIsImJpbmQiLCJjb2RlIiwid2FybiIsImNsb3NlIiwibWFuaWZlc3RGaWxlbmFtZSIsInBsdWdpbnMiLCJmaW5kIiwicGx1Z2luIiwiY29uc3RydWN0b3IiLCJuYW1lIiwib3B0cyIsIm91dHB1dCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY3JpcHRzL3NlcnZlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIiMhL3Vzci9iaW4vZW52IG5vZGVcbk9iamVjdC5oYXNPd24gPVxuICBPYmplY3QuaGFzT3duIHx8XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovIGZ1bmN0aW9uIGhhc093bihpdCwga2V5KSB7XG4gICAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChpdCwga2V5KTtcbiAgfTtcbmltcG9ydCBjb21wcmVzcyBmcm9tICdjb21wcmVzc2lvbic7XG5pbXBvcnQgZXhwcmVzcywgeyBOZXh0RnVuY3Rpb24gfSBmcm9tICdleHByZXNzJztcbmltcG9ydCBkaXNrRnMgZnJvbSAnZnMnO1xuaW1wb3J0IHsgU2VydmVyLCBJbmNvbWluZ01lc3NhZ2UsIFNlcnZlclJlc3BvbnNlIH0gZnJvbSAnaHR0cCc7XG5pbXBvcnQgb3JhIGZyb20gJ29yYSc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IHByb21pc2lmeSB9IGZyb20gJ3V0aWwnO1xuaW1wb3J0IHdlYnBhY2ssIHsgd2ViIH0gZnJvbSAnd2VicGFjayc7XG5cbmltcG9ydCAnY3Jvc3MtZmV0Y2gvcG9seWZpbGwnO1xuaW1wb3J0IGdldFByb3h5TWlkZGxld2FyZXMgZnJvbSAnLi9nZXRQcm94eU1pZGRsZXdhcmVzJztcbmltcG9ydCB7IFJlbmRlciB9IGZyb20gJy4vdHlwZXMnO1xuXG4vLyBydW4gZGlyZWN0bHkgZnJvbSBub2RlXG5pZiAocmVxdWlyZS5tYWluID09PSBtb2R1bGUpIHtcbiAgY29uc3QgZW50cnlwb2ludCA9IHByb2Nlc3MuYXJndlsyXTtcblxuICBpZiAoIWVudHJ5cG9pbnQpIHtcbiAgICBjb25zb2xlLmxvZyhgVXNhZ2U6ICR7cHJvY2Vzcy5hcmd2WzBdfSA8c2VydmVyLWVudHJ5cG9pbnQ+YCk7XG4gICAgcHJvY2Vzcy5leGl0KC0xKTtcbiAgfVxuICBzZXJ2ZShlbnRyeXBvaW50KTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gc2VydmUoXG4gIGVudHJ5cG9pbnQ6IHN0cmluZyxcbiAgb3B0aW9uczogeyBzZXJ2ZUFzc2V0cz86IGJvb2xlYW47IHNlcnZlUHJveHk/OiBib29sZWFuIH0gPSB7fSxcbikge1xuICBjb25zdCBQT1JUID0gcHJvY2Vzcy5lbnYuUE9SVCB8fCA4MDgwO1xuXG4gIGNvbnN0IGxvYWRlciA9IG9yYSgnSW5pdGlhbGl6aW5nJykuc3RhcnQoKTtcblxuICBjb25zdCB3ZWJwYWNrQ29uZmlnOiAoXG4gICAgZW52OiBhbnksXG4gICAgYXJndjogYW55LFxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdmFyLXJlcXVpcmVzXG4gICkgPT4gd2VicGFjay5Db25maWd1cmF0aW9uID0gcmVxdWlyZShyZXF1aXJlLnJlc29sdmUoXG4gICAgLy8gVE9ETzogdXNlIG5vcm1hbCByZXNvbHV0aW9uIGFsZ29yaXRobSB0byBmaW5kIHdlYnBhY2sgZmlsZVxuICAgIHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCAnd2VicGFjay5jb25maWcnKSxcbiAgKSk7XG5cbiAgY29uc3QgbWFuaWZlc3RQYXRoID0gZ2V0TWFuaWZlc3RQYXRoRnJvbVdlYnBhY2tjb25maWcoXG4gICAgd2VicGFja0NvbmZpZyh7fSwgeyBtb2RlOiAncHJvZHVjdGlvbicgfSksXG4gICk7XG5cbiAgY29uc3QgcmVhZEZpbGUgPSBwcm9taXNpZnkoZGlza0ZzLnJlYWRGaWxlKTtcbiAgbGV0IHNlcnZlcjogU2VydmVyIHwgdW5kZWZpbmVkO1xuXG4gIGZ1bmN0aW9uIGhhbmRsZUVycm9yczxcbiAgICBGIGV4dGVuZHMgKFxuICAgICAgcmVxOiBSZXF1ZXN0IHwgSW5jb21pbmdNZXNzYWdlLFxuICAgICAgcmVzOiBSZXNwb25zZSB8IFNlcnZlclJlc3BvbnNlLFxuICAgICkgPT4gUHJvbWlzZTx2b2lkPixcbiAgPihmbjogRikge1xuICAgIHJldHVybiBhc3luYyBmdW5jdGlvbiAoXG4gICAgICByZXE6IFJlcXVlc3QgfCBJbmNvbWluZ01lc3NhZ2UsXG4gICAgICByZXM6IFJlc3BvbnNlIHwgU2VydmVyUmVzcG9uc2UsXG4gICAgICBuZXh0OiBOZXh0RnVuY3Rpb24sXG4gICAgKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gYXdhaXQgZm4ocmVxLCByZXMpO1xuICAgICAgfSBjYXRjaCAoeCkge1xuICAgICAgICBuZXh0KHgpO1xuICAgICAgfVxuICAgIH07XG4gIH1cblxuICAvLyBTdGFydCB0aGUgZXhwcmVzcyBzZXJ2ZXIgYWZ0ZXIgdGhlIGZpcnN0IGNvbXBpbGF0aW9uXG4gIGZ1bmN0aW9uIGluaXRpYWxpemVBcHAoY2xpZW50TWFuaWZlc3Q6IHdlYnBhY2suU3RhdHNDb21waWxhdGlvbikge1xuICAgIGxvYWRlci5pbmZvKCdMYXVuY2hpbmcgc2VydmVyJyk7XG4gICAgaWYgKCFjbGllbnRNYW5pZmVzdCkge1xuICAgICAgbG9hZGVyLmZhaWwoJ01hbmlmZXN0IG5vdCBmb3VuZCcpO1xuICAgICAgLy8gVE9ETzogaGFuZGxlIG1vcmUgZ3JhY2VmdWxseVxuICAgICAgcHJvY2Vzcy5leGl0KC0xKTtcbiAgICB9XG5cbiAgICBjb25zdCB3cmFwcGluZ0FwcCA9IGV4cHJlc3MoKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICAvL0B0cy1pZ25vcmVcbiAgICB3cmFwcGluZ0FwcC51c2UoY29tcHJlc3MoKSk7XG5cbiAgICAvLyBBU1NFVFNcbiAgICBpZiAob3B0aW9ucy5zZXJ2ZUFzc2V0cykge1xuICAgICAgd3JhcHBpbmdBcHAudXNlKFxuICAgICAgICBhc3luYyAoXG4gICAgICAgICAgcmVxOiBSZXF1ZXN0IHwgSW5jb21pbmdNZXNzYWdlLFxuICAgICAgICAgIHJlczogYW55LFxuICAgICAgICAgIG5leHQ6IE5leHRGdW5jdGlvbixcbiAgICAgICAgKSA9PiB7XG4gICAgICAgICAgY29uc3QgZmlsZW5hbWUgPVxuICAgICAgICAgICAgcmVxLnVybD8uc3Vic3RyKFxuICAgICAgICAgICAgICAocHJvY2Vzcy5lbnYuV0VCUEFDS19QVUJMSUNfUEFUSCBhcyBzdHJpbmcpLmxlbmd0aCxcbiAgICAgICAgICAgICkgPz8gJyc7XG4gICAgICAgICAgY29uc3QgYXNzZXRQYXRoID0gcGF0aC5qb2luKFxuICAgICAgICAgICAgY2xpZW50TWFuaWZlc3Qub3V0cHV0UGF0aCA/PyAnJyxcbiAgICAgICAgICAgIGZpbGVuYW1lLFxuICAgICAgICAgICk7XG5cbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBkaXNrRnMuZXhpc3RzU3luYyhhc3NldFBhdGgpICYmXG4gICAgICAgICAgICAhZGlza0ZzLmxzdGF0U3luYyhhc3NldFBhdGgpLmlzRGlyZWN0b3J5KClcbiAgICAgICAgICApIHtcbiAgICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICAgIGNvbnN0IGZpbGVDb250ZW50ID0gKGF3YWl0IHJlYWRGaWxlKGFzc2V0UGF0aCkpLnRvU3RyaW5nKCk7XG4gICAgICAgICAgICAgIHJlcy5jb250ZW50VHlwZShmaWxlbmFtZSk7XG4gICAgICAgICAgICAgIHJlcy5zZW5kKGZpbGVDb250ZW50KTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgcmV0dXJuIG5leHQoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgbmV4dCgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gUFJPWElFU1xuICAgIGlmIChvcHRpb25zLnNlcnZlUHJveHkpIHtcbiAgICAgIGNvbnN0IGRldkNvbmZpZzogd2VicGFjay5Db25maWd1cmF0aW9uID0gd2VicGFja0NvbmZpZyhcbiAgICAgICAge30sXG4gICAgICAgIHsgbW9kZTogJ2RldmVsb3BtZW50JyB9LFxuICAgICAgKTtcbiAgICAgIGlmIChkZXZDb25maWcuZGV2U2VydmVyPy5wcm94eSkge1xuICAgICAgICBjb25zdCBtaWRkbGV3YXJlcyA9IGdldFByb3h5TWlkZGxld2FyZXMoZGV2Q29uZmlnLmRldlNlcnZlcj8ucHJveHkpO1xuICAgICAgICBpZiAobWlkZGxld2FyZXMpIHtcbiAgICAgICAgICB3cmFwcGluZ0FwcC51c2UoLi4ubWlkZGxld2FyZXMubWFwKCh7IG1pZGRsZXdhcmUgfSkgPT4gbWlkZGxld2FyZSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU0VSVkVSIFNJREUgUkVOREVSSU5HXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby12YXItcmVxdWlyZXNcbiAgICBjb25zdCByZW5kZXI6IFJlbmRlciA9IHJlcXVpcmUocGF0aC5qb2luKFxuICAgICAgcHJvY2Vzcy5jd2QoKSxcbiAgICAgIGVudHJ5cG9pbnQsXG4gICAgKSkuZGVmYXVsdDtcblxuICAgIHdyYXBwaW5nQXBwLmdldChcbiAgICAgICcvKicsXG4gICAgICBoYW5kbGVFcnJvcnMoYXN5bmMgZnVuY3Rpb24gKHJlcTogYW55LCByZXM6IGFueSkge1xuICAgICAgICBpZiAocmVxLnVybC5lbmRzV2l0aCgnZmF2aWNvbi5pY28nKSkge1xuICAgICAgICAgIHJlcy5zdGF0dXNDb2RlID0gNDA0O1xuICAgICAgICAgIHJlcy5zZXRIZWFkZXIoJ0NvbnRlbnQtdHlwZScsICd0ZXh0L2h0bWwnKTtcbiAgICAgICAgICByZXMuc2VuZCgnbm90IGZvdW5kJyk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHJlcy5zb2NrZXQub24oJ2Vycm9yJywgKGVycm9yOiB1bmtub3duKSA9PiB7XG4gICAgICAgICAgY29uc29sZS5lcnJvcignRmF0YWwnLCBlcnJvcik7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGF3YWl0IHJlbmRlcihjbGllbnRNYW5pZmVzdCwgcmVxLCByZXMpO1xuICAgICAgfSksXG4gICAgKTtcblxuICAgIHNlcnZlciA9IHdyYXBwaW5nQXBwXG4gICAgICAubGlzdGVuKFBPUlQsICgpID0+IHtcbiAgICAgICAgbG9hZGVyLmluZm8oYExpc3RlbmluZyBhdCAke1BPUlR9Li4uYCk7XG4gICAgICB9KVxuICAgICAgLm9uKCdlcnJvcicsIGZ1bmN0aW9uIChlcnJvcjogYW55KSB7XG4gICAgICAgIGlmIChlcnJvci5zeXNjYWxsICE9PSAnbGlzdGVuJykge1xuICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGlzUGlwZSA9IChwb3J0T3JQaXBlOiBzdHJpbmcgfCBudW1iZXIpID0+XG4gICAgICAgICAgTnVtYmVyLmlzTmFOKHBvcnRPclBpcGUpO1xuICAgICAgICBjb25zdCBiaW5kID0gaXNQaXBlKFBPUlQpID8gJ1BpcGUgJyArIFBPUlQgOiAnUG9ydCAnICsgUE9SVDtcbiAgICAgICAgc3dpdGNoIChlcnJvci5jb2RlKSB7XG4gICAgICAgICAgY2FzZSAnRUFDQ0VTJzpcbiAgICAgICAgICAgIGxvYWRlci5mYWlsKGJpbmQgKyAnIHJlcXVpcmVzIGVsZXZhdGVkIHByaXZpbGVnZXMnKTtcbiAgICAgICAgICAgIHByb2Nlc3MuZXhpdCgxKTtcbiAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZmFsbHRocm91Z2hcbiAgICAgICAgICBjYXNlICdFQUREUklOVVNFJzpcbiAgICAgICAgICAgIGxvYWRlci5mYWlsKGJpbmQgKyAnIGlzIGFscmVhZHkgaW4gdXNlJyk7XG4gICAgICAgICAgICBwcm9jZXNzLmV4aXQoMSk7XG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG5vLWZhbGx0aHJvdWdoXG4gICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgIHRocm93IGVycm9yO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdmFyLXJlcXVpcmVzXG4gIGluaXRpYWxpemVBcHAocmVxdWlyZShtYW5pZmVzdFBhdGgpKTtcblxuICBwcm9jZXNzLm9uKCdTSUdJTlQnLCAoKSA9PiB7XG4gICAgbG9hZGVyLndhcm4oJ1JlY2VpdmVkIFNJR0lOVCwgZGV2c2VydmVyIHNodXR0aW5nIGRvd24nKTtcbiAgICBpZiAoc2VydmVyKSBjb25zb2xlLmxvZygnQ2xvc2luZyBzZXJ2ZXInKTtcbiAgICBzZXJ2ZXI/LmNsb3NlKCgpID0+IHtcbiAgICAgIGxvYWRlci5pbmZvKCdTZXJ2ZXIgY2xvc2VkJyk7XG4gICAgfSk7XG4gICAgcHJvY2Vzcy5leGl0KC0xKTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGdldE1hbmlmZXN0UGF0aEZyb21XZWJwYWNrY29uZmlnKFxuICB3ZWJwYWNrQ29uZmlnOiB3ZWJwYWNrLkNvbmZpZ3VyYXRpb24sXG4pIHtcbiAgY29uc3QgbWFuaWZlc3RGaWxlbmFtZTogc3RyaW5nID1cbiAgICAoXG4gICAgICB3ZWJwYWNrQ29uZmlnPy5wbHVnaW5zPy5maW5kKHBsdWdpbiA9PiB7XG4gICAgICAgIHJldHVybiBwbHVnaW4uY29uc3RydWN0b3IubmFtZSA9PT0gJ1N0YXRzV3JpdGVyUGx1Z2luJztcbiAgICAgIH0pIGFzIGFueVxuICAgICk/Lm9wdHM/LmZpbGVuYW1lID8/ICdtYW5pZmVzdC5qc29uJztcblxuICBjb25zdCBtYW5pZmVzdFBhdGggPSBwYXRoLmpvaW4oXG4gICAgd2VicGFja0NvbmZpZz8ub3V0cHV0Py5wYXRoID8/ICcnLFxuICAgIG1hbmlmZXN0RmlsZW5hbWUsXG4gICk7XG4gIHJldHVybiBtYW5pZmVzdFBh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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"startDevserver.d.ts","sourceRoot":"","sources":["../../src/scripts/startDevserver.ts"],"names":[],"mappings":";
|
|
1
|
+
{"version":3,"file":"startDevserver.d.ts","sourceRoot":"","sources":["../../src/scripts/startDevserver.ts"],"names":[],"mappings":";AAoBA,OAAO,sBAAsB,CAAC;AAe9B,MAAM,CAAC,OAAO,UAAU,cAAc,CACpC,UAAU,EAAE,MAAM,EAClB,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,QAqOlC"}
|
|
@@ -4,18 +4,21 @@
|
|
|
4
4
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
5
5
|
exports.__esModule = true;
|
|
6
6
|
exports.default = startDevServer;
|
|
7
|
-
var _util = require("util");
|
|
8
7
|
var _fs = _interopRequireDefault(require("fs"));
|
|
9
|
-
var
|
|
10
|
-
var _webpack = _interopRequireDefault(require("webpack"));
|
|
8
|
+
var _fsRequire = require("fs-require");
|
|
11
9
|
var _memfs = require("memfs");
|
|
12
|
-
var
|
|
10
|
+
var _path = _interopRequireDefault(require("path"));
|
|
13
11
|
var _sourceMapSupport = _interopRequireDefault(require("source-map-support"));
|
|
12
|
+
var _tmp = _interopRequireDefault(require("tmp"));
|
|
14
13
|
var _unionfs = require("unionfs");
|
|
14
|
+
var _util = require("util");
|
|
15
|
+
var _webpack = _interopRequireDefault(require("webpack"));
|
|
15
16
|
var _webpackDevServer = _interopRequireDefault(require("webpack-dev-server"));
|
|
16
17
|
var _runtime = _interopRequireDefault(require("webpack/lib/logging/runtime"));
|
|
17
|
-
var _fsRequire = require("fs-require");
|
|
18
18
|
require("cross-fetch/polyfill");
|
|
19
|
+
Object.hasOwn = Object.hasOwn || /* istanbul ignore next */function hasOwn(it, key) {
|
|
20
|
+
return Object.prototype.hasOwnProperty.call(it, key);
|
|
21
|
+
};
|
|
19
22
|
// run directly from node
|
|
20
23
|
if (require.main === module) {
|
|
21
24
|
const entrypoint = process.argv[2];
|
|
@@ -212,4 +215,4 @@ function startDevServer(entrypoint, env = {}) {
|
|
|
212
215
|
});
|
|
213
216
|
runServer();
|
|
214
217
|
}
|
|
215
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwibWFpbiIsIm1vZHVsZSIsImVudHJ5cG9pbnQiLCJwcm9jZXNzIiwiYXJndiIsImNvbnNvbGUiLCJsb2ciLCJleGl0Iiwic3RhcnREZXZTZXJ2ZXIiLCJlbnYiLCJ3ZWJwYWNrQ29uZmlnIiwicmVzb2x2ZSIsInBhdGgiLCJqb2luIiwiY3dkIiwibG9nZ2luZyIsImdldExvZ2dlciIsInZvbHVtZSIsIlZvbHVtZSIsImZzIiwiY3JlYXRlRnNGcm9tVm9sdW1lIiwidWZzIiwidXNlIiwiZGlza0ZzIiwiZnNSZXF1aXJlIiwiY3JlYXRlRnNSZXF1aXJlIiwicmVhZEZpbGUiLCJwcm9taXNpZnkiLCJzZXJ2ZXIiLCJob3RFbnRyeSIsImVudHJ5UGF0aCIsImdlbmVyYXRlZEVudHJ5cG9pbnQiLCJ0bXAiLCJmaWxlU3luYyIsInBvc3RmaXgiLCJ3cml0ZVN5bmMiLCJmZCIsIndlYnBhY2tDb25maWdzIiwiZW50cnlwYXRoIiwibmFtZSIsIm1vZGUiLCJyZXBsYWNlIiwiQlJPV1NFUlNMSVNUX0VOViIsInRhcmdldCIsImNvbXBpbGVyIiwid2VicGFjayIsInNvdXJjZU1hcFN1cHBvcnQiLCJpbnN0YWxsIiwiaG9va1JlcXVpcmUiLCJnZXRTZXJ2ZXJCdW5kbGUiLCJzZXJ2ZXJTdGF0cyIsInNlcnZlckpzb24iLCJ0b0pzb24iLCJhc3NldHMiLCJvdXRwdXRQYXRoIiwiaGFuZGxlRXJyb3JzIiwiZm4iLCJyZXEiLCJyZXMiLCJuZXh0IiwieCIsImluaXRSZW5kZXIiLCJyZW5kZXIiLCJhcmdzIiwiUHJvbWlzZSIsInB1c2giLCJpbXBvcnRSZW5kZXIiLCJzdGF0cyIsImNsaWVudFN0YXRzIiwiY29tcGlsYXRpb24iLCJlcnJvcnMiLCJsZW5ndGgiLCJlcnJvciIsIkFycmF5IiwiaXNBcnJheSIsImluZm8iLCJjbGllbnRNYW5pZmVzdCIsInNlcnZlckVudHJ5IiwiT2JqZWN0Iiwia2V5cyIsImNhY2hlIiwiZm9yRWFjaCIsImtleSIsImRlZmF1bHQiLCJiaW5kIiwidW5kZWZpbmVkIiwiaW5pdCIsImUiLCJkZXZTZXJ2ZXIiLCJXZWJwYWNrRGV2U2VydmVyIiwiZGV2TWlkZGxld2FyZSIsIm91dHB1dEZpbGVTeXN0ZW0iLCJzZXR1cE1pZGRsZXdhcmVzIiwibWlkZGxld2FyZXMiLCJFcnJvciIsIm90aGVyUm91dGVzIiwiV0VCUEFDS19QVUJMSUNfUEFUSCIsInByb3h5IiwiYXBwIiwiZ2V0IiwiUmVnRXhwIiwidXJsIiwiZW5kc1dpdGgiLCJzdGF0dXNDb2RlIiwic2V0SGVhZGVyIiwic2VuZCIsInNvY2tldCIsIm9uIiwicnVuU2VydmVyIiwic3RhcnQiLCJob29rcyIsImRvbmUiLCJ0YXAiLCJtdWx0aVN0YXRzIiwiaGFzT3duIiwic3RvcFNlcnZlciIsInN0b3AiLCJ3YXJuIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvc3RhcnREZXZzZXJ2ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiIyEvdXNyL2Jpbi9lbnYgbm9kZVxuXG5pbXBvcnQgeyBwcm9taXNpZnkgfSBmcm9tICd1dGlsJztcbmltcG9ydCBkaXNrRnMgZnJvbSAnZnMnO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgd2VicGFjaywgeyBNdWx0aUNvbXBpbGVyIH0gZnJvbSAnd2VicGFjayc7XG5pbXBvcnQgeyBjcmVhdGVGc0Zyb21Wb2x1bWUsIFZvbHVtZSB9IGZyb20gJ21lbWZzJztcbmltcG9ydCB7IFNlcnZlciwgSW5jb21pbmdNZXNzYWdlLCBTZXJ2ZXJSZXNwb25zZSB9IGZyb20gJ2h0dHAnO1xuaW1wb3J0IHR5cGUgeyBOZXh0RnVuY3Rpb24gfSBmcm9tICdleHByZXNzJztcbmltcG9ydCB0bXAgZnJvbSAndG1wJztcbmltcG9ydCBzb3VyY2VNYXBTdXBwb3J0IGZyb20gJ3NvdXJjZS1tYXAtc3VwcG9ydCc7XG5pbXBvcnQgeyB1ZnMgfSBmcm9tICd1bmlvbmZzJztcbmltcG9ydCBXZWJwYWNrRGV2U2VydmVyIGZyb20gJ3dlYnBhY2stZGV2LXNlcnZlcic7XG5pbXBvcnQgbG9nZ2luZyBmcm9tICd3ZWJwYWNrL2xpYi9sb2dnaW5nL3J1bnRpbWUnO1xuaW1wb3J0IHsgY3JlYXRlRnNSZXF1aXJlIH0gZnJvbSAnZnMtcmVxdWlyZSc7XG5cbmltcG9ydCAnY3Jvc3MtZmV0Y2gvcG9seWZpbGwnO1xuaW1wb3J0IHsgQm91bmRSZW5kZXIgfSBmcm9tICcuL3R5cGVzJztcblxuLy8gcnVuIGRpcmVjdGx5IGZyb20gbm9kZVxuaWYgKHJlcXVpcmUubWFpbiA9PT0gbW9kdWxlKSB7XG4gIGNvbnN0IGVudHJ5cG9pbnQgPSBwcm9jZXNzLmFyZ3ZbMl07XG5cbiAgaWYgKCFlbnRyeXBvaW50KSB7XG4gICAgY29uc29sZS5sb2coYFVzYWdlOiBzdGFydC1hbmFuc2kgPGVudHJ5cG9pbnQtZmlsZT5gKTtcbiAgICBwcm9jZXNzLmV4aXQoLTEpO1xuICB9XG5cbiAgc3RhcnREZXZTZXJ2ZXIoZW50cnlwb2ludCk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHN0YXJ0RGV2U2VydmVyKFxuICBlbnRyeXBvaW50OiBzdHJpbmcsXG4gIGVudjogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fSxcbikge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICBjb25zdCB3ZWJwYWNrQ29uZmlnID0gcmVxdWlyZShyZXF1aXJlLnJlc29sdmUoXG4gICAgLy8gVE9ETzogdXNlIG5vcm1hbCByZXNvbHV0aW9uIGFsZ29yaXRobSB0byBmaW5kIHdlYnBhY2sgZmlsZVxuICAgIHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCAnd2VicGFjay5jb25maWcnKSxcbiAgKSk7XG5cbiAgY29uc3QgbG9nID0gbG9nZ2luZy5nZXRMb2dnZXIoJ2FuYW5zaS1kZXZzZXJ2ZXInKTtcblxuICAvLyBTZXQgdXAgaW4gbWVtb3J5IGZpbGVzeXN0ZW1cbiAgY29uc3Qgdm9sdW1lID0gbmV3IFZvbHVtZSgpO1xuICBjb25zdCBmcyA9IGNyZWF0ZUZzRnJvbVZvbHVtZSh2b2x1bWUpO1xuICB1ZnMudXNlKGRpc2tGcykudXNlKGZzIGFzIGFueSk7XG5cbiAgY29uc3QgZnNSZXF1aXJlID0gY3JlYXRlRnNSZXF1aXJlKHVmcyk7XG4gIGNvbnN0IHJlYWRGaWxlID0gcHJvbWlzaWZ5KHVmcy5yZWFkRmlsZSk7XG4gIGxldCBzZXJ2ZXI6IFNlcnZlciB8IHVuZGVmaW5lZDtcblxuICAvLyBHZW5lcmF0ZSBhIHRlbXBvcmFyeSBmaWxlIHNvIHdlIGNhbiBob3QgcmVsb2FkIGZyb20gdGhlIHJvb3Qgb2YgdGhlIGFwcGxpY2F0aW9uXG4gIGZ1bmN0aW9uIGhvdEVudHJ5KGVudHJ5UGF0aDogc3RyaW5nKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgLy8gQHRzLWlnbm9yZSBmb3Igc29tZSByZWFzb24gaXQncyBub3QgcGlja2luZyB1cCB0aGF0IG90aGVyIG9wdGlvbnMgYXJlIG9wdGlvbmFsXG4gICAgY29uc3QgZ2VuZXJhdGVkRW50cnlwb2ludCA9IHRtcC5maWxlU3luYyh7IHBvc3RmaXg6ICcuanMnIH0pO1xuICAgIGRpc2tGcy53cml0ZVN5bmMoXG4gICAgICBnZW5lcmF0ZWRFbnRyeXBvaW50LmZkLFxuICAgICAgYFxuICBpbXBvcnQgZW50cnkgZnJvbSBcIiR7cGF0aC5yZXNvbHZlKHByb2Nlc3MuY3dkKCksIGVudHJ5UGF0aCl9XCI7XG5cbiAgaWYgKG1vZHVsZS5ob3QpIHtcbiAgICBtb2R1bGUuaG90LmFjY2VwdCgpO1xuICB9XG5cbiAgZXhwb3J0IGRlZmF1bHQgZW50cnk7XG4gICAgYCxcbiAgICApO1xuICAgIHJldHVybiBnZW5lcmF0ZWRFbnRyeXBvaW50O1xuICB9XG5cbiAgY29uc3Qgd2VicGFja0NvbmZpZ3MgPSBbXG4gICAgd2VicGFja0NvbmZpZyhcbiAgICAgIHtcbiAgICAgICAgLi4uZW52LFxuICAgICAgICBlbnRyeXBhdGg6IGhvdEVudHJ5KGVudHJ5cG9pbnQpLm5hbWUsXG4gICAgICAgIG5hbWU6ICdjbGllbnQnLFxuICAgICAgfSxcbiAgICAgIHsgbW9kZTogJ2RldmVsb3BtZW50JyB9LFxuICAgICksXG4gICAgd2VicGFja0NvbmZpZyhcbiAgICAgIHtcbiAgICAgICAgLi4uZW52LFxuICAgICAgICBlbnRyeXBhdGg6IGVudHJ5cG9pbnQucmVwbGFjZSgnLnRzeCcsICcuc2VydmVyLnRzeCcpLFxuICAgICAgICBuYW1lOiAnc2VydmVyJyxcbiAgICAgICAgQlJPV1NFUlNMSVNUX0VOVjogJ2N1cnJlbnQgbm9kZScsXG4gICAgICB9LFxuICAgICAgeyBtb2RlOiAnZGV2ZWxvcG1lbnQnLCB0YXJnZXQ6ICdub2RlJyB9LFxuICAgICksXG4gIF0gYXMgY29uc3Q7XG5cbiAgLy8gaW5pdGlhbGl6ZSB0aGUgd2VicGFjayBjb21waWxlclxuICBjb25zdCBjb21waWxlcjogTXVsdGlDb21waWxlciA9IHdlYnBhY2sod2VicGFja0NvbmZpZ3MpO1xuXG4gIHNvdXJjZU1hcFN1cHBvcnQuaW5zdGFsbCh7IGhvb2tSZXF1aXJlOiB0cnVlIH0pO1xuXG4gIGZ1bmN0aW9uIGdldFNlcnZlckJ1bmRsZShzZXJ2ZXJTdGF0czogd2VicGFjay5TdGF0cykge1xuICAgIGNvbnN0IHNlcnZlckpzb24gPSBzZXJ2ZXJTdGF0cy50b0pzb24oeyBhc3NldHM6IHRydWUgfSk7XG4gICAgcmV0dXJuIHBhdGguam9pbihzZXJ2ZXJKc29uLm91dHB1dFBhdGggPz8gJycsICdzZXJ2ZXIuanMnKTtcbiAgfVxuICBmdW5jdGlvbiBoYW5kbGVFcnJvcnM8XG4gICAgRiBleHRlbmRzIChcbiAgICAgIHJlcTogUmVxdWVzdCB8IEluY29taW5nTWVzc2FnZSxcbiAgICAgIHJlczogUmVzcG9uc2UgfCBTZXJ2ZXJSZXNwb25zZSxcbiAgICApID0+IFByb21pc2U8dm9pZD4sXG4gID4oZm46IEYpIHtcbiAgICByZXR1cm4gYXN5bmMgZnVuY3Rpb24gKFxuICAgICAgcmVxOiBSZXF1ZXN0IHwgSW5jb21pbmdNZXNzYWdlLFxuICAgICAgcmVzOiBSZXNwb25zZSB8IFNlcnZlclJlc3BvbnNlLFxuICAgICAgbmV4dDogTmV4dEZ1bmN0aW9uLFxuICAgICkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IGZuKHJlcSwgcmVzKTtcbiAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgbmV4dCh4KTtcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgbGV0IGluaXRSZW5kZXI6XG4gICAgfCB7IGFyZ3M6IFBhcmFtZXRlcnM8Qm91bmRSZW5kZXI+OyByZXNvbHZlOiAoKSA9PiB2b2lkIH1bXVxuICAgIHwgdW5kZWZpbmVkID0gW107XG4gIGxldCByZW5kZXI6IEJvdW5kUmVuZGVyID0gKC4uLmFyZ3MpID0+XG4gICAgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICBpbml0UmVuZGVyPy5wdXNoKHsgYXJncywgcmVzb2x2ZSB9KTtcbiAgICB9KTtcblxuICBmdW5jdGlvbiBpbXBvcnRSZW5kZXIoc3RhdHM6IHdlYnBhY2suU3RhdHNbXSkge1xuICAgIGNvbnN0IFtjbGllbnRTdGF0cywgc2VydmVyU3RhdHNdID0gc3RhdHM7XG4gICAgaWYgKFxuICAgICAgY2xpZW50U3RhdHM/LmNvbXBpbGF0aW9uPy5lcnJvcnM/Lmxlbmd0aCB8fFxuICAgICAgc2VydmVyU3RhdHM/LmNvbXBpbGF0aW9uPy5lcnJvcnM/Lmxlbmd0aFxuICAgICkge1xuICAgICAgbG9nLmVycm9yKCdFcnJvcnMgZm9yIGNsaWVudCBidWlsZDogJyArIGNsaWVudFN0YXRzLmNvbXBpbGF0aW9uLmVycm9ycyk7XG4gICAgICBsb2cuZXJyb3IoJ0Vycm9ycyBmb3Igc2VydmVyIGJ1aWxkOiAnICsgc2VydmVyU3RhdHMuY29tcGlsYXRpb24uZXJyb3JzKTtcbiAgICAgIC8vIGZpcnN0IHRpbWUsIHJhdGhlciB0aGFuIHJlLXJlbmRlclxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaW5pdFJlbmRlcikpIHtcbiAgICAgICAgcHJvY2Vzcy5leGl0KC0xKTtcbiAgICAgIH1cbiAgICAgIGxvZy5lcnJvcignQWJvdmUgY29tcGlsZXIgZXJyb3JzIGJsb2NraW5nIHJlbG9hZCcpO1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSB7XG4gICAgICBsb2cuaW5mbygnTGF1bmNoaW5nIFNTUicpO1xuICAgIH1cblxuICAgIC8vIEFTU0VUU1xuICAgIGNvbnN0IGNsaWVudE1hbmlmZXN0ID0gY2xpZW50U3RhdHMudG9Kc29uKCk7XG5cbiAgICBjb25zdCBzZXJ2ZXJFbnRyeSA9IGdldFNlcnZlckJ1bmRsZShzZXJ2ZXJTdGF0cyk7XG4gICAgLy8gcmVsb2FkIG1vZHVsZXNcbiAgICBPYmplY3Qua2V5cyhmc1JlcXVpcmUuY2FjaGUpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgIGRlbGV0ZSBmc1JlcXVpcmUuY2FjaGVba2V5XTtcbiAgICB9KTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICAgIHJlbmRlciA9IChmc1JlcXVpcmUoc2VydmVyRW50cnkpIGFzIGFueSkuZGVmYXVsdC5iaW5kKFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgY2xpZW50TWFuaWZlc3QsXG4gICAgKTtcbiAgICAvLyBTRVJWRVIgU0lERSBFTlRSWVBPSU5UXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoaW5pdFJlbmRlcikpIHtcbiAgICAgIGluaXRSZW5kZXIuZm9yRWFjaChhc3luYyBpbml0ID0+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBsb2cuaW5mbygnUmVzb2x2aW5nIHF1ZXVlZCByZXF1ZXN0cycpO1xuICAgICAgICAgIGF3YWl0IHJlbmRlciguLi5pbml0LmFyZ3MpO1xuICAgICAgICAgIGluaXQucmVzb2x2ZSgpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgbG9nLmVycm9yKCdFcnJvciB3aGVuIGF0dGVtcHRpbmcgdG8gcmVuZGVyIHF1ZXVlZCByZXF1ZXN0cycpO1xuICAgICAgICAgIGxvZy5lcnJvcihlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBpbml0UmVuZGVyID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGRldlNlcnZlciA9IG5ldyBXZWJwYWNrRGV2U2VydmVyKFxuICAgIC8vIHdyaXRlIHRvIG1lbW9yeSBmaWxlc3lzdGVtIHNvIHdlIGNhbiBpbXBvcnRcbiAgICB7XG4gICAgICAuLi53ZWJwYWNrQ29uZmlnc1swXS5kZXZTZXJ2ZXIsXG4gICAgICBkZXZNaWRkbGV3YXJlOiB7XG4gICAgICAgIC4uLndlYnBhY2tDb25maWdzWzBdPy5kZXZTZXJ2ZXI/LmRldk1pZGRsZXdhcmUsXG4gICAgICAgIG91dHB1dEZpbGVTeXN0ZW06IHtcbiAgICAgICAgICAuLi5mcyxcbiAgICAgICAgICBqb2luOiBwYXRoLmpvaW4gYXMgYW55LFxuICAgICAgICB9IGFzIGFueSBhcyB0eXBlb2YgZnMsXG4gICAgICB9LFxuICAgICAgc2V0dXBNaWRkbGV3YXJlczogKG1pZGRsZXdhcmVzLCBkZXZTZXJ2ZXIpID0+IHtcbiAgICAgICAgaWYgKCFkZXZTZXJ2ZXIpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3dlYnBhY2stZGV2LXNlcnZlciBpcyBub3QgZGVmaW5lZCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgb3RoZXJSb3V0ZXMgPSBbXG4gICAgICAgICAgcHJvY2Vzcy5lbnYuV0VCUEFDS19QVUJMSUNfUEFUSCxcbiAgICAgICAgICAuLi5PYmplY3Qua2V5cyh3ZWJwYWNrQ29uZmlnc1swXS5kZXZTZXJ2ZXI/LnByb3h5ID8/IHt9KSxcbiAgICAgICAgXTtcbiAgICAgICAgLy8gc2VydmUgU1NSIGZvciBub24tV0VCUEFDS19QVUJMSUNfUEFUSFxuICAgICAgICBkZXZTZXJ2ZXIuYXBwPy5nZXQoXG4gICAgICAgICAgbmV3IFJlZ0V4cChgXig/ISR7b3RoZXJSb3V0ZXMuam9pbignfCcpfSlgKSxcbiAgICAgICAgICBoYW5kbGVFcnJvcnMoYXN5bmMgZnVuY3Rpb24gKHJlcTogYW55LCByZXM6IGFueSkge1xuICAgICAgICAgICAgaWYgKHJlcS51cmwuZW5kc1dpdGgoJ2Zhdmljb24uaWNvJykpIHtcbiAgICAgICAgICAgICAgcmVzLnN0YXR1c0NvZGUgPSA0MDQ7XG4gICAgICAgICAgICAgIHJlcy5zZXRIZWFkZXIoJ0NvbnRlbnQtdHlwZScsICd0ZXh0L2h0bWwnKTtcbiAgICAgICAgICAgICAgcmVzLnNlbmQoJ25vdCBmb3VuZCcpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXMuc29ja2V0Lm9uKCdlcnJvcicsIChlcnJvcjogdW5rbm93bikgPT4ge1xuICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdGYXRhbCcsIGVycm9yKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBhd2FpdCByZW5kZXIocmVxLCByZXMpO1xuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuXG4gICAgICAgIGlmICh3ZWJwYWNrQ29uZmlnc1swXS5kZXZTZXJ2ZXI/LnNldHVwTWlkZGxld2FyZXMpIHtcbiAgICAgICAgICByZXR1cm4gd2VicGFja0NvbmZpZ3NbMF0uZGV2U2VydmVyLnNldHVwTWlkZGxld2FyZXMoXG4gICAgICAgICAgICBtaWRkbGV3YXJlcyxcbiAgICAgICAgICAgIGRldlNlcnZlcixcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG1pZGRsZXdhcmVzO1xuICAgICAgfSxcbiAgICB9LFxuICAgIGNvbXBpbGVyLFxuICApO1xuICBjb25zdCBydW5TZXJ2ZXIgPSBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgZGV2U2VydmVyLnN0YXJ0KCk7XG4gICAgZGV2U2VydmVyLmNvbXBpbGVyLmhvb2tzLmRvbmUudGFwKFxuICAgICAgJ0FuYW5zaSBTZXJ2ZXInLFxuICAgICAgKG11bHRpU3RhdHM6IHdlYnBhY2suTXVsdGlTdGF0cyB8IHdlYnBhY2suU3RhdHMpID0+IHtcbiAgICAgICAgaWYgKCFtdWx0aVN0YXRzKSB7XG4gICAgICAgICAgbG9nLmVycm9yKCdzdGF0cyBub3Qgc2VuZCcpO1xuICAgICAgICAgIHByb2Nlc3MuZXhpdCgtMSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIU9iamVjdC5oYXNPd24obXVsdGlTdGF0cywgJ3N0YXRzJykpIHJldHVybjtcbiAgICAgICAgaWYgKChtdWx0aVN0YXRzIGFzIHdlYnBhY2suTXVsdGlTdGF0cykuc3RhdHMubGVuZ3RoID4gMSkge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBpbXBvcnRSZW5kZXIoKG11bHRpU3RhdHMgYXMgd2VicGFjay5NdWx0aVN0YXRzKS5zdGF0cyk7XG4gICAgICAgICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICAgICAgICBsb2cuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIHNlcnZlIGVudHJ5cG9pbnQnKTtcbiAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxvZy5lcnJvcignT25seSBjb21waWxlciBvbmUgc3RhdCcpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICk7XG4gIH07XG4gIGNvbnN0IHN0b3BTZXJ2ZXIgPSBhc3luYyAoKSA9PiB7XG4gICAgbG9nLmluZm8oJ1N0b3BwaW5nIHNlcnZlci4uLicpO1xuICAgIGF3YWl0IGRldlNlcnZlci5zdG9wKCk7XG4gICAgbG9nLmluZm8oJ1NlcnZlciBjbG9zZWQnKTtcbiAgfTtcblxuICBwcm9jZXNzLm9uKCdTSUdJTlQnLCAoKSA9PiB7XG4gICAgbG9nLndhcm4oJ1JlY2VpdmVkIFNJR0lOVCwgZGV2c2VydmVyIHNodXR0aW5nIGRvd24nKTtcbiAgICBzdG9wU2VydmVyKCk7XG4gICAgcHJvY2Vzcy5leGl0KC0xKTtcbiAgfSk7XG5cbiAgcnVuU2VydmVyKCk7XG59XG4iXSwi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
|
|
218
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPYmplY3QiLCJoYXNPd24iLCJpdCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsInJlcXVpcmUiLCJtYWluIiwibW9kdWxlIiwiZW50cnlwb2ludCIsInByb2Nlc3MiLCJhcmd2IiwiY29uc29sZSIsImxvZyIsImV4aXQiLCJzdGFydERldlNlcnZlciIsImVudiIsIndlYnBhY2tDb25maWciLCJyZXNvbHZlIiwicGF0aCIsImpvaW4iLCJjd2QiLCJsb2dnaW5nIiwiZ2V0TG9nZ2VyIiwidm9sdW1lIiwiVm9sdW1lIiwiZnMiLCJjcmVhdGVGc0Zyb21Wb2x1bWUiLCJ1ZnMiLCJ1c2UiLCJkaXNrRnMiLCJmc1JlcXVpcmUiLCJjcmVhdGVGc1JlcXVpcmUiLCJyZWFkRmlsZSIsInByb21pc2lmeSIsInNlcnZlciIsImhvdEVudHJ5IiwiZW50cnlQYXRoIiwiZ2VuZXJhdGVkRW50cnlwb2ludCIsInRtcCIsImZpbGVTeW5jIiwicG9zdGZpeCIsIndyaXRlU3luYyIsImZkIiwid2VicGFja0NvbmZpZ3MiLCJlbnRyeXBhdGgiLCJuYW1lIiwibW9kZSIsInJlcGxhY2UiLCJCUk9XU0VSU0xJU1RfRU5WIiwidGFyZ2V0IiwiY29tcGlsZXIiLCJ3ZWJwYWNrIiwic291cmNlTWFwU3VwcG9ydCIsImluc3RhbGwiLCJob29rUmVxdWlyZSIsImdldFNlcnZlckJ1bmRsZSIsInNlcnZlclN0YXRzIiwic2VydmVySnNvbiIsInRvSnNvbiIsImFzc2V0cyIsIm91dHB1dFBhdGgiLCJoYW5kbGVFcnJvcnMiLCJmbiIsInJlcSIsInJlcyIsIm5leHQiLCJ4IiwiaW5pdFJlbmRlciIsInJlbmRlciIsImFyZ3MiLCJQcm9taXNlIiwicHVzaCIsImltcG9ydFJlbmRlciIsInN0YXRzIiwiY2xpZW50U3RhdHMiLCJjb21waWxhdGlvbiIsImVycm9ycyIsImxlbmd0aCIsImVycm9yIiwiQXJyYXkiLCJpc0FycmF5IiwiaW5mbyIsImNsaWVudE1hbmlmZXN0Iiwic2VydmVyRW50cnkiLCJrZXlzIiwiY2FjaGUiLCJmb3JFYWNoIiwiZGVmYXVsdCIsImJpbmQiLCJ1bmRlZmluZWQiLCJpbml0IiwiZSIsImRldlNlcnZlciIsIldlYnBhY2tEZXZTZXJ2ZXIiLCJkZXZNaWRkbGV3YXJlIiwib3V0cHV0RmlsZVN5c3RlbSIsInNldHVwTWlkZGxld2FyZXMiLCJtaWRkbGV3YXJlcyIsIkVycm9yIiwib3RoZXJSb3V0ZXMiLCJXRUJQQUNLX1BVQkxJQ19QQVRIIiwicHJveHkiLCJhcHAiLCJnZXQiLCJSZWdFeHAiLCJ1cmwiLCJlbmRzV2l0aCIsInN0YXR1c0NvZGUiLCJzZXRIZWFkZXIiLCJzZW5kIiwic29ja2V0Iiwib24iLCJydW5TZXJ2ZXIiLCJzdGFydCIsImhvb2tzIiwiZG9uZSIsInRhcCIsIm11bHRpU3RhdHMiLCJzdG9wU2VydmVyIiwic3RvcCIsIndhcm4iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NyaXB0cy9zdGFydERldnNlcnZlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIjIS91c3IvYmluL2VudiBub2RlXG5PYmplY3QuaGFzT3duID1cbiAgT2JqZWN0Lmhhc093biB8fFxuICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqLyBmdW5jdGlvbiBoYXNPd24oaXQsIGtleSkge1xuICAgIHJldHVybiBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5LmNhbGwoaXQsIGtleSk7XG4gIH07XG5pbXBvcnQgdHlwZSB7IE5leHRGdW5jdGlvbiB9IGZyb20gJ2V4cHJlc3MnO1xuaW1wb3J0IGRpc2tGcyBmcm9tICdmcyc7XG5pbXBvcnQgeyBjcmVhdGVGc1JlcXVpcmUgfSBmcm9tICdmcy1yZXF1aXJlJztcbmltcG9ydCB7IFNlcnZlciwgSW5jb21pbmdNZXNzYWdlLCBTZXJ2ZXJSZXNwb25zZSB9IGZyb20gJ2h0dHAnO1xuaW1wb3J0IHsgY3JlYXRlRnNGcm9tVm9sdW1lLCBWb2x1bWUgfSBmcm9tICdtZW1mcyc7XG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCBzb3VyY2VNYXBTdXBwb3J0IGZyb20gJ3NvdXJjZS1tYXAtc3VwcG9ydCc7XG5pbXBvcnQgdG1wIGZyb20gJ3RtcCc7XG5pbXBvcnQgeyB1ZnMgfSBmcm9tICd1bmlvbmZzJztcbmltcG9ydCB7IHByb21pc2lmeSB9IGZyb20gJ3V0aWwnO1xuaW1wb3J0IHdlYnBhY2ssIHsgTXVsdGlDb21waWxlciB9IGZyb20gJ3dlYnBhY2snO1xuaW1wb3J0IFdlYnBhY2tEZXZTZXJ2ZXIgZnJvbSAnd2VicGFjay1kZXYtc2VydmVyJztcbmltcG9ydCBsb2dnaW5nIGZyb20gJ3dlYnBhY2svbGliL2xvZ2dpbmcvcnVudGltZSc7XG5cbmltcG9ydCAnY3Jvc3MtZmV0Y2gvcG9seWZpbGwnO1xuaW1wb3J0IHsgQm91bmRSZW5kZXIgfSBmcm9tICcuL3R5cGVzJztcblxuLy8gcnVuIGRpcmVjdGx5IGZyb20gbm9kZVxuaWYgKHJlcXVpcmUubWFpbiA9PT0gbW9kdWxlKSB7XG4gIGNvbnN0IGVudHJ5cG9pbnQgPSBwcm9jZXNzLmFyZ3ZbMl07XG5cbiAgaWYgKCFlbnRyeXBvaW50KSB7XG4gICAgY29uc29sZS5sb2coYFVzYWdlOiBzdGFydC1hbmFuc2kgPGVudHJ5cG9pbnQtZmlsZT5gKTtcbiAgICBwcm9jZXNzLmV4aXQoLTEpO1xuICB9XG5cbiAgc3RhcnREZXZTZXJ2ZXIoZW50cnlwb2ludCk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIHN0YXJ0RGV2U2VydmVyKFxuICBlbnRyeXBvaW50OiBzdHJpbmcsXG4gIGVudjogUmVjb3JkPHN0cmluZywgdW5rbm93bj4gPSB7fSxcbikge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICBjb25zdCB3ZWJwYWNrQ29uZmlnID0gcmVxdWlyZShyZXF1aXJlLnJlc29sdmUoXG4gICAgLy8gVE9ETzogdXNlIG5vcm1hbCByZXNvbHV0aW9uIGFsZ29yaXRobSB0byBmaW5kIHdlYnBhY2sgZmlsZVxuICAgIHBhdGguam9pbihwcm9jZXNzLmN3ZCgpLCAnd2VicGFjay5jb25maWcnKSxcbiAgKSk7XG5cbiAgY29uc3QgbG9nID0gbG9nZ2luZy5nZXRMb2dnZXIoJ2FuYW5zaS1kZXZzZXJ2ZXInKTtcblxuICAvLyBTZXQgdXAgaW4gbWVtb3J5IGZpbGVzeXN0ZW1cbiAgY29uc3Qgdm9sdW1lID0gbmV3IFZvbHVtZSgpO1xuICBjb25zdCBmcyA9IGNyZWF0ZUZzRnJvbVZvbHVtZSh2b2x1bWUpO1xuICB1ZnMudXNlKGRpc2tGcykudXNlKGZzIGFzIGFueSk7XG5cbiAgY29uc3QgZnNSZXF1aXJlID0gY3JlYXRlRnNSZXF1aXJlKHVmcyk7XG4gIGNvbnN0IHJlYWRGaWxlID0gcHJvbWlzaWZ5KHVmcy5yZWFkRmlsZSk7XG4gIGxldCBzZXJ2ZXI6IFNlcnZlciB8IHVuZGVmaW5lZDtcblxuICAvLyBHZW5lcmF0ZSBhIHRlbXBvcmFyeSBmaWxlIHNvIHdlIGNhbiBob3QgcmVsb2FkIGZyb20gdGhlIHJvb3Qgb2YgdGhlIGFwcGxpY2F0aW9uXG4gIGZ1bmN0aW9uIGhvdEVudHJ5KGVudHJ5UGF0aDogc3RyaW5nKSB7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gICAgLy8gQHRzLWlnbm9yZSBmb3Igc29tZSByZWFzb24gaXQncyBub3QgcGlja2luZyB1cCB0aGF0IG90aGVyIG9wdGlvbnMgYXJlIG9wdGlvbmFsXG4gICAgY29uc3QgZ2VuZXJhdGVkRW50cnlwb2ludCA9IHRtcC5maWxlU3luYyh7IHBvc3RmaXg6ICcuanMnIH0pO1xuICAgIGRpc2tGcy53cml0ZVN5bmMoXG4gICAgICBnZW5lcmF0ZWRFbnRyeXBvaW50LmZkLFxuICAgICAgYFxuICBpbXBvcnQgZW50cnkgZnJvbSBcIiR7cGF0aC5yZXNvbHZlKHByb2Nlc3MuY3dkKCksIGVudHJ5UGF0aCl9XCI7XG5cbiAgaWYgKG1vZHVsZS5ob3QpIHtcbiAgICBtb2R1bGUuaG90LmFjY2VwdCgpO1xuICB9XG5cbiAgZXhwb3J0IGRlZmF1bHQgZW50cnk7XG4gICAgYCxcbiAgICApO1xuICAgIHJldHVybiBnZW5lcmF0ZWRFbnRyeXBvaW50O1xuICB9XG5cbiAgY29uc3Qgd2VicGFja0NvbmZpZ3MgPSBbXG4gICAgd2VicGFja0NvbmZpZyhcbiAgICAgIHtcbiAgICAgICAgLi4uZW52LFxuICAgICAgICBlbnRyeXBhdGg6IGhvdEVudHJ5KGVudHJ5cG9pbnQpLm5hbWUsXG4gICAgICAgIG5hbWU6ICdjbGllbnQnLFxuICAgICAgfSxcbiAgICAgIHsgbW9kZTogJ2RldmVsb3BtZW50JyB9LFxuICAgICksXG4gICAgd2VicGFja0NvbmZpZyhcbiAgICAgIHtcbiAgICAgICAgLi4uZW52LFxuICAgICAgICBlbnRyeXBhdGg6IGVudHJ5cG9pbnQucmVwbGFjZSgnLnRzeCcsICcuc2VydmVyLnRzeCcpLFxuICAgICAgICBuYW1lOiAnc2VydmVyJyxcbiAgICAgICAgQlJPV1NFUlNMSVNUX0VOVjogJ2N1cnJlbnQgbm9kZScsXG4gICAgICB9LFxuICAgICAgeyBtb2RlOiAnZGV2ZWxvcG1lbnQnLCB0YXJnZXQ6ICdub2RlJyB9LFxuICAgICksXG4gIF0gYXMgY29uc3Q7XG5cbiAgLy8gaW5pdGlhbGl6ZSB0aGUgd2VicGFjayBjb21waWxlclxuICBjb25zdCBjb21waWxlcjogTXVsdGlDb21waWxlciA9IHdlYnBhY2sod2VicGFja0NvbmZpZ3MpO1xuXG4gIHNvdXJjZU1hcFN1cHBvcnQuaW5zdGFsbCh7IGhvb2tSZXF1aXJlOiB0cnVlIH0pO1xuXG4gIGZ1bmN0aW9uIGdldFNlcnZlckJ1bmRsZShzZXJ2ZXJTdGF0czogd2VicGFjay5TdGF0cykge1xuICAgIGNvbnN0IHNlcnZlckpzb24gPSBzZXJ2ZXJTdGF0cy50b0pzb24oeyBhc3NldHM6IHRydWUgfSk7XG4gICAgcmV0dXJuIHBhdGguam9pbihzZXJ2ZXJKc29uLm91dHB1dFBhdGggPz8gJycsICdzZXJ2ZXIuanMnKTtcbiAgfVxuICBmdW5jdGlvbiBoYW5kbGVFcnJvcnM8XG4gICAgRiBleHRlbmRzIChcbiAgICAgIHJlcTogUmVxdWVzdCB8IEluY29taW5nTWVzc2FnZSxcbiAgICAgIHJlczogUmVzcG9uc2UgfCBTZXJ2ZXJSZXNwb25zZSxcbiAgICApID0+IFByb21pc2U8dm9pZD4sXG4gID4oZm46IEYpIHtcbiAgICByZXR1cm4gYXN5bmMgZnVuY3Rpb24gKFxuICAgICAgcmVxOiBSZXF1ZXN0IHwgSW5jb21pbmdNZXNzYWdlLFxuICAgICAgcmVzOiBSZXNwb25zZSB8IFNlcnZlclJlc3BvbnNlLFxuICAgICAgbmV4dDogTmV4dEZ1bmN0aW9uLFxuICAgICkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgcmV0dXJuIGF3YWl0IGZuKHJlcSwgcmVzKTtcbiAgICAgIH0gY2F0Y2ggKHgpIHtcbiAgICAgICAgbmV4dCh4KTtcbiAgICAgIH1cbiAgICB9O1xuICB9XG5cbiAgbGV0IGluaXRSZW5kZXI6XG4gICAgfCB7IGFyZ3M6IFBhcmFtZXRlcnM8Qm91bmRSZW5kZXI+OyByZXNvbHZlOiAoKSA9PiB2b2lkIH1bXVxuICAgIHwgdW5kZWZpbmVkID0gW107XG4gIGxldCByZW5kZXI6IEJvdW5kUmVuZGVyID0gKC4uLmFyZ3MpID0+XG4gICAgbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7XG4gICAgICBpbml0UmVuZGVyPy5wdXNoKHsgYXJncywgcmVzb2x2ZSB9KTtcbiAgICB9KTtcblxuICBmdW5jdGlvbiBpbXBvcnRSZW5kZXIoc3RhdHM6IHdlYnBhY2suU3RhdHNbXSkge1xuICAgIGNvbnN0IFtjbGllbnRTdGF0cywgc2VydmVyU3RhdHNdID0gc3RhdHM7XG4gICAgaWYgKFxuICAgICAgY2xpZW50U3RhdHM/LmNvbXBpbGF0aW9uPy5lcnJvcnM/Lmxlbmd0aCB8fFxuICAgICAgc2VydmVyU3RhdHM/LmNvbXBpbGF0aW9uPy5lcnJvcnM/Lmxlbmd0aFxuICAgICkge1xuICAgICAgbG9nLmVycm9yKCdFcnJvcnMgZm9yIGNsaWVudCBidWlsZDogJyArIGNsaWVudFN0YXRzLmNvbXBpbGF0aW9uLmVycm9ycyk7XG4gICAgICBsb2cuZXJyb3IoJ0Vycm9ycyBmb3Igc2VydmVyIGJ1aWxkOiAnICsgc2VydmVyU3RhdHMuY29tcGlsYXRpb24uZXJyb3JzKTtcbiAgICAgIC8vIGZpcnN0IHRpbWUsIHJhdGhlciB0aGFuIHJlLXJlbmRlclxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoaW5pdFJlbmRlcikpIHtcbiAgICAgICAgcHJvY2Vzcy5leGl0KC0xKTtcbiAgICAgIH1cbiAgICAgIGxvZy5lcnJvcignQWJvdmUgY29tcGlsZXIgZXJyb3JzIGJsb2NraW5nIHJlbG9hZCcpO1xuICAgICAgcmV0dXJuO1xuICAgIH0gZWxzZSB7XG4gICAgICBsb2cuaW5mbygnTGF1bmNoaW5nIFNTUicpO1xuICAgIH1cblxuICAgIC8vIEFTU0VUU1xuICAgIGNvbnN0IGNsaWVudE1hbmlmZXN0ID0gY2xpZW50U3RhdHMudG9Kc29uKCk7XG5cbiAgICBjb25zdCBzZXJ2ZXJFbnRyeSA9IGdldFNlcnZlckJ1bmRsZShzZXJ2ZXJTdGF0cyk7XG4gICAgLy8gcmVsb2FkIG1vZHVsZXNcbiAgICBPYmplY3Qua2V5cyhmc1JlcXVpcmUuY2FjaGUpLmZvckVhY2goa2V5ID0+IHtcbiAgICAgIGRlbGV0ZSBmc1JlcXVpcmUuY2FjaGVba2V5XTtcbiAgICB9KTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICAgIHJlbmRlciA9IChmc1JlcXVpcmUoc2VydmVyRW50cnkpIGFzIGFueSkuZGVmYXVsdC5iaW5kKFxuICAgICAgdW5kZWZpbmVkLFxuICAgICAgY2xpZW50TWFuaWZlc3QsXG4gICAgKTtcbiAgICAvLyBTRVJWRVIgU0lERSBFTlRSWVBPSU5UXG4gICAgaWYgKEFycmF5LmlzQXJyYXkoaW5pdFJlbmRlcikpIHtcbiAgICAgIGluaXRSZW5kZXIuZm9yRWFjaChhc3luYyBpbml0ID0+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBsb2cuaW5mbygnUmVzb2x2aW5nIHF1ZXVlZCByZXF1ZXN0cycpO1xuICAgICAgICAgIGF3YWl0IHJlbmRlciguLi5pbml0LmFyZ3MpO1xuICAgICAgICAgIGluaXQucmVzb2x2ZSgpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgbG9nLmVycm9yKCdFcnJvciB3aGVuIGF0dGVtcHRpbmcgdG8gcmVuZGVyIHF1ZXVlZCByZXF1ZXN0cycpO1xuICAgICAgICAgIGxvZy5lcnJvcihlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBpbml0UmVuZGVyID0gdW5kZWZpbmVkO1xuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGRldlNlcnZlciA9IG5ldyBXZWJwYWNrRGV2U2VydmVyKFxuICAgIC8vIHdyaXRlIHRvIG1lbW9yeSBmaWxlc3lzdGVtIHNvIHdlIGNhbiBpbXBvcnRcbiAgICB7XG4gICAgICAuLi53ZWJwYWNrQ29uZmlnc1swXS5kZXZTZXJ2ZXIsXG4gICAgICBkZXZNaWRkbGV3YXJlOiB7XG4gICAgICAgIC4uLndlYnBhY2tDb25maWdzWzBdPy5kZXZTZXJ2ZXI/LmRldk1pZGRsZXdhcmUsXG4gICAgICAgIG91dHB1dEZpbGVTeXN0ZW06IHtcbiAgICAgICAgICAuLi5mcyxcbiAgICAgICAgICBqb2luOiBwYXRoLmpvaW4gYXMgYW55LFxuICAgICAgICB9IGFzIGFueSBhcyB0eXBlb2YgZnMsXG4gICAgICB9LFxuICAgICAgc2V0dXBNaWRkbGV3YXJlczogKG1pZGRsZXdhcmVzLCBkZXZTZXJ2ZXIpID0+IHtcbiAgICAgICAgaWYgKCFkZXZTZXJ2ZXIpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ3dlYnBhY2stZGV2LXNlcnZlciBpcyBub3QgZGVmaW5lZCcpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3Qgb3RoZXJSb3V0ZXMgPSBbXG4gICAgICAgICAgcHJvY2Vzcy5lbnYuV0VCUEFDS19QVUJMSUNfUEFUSCxcbiAgICAgICAgICAuLi5PYmplY3Qua2V5cyh3ZWJwYWNrQ29uZmlnc1swXS5kZXZTZXJ2ZXI/LnByb3h5ID8/IHt9KSxcbiAgICAgICAgXTtcbiAgICAgICAgLy8gc2VydmUgU1NSIGZvciBub24tV0VCUEFDS19QVUJMSUNfUEFUSFxuICAgICAgICBkZXZTZXJ2ZXIuYXBwPy5nZXQoXG4gICAgICAgICAgbmV3IFJlZ0V4cChgXig/ISR7b3RoZXJSb3V0ZXMuam9pbignfCcpfSlgKSxcbiAgICAgICAgICBoYW5kbGVFcnJvcnMoYXN5bmMgZnVuY3Rpb24gKHJlcTogYW55LCByZXM6IGFueSkge1xuICAgICAgICAgICAgaWYgKHJlcS51cmwuZW5kc1dpdGgoJ2Zhdmljb24uaWNvJykpIHtcbiAgICAgICAgICAgICAgcmVzLnN0YXR1c0NvZGUgPSA0MDQ7XG4gICAgICAgICAgICAgIHJlcy5zZXRIZWFkZXIoJ0NvbnRlbnQtdHlwZScsICd0ZXh0L2h0bWwnKTtcbiAgICAgICAgICAgICAgcmVzLnNlbmQoJ25vdCBmb3VuZCcpO1xuICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXMuc29ja2V0Lm9uKCdlcnJvcicsIChlcnJvcjogdW5rbm93bikgPT4ge1xuICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKCdGYXRhbCcsIGVycm9yKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICBhd2FpdCByZW5kZXIocmVxLCByZXMpO1xuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuXG4gICAgICAgIGlmICh3ZWJwYWNrQ29uZmlnc1swXS5kZXZTZXJ2ZXI/LnNldHVwTWlkZGxld2FyZXMpIHtcbiAgICAgICAgICByZXR1cm4gd2VicGFja0NvbmZpZ3NbMF0uZGV2U2VydmVyLnNldHVwTWlkZGxld2FyZXMoXG4gICAgICAgICAgICBtaWRkbGV3YXJlcyxcbiAgICAgICAgICAgIGRldlNlcnZlcixcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG1pZGRsZXdhcmVzO1xuICAgICAgfSxcbiAgICB9LFxuICAgIGNvbXBpbGVyLFxuICApO1xuICBjb25zdCBydW5TZXJ2ZXIgPSBhc3luYyAoKSA9PiB7XG4gICAgYXdhaXQgZGV2U2VydmVyLnN0YXJ0KCk7XG4gICAgZGV2U2VydmVyLmNvbXBpbGVyLmhvb2tzLmRvbmUudGFwKFxuICAgICAgJ0FuYW5zaSBTZXJ2ZXInLFxuICAgICAgKG11bHRpU3RhdHM6IHdlYnBhY2suTXVsdGlTdGF0cyB8IHdlYnBhY2suU3RhdHMpID0+IHtcbiAgICAgICAgaWYgKCFtdWx0aVN0YXRzKSB7XG4gICAgICAgICAgbG9nLmVycm9yKCdzdGF0cyBub3Qgc2VuZCcpO1xuICAgICAgICAgIHByb2Nlc3MuZXhpdCgtMSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoIU9iamVjdC5oYXNPd24obXVsdGlTdGF0cywgJ3N0YXRzJykpIHJldHVybjtcbiAgICAgICAgaWYgKChtdWx0aVN0YXRzIGFzIHdlYnBhY2suTXVsdGlTdGF0cykuc3RhdHMubGVuZ3RoID4gMSkge1xuICAgICAgICAgIHRyeSB7XG4gICAgICAgICAgICBpbXBvcnRSZW5kZXIoKG11bHRpU3RhdHMgYXMgd2VicGFjay5NdWx0aVN0YXRzKS5zdGF0cyk7XG4gICAgICAgICAgfSBjYXRjaCAoZTogYW55KSB7XG4gICAgICAgICAgICBsb2cuZXJyb3IoJ0ZhaWxlZCB0byBsb2FkIHNlcnZlIGVudHJ5cG9pbnQnKTtcbiAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxvZy5lcnJvcignT25seSBjb21waWxlciBvbmUgc3RhdCcpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICk7XG4gIH07XG4gIGNvbnN0IHN0b3BTZXJ2ZXIgPSBhc3luYyAoKSA9PiB7XG4gICAgbG9nLmluZm8oJ1N0b3BwaW5nIHNlcnZlci4uLicpO1xuICAgIGF3YWl0IGRldlNlcnZlci5zdG9wKCk7XG4gICAgbG9nLmluZm8oJ1NlcnZlciBjbG9zZWQnKTtcbiAgfTtcblxuICBwcm9jZXNzLm9uKCdTSUdJTlQnLCAoKSA9PiB7XG4gICAgbG9nLndhcm4oJ1JlY2VpdmVkIFNJR0lOVCwgZGV2c2VydmVyIHNodXR0aW5nIGRvd24nKTtcbiAgICBzdG9wU2VydmVyKCk7XG4gICAgcHJvY2Vzcy5leGl0KC0xKTtcbiAgfSk7XG5cbiAgcnVuU2VydmVyKCk7XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQW1COztBQUFBO0FBQUE7QUFBQTtBQU9uQjtBQUNBO0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBRUE7QUFuQkFBLE1BQU0sQ0FBQ0MsTUFBTSxHQUNYRCxNQUFNLENBQUNDLE1BQU0sSUFDYiwwQkFBMkIsU0FBU0EsTUFBTSxDQUFDQyxFQUFFLEVBQUVDLEdBQUcsRUFBRTtFQUNsRCxPQUFPSCxNQUFNLENBQUNJLFNBQVMsQ0FBQ0MsY0FBYyxDQUFDQyxJQUFJLENBQUNKLEVBQUUsRUFBRUMsR0FBRyxDQUFDO0FBQ3RELENBQUM7QUFrQkg7QUFDQSxJQUFJSSxPQUFPLENBQUNDLElBQUksS0FBS0MsTUFBTSxFQUFFO0VBQzNCLE1BQU1DLFVBQVUsR0FBR0MsT0FBTyxDQUFDQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0VBRWxDLElBQUksQ0FBQ0YsVUFBVSxFQUFFO0lBQ2ZHLE9BQU8sQ0FBQ0MsR0FBRyxDQUFFLHVDQUFzQyxDQUFDO0lBQ3BESCxPQUFPLENBQUNJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztFQUNsQjtFQUVBQyxjQUFjLENBQUNOLFVBQVUsQ0FBQztBQUM1QjtBQUVlLFNBQVNNLGNBQWMsQ0FDcENOLFVBQWtCLEVBQ2xCTyxHQUE0QixHQUFHLENBQUMsQ0FBQyxFQUNqQztFQUFBO0VBQ0E7RUFDQSxNQUFNQyxhQUFhLEdBQUdYLE9BQU8sQ0FBQ0EsT0FBTyxDQUFDWSxPQUFPO0VBQzNDO0VBQ0FDLGFBQUksQ0FBQ0MsSUFBSSxDQUFDVixPQUFPLENBQUNXLEdBQUcsRUFBRSxFQUFFLGdCQUFnQixDQUFDLENBQzNDLENBQUM7RUFFRixNQUFNUixHQUFHLEdBQUdTLGdCQUFPLENBQUNDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQzs7RUFFakQ7RUFDQSxNQUFNQyxNQUFNLEdBQUcsSUFBSUMsYUFBTSxFQUFFO0VBQzNCLE1BQU1DLEVBQUUsR0FBRyxJQUFBQyx5QkFBa0IsRUFBQ0gsTUFBTSxDQUFDO0VBQ3JDSSxZQUFHLENBQUNDLEdBQUcsQ0FBQ0MsV0FBTSxDQUFDLENBQUNELEdBQUcsQ0FBQ0gsRUFBRSxDQUFRO0VBRTlCLE1BQU1LLFNBQVMsR0FBRyxJQUFBQywwQkFBZSxFQUFDSixZQUFHLENBQUM7RUFDdEMsTUFBTUssUUFBUSxHQUFHLElBQUFDLGVBQVMsRUFBQ04sWUFBRyxDQUFDSyxRQUFRLENBQUM7RUFDeEMsSUFBSUUsTUFBMEI7O0VBRTlCO0VBQ0EsU0FBU0MsUUFBUSxDQUFDQyxTQUFpQixFQUFFO0lBQ25DO0lBQ0E7SUFDQSxNQUFNQyxtQkFBbUIsR0FBR0MsWUFBRyxDQUFDQyxRQUFRLENBQUM7TUFBRUMsT0FBTyxFQUFFO0lBQU0sQ0FBQyxDQUFDO0lBQzVEWCxXQUFNLENBQUNZLFNBQVMsQ0FDZEosbUJBQW1CLENBQUNLLEVBQUUsRUFDckI7QUFDUCx1QkFBdUJ4QixhQUFJLENBQUNELE9BQU8sQ0FBQ1IsT0FBTyxDQUFDVyxHQUFHLEVBQUUsRUFBRWdCLFNBQVMsQ0FBRTtBQUM5RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQSxLQUFLLENBQ0E7SUFDRCxPQUFPQyxtQkFBbUI7RUFDNUI7RUFFQSxNQUFNTSxjQUFjLEdBQUcsQ0FDckIzQixhQUFhLENBQ1g7SUFDRSxHQUFHRCxHQUFHO0lBQ042QixTQUFTLEVBQUVULFFBQVEsQ0FBQzNCLFVBQVUsQ0FBQyxDQUFDcUMsSUFBSTtJQUNwQ0EsSUFBSSxFQUFFO0VBQ1IsQ0FBQyxFQUNEO0lBQUVDLElBQUksRUFBRTtFQUFjLENBQUMsQ0FDeEIsRUFDRDlCLGFBQWEsQ0FDWDtJQUNFLEdBQUdELEdBQUc7SUFDTjZCLFNBQVMsRUFBRXBDLFVBQVUsQ0FBQ3VDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsYUFBYSxDQUFDO0lBQ3BERixJQUFJLEVBQUUsUUFBUTtJQUNkRyxnQkFBZ0IsRUFBRTtFQUNwQixDQUFDLEVBQ0Q7SUFBRUYsSUFBSSxFQUFFLGFBQWE7SUFBRUcsTUFBTSxFQUFFO0VBQU8sQ0FBQyxDQUN4QyxDQUNPOztFQUVWO0VBQ0EsTUFBTUMsUUFBdUIsR0FBRyxJQUFBQyxnQkFBTyxFQUFDUixjQUFjLENBQUM7RUFFdkRTLHlCQUFnQixDQUFDQyxPQUFPLENBQUM7SUFBRUMsV0FBVyxFQUFFO0VBQUssQ0FBQyxDQUFDO0VBRS9DLFNBQVNDLGVBQWUsQ0FBQ0MsV0FBMEIsRUFBRTtJQUFBO0lBQ25ELE1BQU1DLFVBQVUsR0FBR0QsV0FBVyxDQUFDRSxNQUFNLENBQUM7TUFBRUMsTUFBTSxFQUFFO0lBQUssQ0FBQyxDQUFDO0lBQ3ZELE9BQU96QyxhQUFJLENBQUNDLElBQUksMEJBQUNzQyxVQUFVLENBQUNHLFVBQVUsb0NBQUksRUFBRSxFQUFFLFdBQVcsQ0FBQztFQUM1RDtFQUNBLFNBQVNDLFlBQVksQ0FLbkJDLEVBQUssRUFBRTtJQUNQLE9BQU8sZ0JBQ0xDLEdBQThCLEVBQzlCQyxHQUE4QixFQUM5QkMsSUFBa0IsRUFDbEI7TUFDQSxJQUFJO1FBQ0YsT0FBTyxNQUFNSCxFQUFFLENBQUNDLEdBQUcsRUFBRUMsR0FBRyxDQUFDO01BQzNCLENBQUMsQ0FBQyxPQUFPRSxDQUFDLEVBQUU7UUFDVkQsSUFBSSxDQUFDQyxDQUFDLENBQUM7TUFDVDtJQUNGLENBQUM7RUFDSDtFQUVBLElBQUlDLFVBRVMsR0FBRyxFQUFFO0VBQ2xCLElBQUlDLE1BQW1CLEdBQUcsQ0FBQyxHQUFHQyxJQUFJLEtBQ2hDLElBQUlDLE9BQU8sQ0FBQ3JELE9BQU8sSUFBSTtJQUFBO0lBQ3JCLGVBQUFrRCxVQUFVLHFCQUFWLFlBQVlJLElBQUksQ0FBQztNQUFFRixJQUFJO01BQUVwRDtJQUFRLENBQUMsQ0FBQztFQUNyQyxDQUFDLENBQUM7RUFFSixTQUFTdUQsWUFBWSxDQUFDQyxLQUFzQixFQUFFO0lBQUE7SUFDNUMsTUFBTSxDQUFDQyxXQUFXLEVBQUVsQixXQUFXLENBQUMsR0FBR2lCLEtBQUs7SUFDeEMsSUFDRUMsV0FBVyxxQ0FBWEEsV0FBVyxDQUFFQyxXQUFXLHVDQUF4QixzQkFBMEJDLE1BQU0sYUFBaEMsdUJBQWtDQyxNQUFNLElBQ3hDckIsV0FBVyxxQ0FBWEEsV0FBVyxDQUFFbUIsV0FBVyx1Q0FBeEIsc0JBQTBCQyxNQUFNLGFBQWhDLHVCQUFrQ0MsTUFBTSxFQUN4QztNQUNBakUsR0FBRyxDQUFDa0UsS0FBSyxDQUFDLDJCQUEyQixHQUFHSixXQUFXLENBQUNDLFdBQVcsQ0FBQ0MsTUFBTSxDQUFDO01BQ3ZFaEUsR0FBRyxDQUFDa0UsS0FBSyxDQUFDLDJCQUEyQixHQUFHdEIsV0FBVyxDQUFDbUIsV0FBVyxDQUFDQyxNQUFNLENBQUM7TUFDdkU7TUFDQSxJQUFJRyxLQUFLLENBQUNDLE9BQU8sQ0FBQ2IsVUFBVSxDQUFDLEVBQUU7UUFDN0IxRCxPQUFPLENBQUNJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztNQUNsQjtNQUNBRCxHQUFHLENBQUNrRSxLQUFLLENBQUMsdUNBQXVDLENBQUM7TUFDbEQ7SUFDRixDQUFDLE1BQU07TUFDTGxFLEdBQUcsQ0FBQ3FFLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDM0I7O0lBRUE7SUFDQSxNQUFNQyxjQUFjLEdBQUdSLFdBQVcsQ0FBQ2hCLE1BQU0sRUFBRTtJQUUzQyxNQUFNeUIsV0FBVyxHQUFHNUIsZUFBZSxDQUFDQyxXQUFXLENBQUM7SUFDaEQ7SUFDQTFELE1BQU0sQ0FBQ3NGLElBQUksQ0FBQ3RELFNBQVMsQ0FBQ3VELEtBQUssQ0FBQyxDQUFDQyxPQUFPLENBQUNyRixHQUFHLElBQUk7TUFDMUMsT0FBTzZCLFNBQVMsQ0FBQ3VELEtBQUssQ0FBQ3BGLEdBQUcsQ0FBQztJQUM3QixDQUFDLENBQUM7SUFDRjtJQUNBbUUsTUFBTSxHQUFJdEMsU0FBUyxDQUFDcUQsV0FBVyxDQUFDLENBQVNJLE9BQU8sQ0FBQ0MsSUFBSSxDQUNuREMsU0FBUyxFQUNUUCxjQUFjLENBQ2Y7SUFDRDtJQUNBLElBQUlILEtBQUssQ0FBQ0MsT0FBTyxDQUFDYixVQUFVLENBQUMsRUFBRTtNQUM3QkEsVUFBVSxDQUFDbUIsT0FBTyxDQUFDLE1BQU1JLElBQUksSUFBSTtRQUMvQixJQUFJO1VBQ0Y5RSxHQUFHLENBQUNxRSxJQUFJLENBQUMsMkJBQTJCLENBQUM7VUFDckMsTUFBTWIsTUFBTSxDQUFDLEdBQUdzQixJQUFJLENBQUNyQixJQUFJLENBQUM7VUFDMUJxQixJQUFJLENBQUN6RSxPQUFPLEVBQUU7UUFDaEIsQ0FBQyxDQUFDLE9BQU8wRSxDQUFDLEVBQUU7VUFDVi9FLEdBQUcsQ0FBQ2tFLEtBQUssQ0FBQyxpREFBaUQsQ0FBQztVQUM1RGxFLEdBQUcsQ0FBQ2tFLEtBQUssQ0FBQ2EsQ0FBQyxDQUFDO1FBQ2Q7TUFDRixDQUFDLENBQUM7TUFDRnhCLFVBQVUsR0FBR3NCLFNBQVM7SUFDeEI7RUFDRjtFQUVBLE1BQU1HLFNBQVMsR0FBRyxJQUFJQyx5QkFBZ0I7RUFDcEM7RUFDQTtJQUNFLEdBQUdsRCxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUNpRCxTQUFTO0lBQzlCRSxhQUFhLEVBQUU7TUFDYix3QkFBR25ELGNBQWMsQ0FBQyxDQUFDLENBQUMsOENBQWpCLGlCQUFtQmlELFNBQVMscUJBQTVCLHNCQUE4QkUsYUFBYTtNQUM5Q0MsZ0JBQWdCLEVBQUU7UUFDaEIsR0FBR3RFLEVBQUU7UUFDTE4sSUFBSSxFQUFFRCxhQUFJLENBQUNDO01BQ2I7SUFDRixDQUFDO0lBQ0Q2RSxnQkFBZ0IsRUFBRSxDQUFDQyxXQUFXLEVBQUVMLFNBQVMsS0FBSztNQUFBO01BQzVDLElBQUksQ0FBQ0EsU0FBUyxFQUFFO1FBQ2QsTUFBTSxJQUFJTSxLQUFLLENBQUMsbUNBQW1DLENBQUM7TUFDdEQ7TUFFQSxNQUFNQyxXQUFXLEdBQUcsQ0FDbEIxRixPQUFPLENBQUNNLEdBQUcsQ0FBQ3FGLG1CQUFtQixFQUMvQixHQUFHdEcsTUFBTSxDQUFDc0YsSUFBSSxvREFBQ3pDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQ2lELFNBQVMscUJBQTNCLHVCQUE2QlMsS0FBSyxvQ0FBSSxDQUFDLENBQUMsQ0FBQyxDQUN6RDtNQUNEO01BQ0Esa0JBQUFULFNBQVMsQ0FBQ1UsR0FBRyxxQkFBYixlQUFlQyxHQUFHLENBQ2hCLElBQUlDLE1BQU0sQ0FBRSxPQUFNTCxXQUFXLENBQUNoRixJQUFJLENBQUMsR0FBRyxDQUFFLEdBQUUsQ0FBQyxFQUMzQzBDLFlBQVksQ0FBQyxnQkFBZ0JFLEdBQVEsRUFBRUMsR0FBUSxFQUFFO1FBQy9DLElBQUlELEdBQUcsQ0FBQzBDLEdBQUcsQ0FBQ0MsUUFBUSxDQUFDLGFBQWEsQ0FBQyxFQUFFO1VBQ25DMUMsR0FBRyxDQUFDMkMsVUFBVSxHQUFHLEdBQUc7VUFDcEIzQyxHQUFHLENBQUM0QyxTQUFTLENBQUMsY0FBYyxFQUFFLFdBQVcsQ0FBQztVQUMxQzVDLEdBQUcsQ0FBQzZDLElBQUksQ0FBQyxXQUFXLENBQUM7VUFDckI7UUFDRjtRQUNBN0MsR0FBRyxDQUFDOEMsTUFBTSxDQUFDQyxFQUFFLENBQUMsT0FBTyxFQUFHakMsS0FBYyxJQUFLO1VBQ3pDbkUsT0FBTyxDQUFDbUUsS0FBSyxDQUFDLE9BQU8sRUFBRUEsS0FBSyxDQUFDO1FBQy9CLENBQUMsQ0FBQztRQUVGLE1BQU1WLE1BQU0sQ0FBQ0wsR0FBRyxFQUFFQyxHQUFHLENBQUM7TUFDeEIsQ0FBQyxDQUFDLENBQ0g7TUFFRCw4QkFBSXJCLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQ2lELFNBQVMsYUFBM0IsdUJBQTZCSSxnQkFBZ0IsRUFBRTtRQUNqRCxPQUFPckQsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDaUQsU0FBUyxDQUFDSSxnQkFBZ0IsQ0FDakRDLFdBQVcsRUFDWEwsU0FBUyxDQUNWO01BQ0g7TUFFQSxPQUFPSyxXQUFXO0lBQ3BCO0VBQ0YsQ0FBQyxFQUNEL0MsUUFBUSxDQUNUO0VBQ0QsTUFBTThELFNBQVMsR0FBRyxZQUFZO0lBQzVCLE1BQU1wQixTQUFTLENBQUNxQixLQUFLLEVBQUU7SUFDdkJyQixTQUFTLENBQUMxQyxRQUFRLENBQUNnRSxLQUFLLENBQUNDLElBQUksQ0FBQ0MsR0FBRyxDQUMvQixlQUFlLEVBQ2RDLFVBQThDLElBQUs7TUFDbEQsSUFBSSxDQUFDQSxVQUFVLEVBQUU7UUFDZnpHLEdBQUcsQ0FBQ2tFLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQztRQUMzQnJFLE9BQU8sQ0FBQ0ksSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO01BQ2xCO01BRUEsSUFBSSxDQUFDZixNQUFNLENBQUNDLE1BQU0sQ0FBQ3NILFVBQVUsRUFBRSxPQUFPLENBQUMsRUFBRTtNQUN6QyxJQUFLQSxVQUFVLENBQXdCNUMsS0FBSyxDQUFDSSxNQUFNLEdBQUcsQ0FBQyxFQUFFO1FBQ3ZELElBQUk7VUFDRkwsWUFBWSxDQUFFNkMsVUFBVSxDQUF3QjVDLEtBQUssQ0FBQztRQUN4RCxDQUFDLENBQUMsT0FBT2tCLENBQU0sRUFBRTtVQUNmL0UsR0FBRyxDQUFDa0UsS0FBSyxDQUFDLGlDQUFpQyxDQUFDO1VBQzVDLE1BQU1hLENBQUM7UUFDVDtNQUNGLENBQUMsTUFBTTtRQUNML0UsR0FBRyxDQUFDa0UsS0FBSyxDQUFDLHdCQUF3QixDQUFDO01BQ3JDO0lBQ0YsQ0FBQyxDQUNGO0VBQ0gsQ0FBQztFQUNELE1BQU13QyxVQUFVLEdBQUcsWUFBWTtJQUM3QjFHLEdBQUcsQ0FBQ3FFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztJQUM5QixNQUFNVyxTQUFTLENBQUMyQixJQUFJLEVBQUU7SUFDdEIzRyxHQUFHLENBQUNxRSxJQUFJLENBQUMsZUFBZSxDQUFDO0VBQzNCLENBQUM7RUFFRHhFLE9BQU8sQ0FBQ3NHLEVBQUUsQ0FBQyxRQUFRLEVBQUUsTUFBTTtJQUN6Qm5HLEdBQUcsQ0FBQzRHLElBQUksQ0FBQywwQ0FBMEMsQ0FBQztJQUNwREYsVUFBVSxFQUFFO0lBQ1o3RyxPQUFPLENBQUNJLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztFQUNsQixDQUFDLENBQUM7RUFFRm1HLFNBQVMsRUFBRTtBQUNiIn0=
|
package/lib/scripts/types.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
|
+
import { Request, Response } from 'express';
|
|
2
3
|
import { ServerResponse, IncomingMessage } from 'http';
|
|
3
4
|
import { StatsCompilation } from 'webpack';
|
|
4
|
-
import { Request, Response } from 'express';
|
|
5
5
|
export type Render = (clientManifest: StatsCompilation, req: Request | IncomingMessage, res: Response | ServerResponse) => Promise<void>;
|
|
6
6
|
export type BoundRender = (req: Request | IncomingMessage, res: Response | ServerResponse) => Promise<void>;
|
|
7
7
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/scripts/types.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/scripts/types.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,MAAM,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAE3C,MAAM,MAAM,MAAM,GAAG,CACnB,cAAc,EAAE,gBAAgB,EAChC,GAAG,EAAE,OAAO,GAAG,eAAe,EAC9B,GAAG,EAAE,QAAQ,GAAG,cAAc,KAC3B,OAAO,CAAC,IAAI,CAAC,CAAC;AAEnB,MAAM,MAAM,WAAW,GAAG,CACxB,GAAG,EAAE,OAAO,GAAG,eAAe,EAC9B,GAAG,EAAE,QAAQ,GAAG,cAAc,KAC3B,OAAO,CAAC,IAAI,CAAC,CAAC"}
|
package/lib/scripts/types.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
4
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvdHlwZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVxdWVzdCwgUmVzcG9uc2UgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCB7IFNlcnZlclJlc3BvbnNlLCBJbmNvbWluZ01lc3NhZ2UgfSBmcm9tICdodHRwJztcbmltcG9ydCB7IFN0YXRzQ29tcGlsYXRpb24gfSBmcm9tICd3ZWJwYWNrJztcblxuZXhwb3J0IHR5cGUgUmVuZGVyID0gKFxuICBjbGllbnRNYW5pZmVzdDogU3RhdHNDb21waWxhdGlvbixcbiAgcmVxOiBSZXF1ZXN0IHwgSW5jb21pbmdNZXNzYWdlLFxuICByZXM6IFJlc3BvbnNlIHwgU2VydmVyUmVzcG9uc2UsXG4pID0+IFByb21pc2U8dm9pZD47XG5cbmV4cG9ydCB0eXBlIEJvdW5kUmVuZGVyID0gKFxuICByZXE6IFJlcXVlc3QgfCBJbmNvbWluZ01lc3NhZ2UsXG4gIHJlczogUmVzcG9uc2UgfCBTZXJ2ZXJSZXNwb25zZSxcbikgPT4gUHJvbWlzZTx2b2lkPjtcbiJdLCJtYXBwaW5ncyI6IiJ9
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@anansi/core",
|
|
3
|
-
"version": "0.15.
|
|
3
|
+
"version": "0.15.6",
|
|
4
4
|
"description": "React 18 Framework",
|
|
5
5
|
"homepage": "https://github.com/ntucker/anansi/tree/master/packages/core#readme",
|
|
6
6
|
"repository": {
|
|
@@ -67,7 +67,7 @@
|
|
|
67
67
|
"devDependencies": {
|
|
68
68
|
"@anansi/babel-preset": "3.3.1",
|
|
69
69
|
"@anansi/browserslist-config": "1.4.1",
|
|
70
|
-
"@anansi/webpack-config": "14.0.
|
|
70
|
+
"@anansi/webpack-config": "14.0.4",
|
|
71
71
|
"@babel/cli": "7.19.3",
|
|
72
72
|
"@babel/core": "7.20.5",
|
|
73
73
|
"@types/compression": "1.7.2",
|
|
@@ -77,10 +77,10 @@
|
|
|
77
77
|
"jest": "29.3.1",
|
|
78
78
|
"rimraf": "3.0.2",
|
|
79
79
|
"webpack": "5.75.0",
|
|
80
|
-
"webpack-cli": "5.0.
|
|
80
|
+
"webpack-cli": "5.0.1"
|
|
81
81
|
},
|
|
82
82
|
"dependencies": {
|
|
83
|
-
"@anansi/router": "^0.7.
|
|
83
|
+
"@anansi/router": "^0.7.5",
|
|
84
84
|
"@babel/runtime": "^7.17.0",
|
|
85
85
|
"@rest-hooks/ssr": "^0.7.0",
|
|
86
86
|
"chalk": "^4.0.0",
|
package/src/scripts/serve.ts
CHANGED
|
@@ -1,17 +1,21 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
Object.hasOwn =
|
|
3
|
+
Object.hasOwn ||
|
|
4
|
+
/* istanbul ignore next */ function hasOwn(it, key) {
|
|
5
|
+
return Object.prototype.hasOwnProperty.call(it, key);
|
|
6
|
+
};
|
|
7
|
+
import compress from 'compression';
|
|
8
|
+
import express, { NextFunction } from 'express';
|
|
4
9
|
import diskFs from 'fs';
|
|
5
|
-
import path from 'path';
|
|
6
|
-
import webpack, { web } from 'webpack';
|
|
7
10
|
import { Server, IncomingMessage, ServerResponse } from 'http';
|
|
8
|
-
import express, { NextFunction } from 'express';
|
|
9
11
|
import ora from 'ora';
|
|
10
|
-
import
|
|
12
|
+
import path from 'path';
|
|
13
|
+
import { promisify } from 'util';
|
|
14
|
+
import webpack, { web } from 'webpack';
|
|
11
15
|
|
|
12
16
|
import 'cross-fetch/polyfill';
|
|
13
|
-
import { Render } from './types';
|
|
14
17
|
import getProxyMiddlewares from './getProxyMiddlewares';
|
|
18
|
+
import { Render } from './types';
|
|
15
19
|
|
|
16
20
|
// run directly from node
|
|
17
21
|
if (require.main === module) {
|
|
@@ -1,18 +1,22 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
|
|
2
|
+
Object.hasOwn =
|
|
3
|
+
Object.hasOwn ||
|
|
4
|
+
/* istanbul ignore next */ function hasOwn(it, key) {
|
|
5
|
+
return Object.prototype.hasOwnProperty.call(it, key);
|
|
6
|
+
};
|
|
7
|
+
import type { NextFunction } from 'express';
|
|
4
8
|
import diskFs from 'fs';
|
|
5
|
-
import
|
|
6
|
-
import webpack, { MultiCompiler } from 'webpack';
|
|
7
|
-
import { createFsFromVolume, Volume } from 'memfs';
|
|
9
|
+
import { createFsRequire } from 'fs-require';
|
|
8
10
|
import { Server, IncomingMessage, ServerResponse } from 'http';
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
+
import { createFsFromVolume, Volume } from 'memfs';
|
|
12
|
+
import path from 'path';
|
|
11
13
|
import sourceMapSupport from 'source-map-support';
|
|
14
|
+
import tmp from 'tmp';
|
|
12
15
|
import { ufs } from 'unionfs';
|
|
16
|
+
import { promisify } from 'util';
|
|
17
|
+
import webpack, { MultiCompiler } from 'webpack';
|
|
13
18
|
import WebpackDevServer from 'webpack-dev-server';
|
|
14
19
|
import logging from 'webpack/lib/logging/runtime';
|
|
15
|
-
import { createFsRequire } from 'fs-require';
|
|
16
20
|
|
|
17
21
|
import 'cross-fetch/polyfill';
|
|
18
22
|
import { BoundRender } from './types';
|
package/src/scripts/types.ts
CHANGED