@anansi/core 0.16.7 → 0.16.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,27 +1,22 @@
1
1
  #!/usr/bin/env node
2
- "use strict";
3
-
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
5
- exports.__esModule = true;
6
- exports.default = startDevServer;
7
- var _fs = _interopRequireDefault(require("fs"));
8
- var _fsRequire = require("fs-require");
9
- var _memfs = require("memfs");
10
- var _path = _interopRequireDefault(require("path"));
11
- var _sourceMapSupport = _interopRequireDefault(require("source-map-support"));
12
- var _tmp = _interopRequireDefault(require("tmp"));
13
- var _unionfs = require("unionfs");
14
- var _util = require("util");
15
- var _webpack = _interopRequireDefault(require("webpack"));
16
- var _runtime = _interopRequireDefault(require("webpack/lib/logging/runtime"));
17
- var _webpackDevServer = _interopRequireDefault(require("webpack-dev-server"));
18
- require("cross-fetch/dist/node-polyfill");
19
- var _getWebpackConfig = require("./getWebpackConfig.js");
20
2
  Object.hasOwn = Object.hasOwn || /* istanbul ignore next */function hasOwn(it, key) {
21
3
  return Object.prototype.hasOwnProperty.call(it, key);
22
4
  };
5
+ import diskFs from 'fs';
6
+ import { createFsRequire } from 'fs-require';
7
+ import { createFsFromVolume, Volume } from 'memfs';
8
+ import path from 'path';
9
+ import sourceMapSupport from 'source-map-support';
10
+ import tmp from 'tmp';
11
+ import { ufs } from 'unionfs';
12
+ import { promisify } from 'util';
13
+ import webpack from 'webpack';
14
+ import logging from 'webpack/lib/logging/runtime.js';
15
+ import WebpackDevServer from 'webpack-dev-server';
16
+ import 'cross-fetch/dist/node-polyfill.js';
17
+ import { getWebpackConfig } from './getWebpackConfig.js';
23
18
  // run directly from node
24
- if (require.main === module) {
19
+ if ('main' in import.meta) {
25
20
  const entrypoint = process.argv[2];
26
21
  if (!entrypoint) {
27
22
  console.log(`Usage: start-anansi <entrypoint-file>`);
@@ -29,28 +24,30 @@ if (require.main === module) {
29
24
  }
30
25
  startDevServer(entrypoint);
31
26
  }
32
- function startDevServer(entrypoint, env = {}) {
27
+ let serverFileContents = Promise.resolve('');
28
+ let serverEntry = '';
29
+ export default async function startDevServer(entrypoint, env = {}) {
33
30
  var _webpackConfigs$, _webpackConfigs$$devS;
34
- const webpackConfig = (0, _getWebpackConfig.getWebpackConfig)();
35
- const log = _runtime.default.getLogger('anansi-devserver');
31
+ const webpackConfig = await getWebpackConfig();
32
+ const log = logging.getLogger('anansi-devserver');
36
33
 
37
34
  // Set up in memory filesystem
38
- const volume = new _memfs.Volume();
39
- const fs = (0, _memfs.createFsFromVolume)(volume);
40
- _unionfs.ufs.use(_fs.default).use(fs);
41
- const fsRequire = (0, _fsRequire.createFsRequire)(_unionfs.ufs);
42
- const readFile = (0, _util.promisify)(_unionfs.ufs.readFile);
35
+ const volume = new Volume();
36
+ const fs = createFsFromVolume(volume);
37
+ ufs.use(diskFs).use(fs);
38
+ const fsRequire = createFsRequire(ufs);
39
+ const readFile = promisify(ufs.readFile);
43
40
  let server;
44
41
 
45
42
  // Generate a temporary file so we can hot reload from the root of the application
46
43
  function hotEntry(entryPath) {
47
44
  // eslint-disable-next-line
48
45
  // @ts-ignore for some reason it's not picking up that other options are optional
49
- const generatedEntrypoint = _tmp.default.fileSync({
46
+ const generatedEntrypoint = tmp.fileSync({
50
47
  postfix: '.js'
51
48
  });
52
- _fs.default.writeSync(generatedEntrypoint.fd, `
53
- import entry from "${_path.default.resolve(process.cwd(), entryPath)}";
49
+ diskFs.writeSync(generatedEntrypoint.fd, `
50
+ import entry from "${path.resolve(process.cwd(), entryPath)}";
54
51
 
55
52
  if (module.hot) {
56
53
  module.hot.accept();
@@ -60,25 +57,23 @@ function startDevServer(entrypoint, env = {}) {
60
57
  `);
61
58
  return generatedEntrypoint;
62
59
  }
63
- const webpackConfigs = [webpackConfig({
64
- ...env,
60
+ const webpackConfigs = [webpackConfig(Object.assign({}, env, {
65
61
  entrypath: hotEntry(entrypoint).name,
66
62
  name: 'client'
67
- }, {
63
+ }), {
68
64
  mode: 'development'
69
- }), webpackConfig({
70
- ...env,
65
+ }), webpackConfig(Object.assign({}, env, {
71
66
  entrypath: entrypoint.replace('.tsx', '.server.tsx'),
72
67
  name: 'server',
73
68
  BROWSERSLIST_ENV: 'current node'
74
- }, {
69
+ }), {
75
70
  mode: 'development',
76
71
  target: 'node'
77
72
  })];
78
73
 
79
74
  // initialize the webpack compiler
80
- const compiler = (0, _webpack.default)(webpackConfigs);
81
- _sourceMapSupport.default.install({
75
+ const compiler = webpack(webpackConfigs);
76
+ sourceMapSupport.install({
82
77
  hookRequire: true
83
78
  });
84
79
  function getServerBundle(serverStats) {
@@ -86,7 +81,7 @@ function startDevServer(entrypoint, env = {}) {
86
81
  const serverJson = serverStats.toJson({
87
82
  assets: true
88
83
  });
89
- return _path.default.join((_serverJson$outputPat = serverJson.outputPath) != null ? _serverJson$outputPat : '', 'server.js');
84
+ return path.join((_serverJson$outputPat = serverJson.outputPath) != null ? _serverJson$outputPat : '', 'server.js');
90
85
  }
91
86
  function handleErrors(fn) {
92
87
  return async function (req, res, next) {
@@ -123,12 +118,12 @@ function startDevServer(entrypoint, env = {}) {
123
118
 
124
119
  // ASSETS
125
120
  const clientManifest = clientStats.toJson();
126
- const serverEntry = getServerBundle(serverStats);
121
+ serverEntry = getServerBundle(serverStats);
122
+ serverFileContents = readFile(serverEntry).then(buf => buf.toString());
127
123
  // reload modules
128
124
  Object.keys(fsRequire.cache).forEach(key => {
129
125
  delete fsRequire.cache[key];
130
126
  });
131
- // eslint-disable-next-line @typescript-eslint/no-var-requires
132
127
  render = fsRequire(serverEntry).default.bind(undefined, clientManifest);
133
128
  // SERVER SIDE ENTRYPOINT
134
129
  if (Array.isArray(initRender)) {
@@ -145,17 +140,13 @@ function startDevServer(entrypoint, env = {}) {
145
140
  initRender = undefined;
146
141
  }
147
142
  }
148
- const devServer = new _webpackDevServer.default(
149
- // write to memory filesystem so we can import
150
- {
151
- ...webpackConfigs[0].devServer,
152
- devMiddleware: {
153
- ...((_webpackConfigs$ = webpackConfigs[0]) == null ? void 0 : (_webpackConfigs$$devS = _webpackConfigs$.devServer) == null ? void 0 : _webpackConfigs$$devS.devMiddleware),
154
- outputFileSystem: {
155
- ...fs,
156
- join: _path.default.join
157
- }
158
- },
143
+ const devServer = new WebpackDevServer( // write to memory filesystem so we can import
144
+ Object.assign({}, webpackConfigs[0].devServer, {
145
+ devMiddleware: Object.assign({}, (_webpackConfigs$ = webpackConfigs[0]) == null ? void 0 : (_webpackConfigs$$devS = _webpackConfigs$.devServer) == null ? void 0 : _webpackConfigs$$devS.devMiddleware, {
146
+ outputFileSystem: Object.assign({}, fs, {
147
+ join: path.join
148
+ })
149
+ }),
159
150
  setupMiddlewares: (middlewares, devServer) => {
160
151
  var _webpackConfigs$0$dev, _webpackConfigs$0$dev2, _devServer$app, _webpackConfigs$0$dev3;
161
152
  if (!devServer) {
@@ -180,7 +171,7 @@ function startDevServer(entrypoint, env = {}) {
180
171
  }
181
172
  return middlewares;
182
173
  }
183
- }, compiler);
174
+ }), compiler);
184
175
  const runServer = async () => {
185
176
  await devServer.start();
186
177
  devServer.compiler.hooks.done.tap('Anansi Server', multiStats => {
@@ -194,6 +185,24 @@ function startDevServer(entrypoint, env = {}) {
194
185
  importRender(multiStats.stats);
195
186
  } catch (e) {
196
187
  log.error('Failed to load serve entrypoint');
188
+ const finder = new RegExp(`${serverEntry}:([\\d]+):([\\d]+)`, 'g');
189
+ serverFileContents.then(fileText => {
190
+ const textRows = fileText.split('\n');
191
+ log.error('>>> Stack Context [serve entrypoint] <<<');
192
+ for (const match of (_e$stack$matchAll = e.stack.matchAll(finder)) != null ? _e$stack$matchAll : []) {
193
+ var _e$stack$matchAll;
194
+ const row = Number.parseInt(match[1]);
195
+ const col = Number.parseInt(match[2]);
196
+ log.error(path.basename(serverEntry) + ' ' + row + ':' + col);
197
+ log.error(textRows[row - 2]);
198
+ log.error(textRows[row - 1]);
199
+ log.error(Array(col).join(' ') + '^');
200
+ log.error(textRows[row]);
201
+ log.error(textRows[row + 1]);
202
+ log.error(textRows[row + 2]);
203
+ }
204
+ diskFs.writeFileSync(serverEntry, fileText);
205
+ });
197
206
  throw e;
198
207
  }
199
208
  } else {
@@ -213,4 +222,4 @@ function startDevServer(entrypoint, env = {}) {
213
222
  });
214
223
  runServer();
215
224
  }
216
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsImRlZmF1bHQiLCJleHBvcnRzIiwiX19lc01vZHVsZSIsInN0YXJ0RGV2U2VydmVyIiwiX2ZzIiwiX2ZzUmVxdWlyZSIsIl9tZW1mcyIsIl9wYXRoIiwiX3NvdXJjZU1hcFN1cHBvcnQiLCJfdG1wIiwiX3VuaW9uZnMiLCJfdXRpbCIsIl93ZWJwYWNrIiwiX3J1bnRpbWUiLCJfd2VicGFja0RldlNlcnZlciIsIl9nZXRXZWJwYWNrQ29uZmlnIiwiT2JqZWN0IiwiaGFzT3duIiwiaXQiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJtYWluIiwibW9kdWxlIiwiZW50cnlwb2ludCIsInByb2Nlc3MiLCJhcmd2IiwiY29uc29sZSIsImxvZyIsImV4aXQiLCJlbnYiLCJfd2VicGFja0NvbmZpZ3MkIiwiX3dlYnBhY2tDb25maWdzJCRkZXZTIiwid2VicGFja0NvbmZpZyIsImdldFdlYnBhY2tDb25maWciLCJsb2dnaW5nIiwiZ2V0TG9nZ2VyIiwidm9sdW1lIiwiVm9sdW1lIiwiZnMiLCJjcmVhdGVGc0Zyb21Wb2x1bWUiLCJ1ZnMiLCJ1c2UiLCJkaXNrRnMiLCJmc1JlcXVpcmUiLCJjcmVhdGVGc1JlcXVpcmUiLCJyZWFkRmlsZSIsInByb21pc2lmeSIsInNlcnZlciIsImhvdEVudHJ5IiwiZW50cnlQYXRoIiwiZ2VuZXJhdGVkRW50cnlwb2ludCIsInRtcCIsImZpbGVTeW5jIiwicG9zdGZpeCIsIndyaXRlU3luYyIsImZkIiwicGF0aCIsInJlc29sdmUiLCJjd2QiLCJ3ZWJwYWNrQ29uZmlncyIsImVudHJ5cGF0aCIsIm5hbWUiLCJtb2RlIiwicmVwbGFjZSIsIkJST1dTRVJTTElTVF9FTlYiLCJ0YXJnZXQiLCJjb21waWxlciIsIndlYnBhY2siLCJzb3VyY2VNYXBTdXBwb3J0IiwiaW5zdGFsbCIsImhvb2tSZXF1aXJlIiwiZ2V0U2VydmVyQnVuZGxlIiwic2VydmVyU3RhdHMiLCJfc2VydmVySnNvbiRvdXRwdXRQYXQiLCJzZXJ2ZXJKc29uIiwidG9Kc29uIiwiYXNzZXRzIiwiam9pbiIsIm91dHB1dFBhdGgiLCJoYW5kbGVFcnJvcnMiLCJmbiIsInJlcSIsInJlcyIsIm5leHQiLCJ4IiwiaW5pdFJlbmRlciIsInJlbmRlciIsImFyZ3MiLCJQcm9taXNlIiwiX2luaXRSZW5kZXIiLCJwdXNoIiwiaW1wb3J0UmVuZGVyIiwic3RhdHMiLCJfY2xpZW50U3RhdHMkY29tcGlsYXQiLCJfY2xpZW50U3RhdHMkY29tcGlsYXQyIiwiX3NlcnZlclN0YXRzJGNvbXBpbGF0IiwiX3NlcnZlclN0YXRzJGNvbXBpbGF0MiIsImNsaWVudFN0YXRzIiwiY29tcGlsYXRpb24iLCJlcnJvcnMiLCJsZW5ndGgiLCJlcnJvciIsIkFycmF5IiwiaXNBcnJheSIsImluZm8iLCJjbGllbnRNYW5pZmVzdCIsInNlcnZlckVudHJ5Iiwia2V5cyIsImNhY2hlIiwiZm9yRWFjaCIsImJpbmQiLCJ1bmRlZmluZWQiLCJpbml0IiwiZSIsImRldlNlcnZlciIsIldlYnBhY2tEZXZTZXJ2ZXIiLCJkZXZNaWRkbGV3YXJlIiwib3V0cHV0RmlsZVN5c3RlbSIsInNldHVwTWlkZGxld2FyZXMiLCJtaWRkbGV3YXJlcyIsIl93ZWJwYWNrQ29uZmlncyQwJGRldiIsIl93ZWJwYWNrQ29uZmlncyQwJGRldjIiLCJfZGV2U2VydmVyJGFwcCIsIl93ZWJwYWNrQ29uZmlncyQwJGRldjMiLCJFcnJvciIsIm90aGVyUm91dGVzIiwiV0VCUEFDS19QVUJMSUNfUEFUSCIsInByb3h5IiwiYXBwIiwiZ2V0IiwiUmVnRXhwIiwidXJsIiwiZW5kc1dpdGgiLCJzdGF0dXNDb2RlIiwic2V0SGVhZGVyIiwic2VuZCIsInNvY2tldCIsIm9uIiwicnVuU2VydmVyIiwic3RhcnQiLCJob29rcyIsImRvbmUiLCJ0YXAiLCJtdWx0aVN0YXRzIiwic3RvcFNlcnZlciIsInN0b3AiLCJ3YXJuIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvc3RhcnREZXZzZXJ2ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiIyEvdXNyL2Jpbi9lbnYgbm9kZVxuT2JqZWN0Lmhhc093biA9XG4gIE9iamVjdC5oYXNPd24gfHxcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi8gZnVuY3Rpb24gaGFzT3duKGl0LCBrZXkpIHtcbiAgICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGl0LCBrZXkpO1xuICB9O1xuaW1wb3J0IHR5cGUgeyBOZXh0RnVuY3Rpb24gfSBmcm9tICdleHByZXNzJztcbmltcG9ydCBkaXNrRnMgZnJvbSAnZnMnO1xuaW1wb3J0IHsgY3JlYXRlRnNSZXF1aXJlIH0gZnJvbSAnZnMtcmVxdWlyZSc7XG5pbXBvcnQgeyBTZXJ2ZXIsIEluY29taW5nTWVzc2FnZSwgU2VydmVyUmVzcG9uc2UgfSBmcm9tICdodHRwJztcbmltcG9ydCB7IGNyZWF0ZUZzRnJvbVZvbHVtZSwgVm9sdW1lIH0gZnJvbSAnbWVtZnMnO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgc291cmNlTWFwU3VwcG9ydCBmcm9tICdzb3VyY2UtbWFwLXN1cHBvcnQnO1xuaW1wb3J0IHRtcCBmcm9tICd0bXAnO1xuaW1wb3J0IHsgdWZzIH0gZnJvbSAndW5pb25mcyc7XG5pbXBvcnQgeyBwcm9taXNpZnkgfSBmcm9tICd1dGlsJztcbmltcG9ydCB3ZWJwYWNrLCB7IE11bHRpQ29tcGlsZXIgfSBmcm9tICd3ZWJwYWNrJztcbmltcG9ydCBsb2dnaW5nIGZyb20gJ3dlYnBhY2svbGliL2xvZ2dpbmcvcnVudGltZSc7XG5pbXBvcnQgV2VicGFja0RldlNlcnZlciBmcm9tICd3ZWJwYWNrLWRldi1zZXJ2ZXInO1xuXG5pbXBvcnQgJ2Nyb3NzLWZldGNoL2Rpc3Qvbm9kZS1wb2x5ZmlsbCc7XG5pbXBvcnQgeyBnZXRXZWJwYWNrQ29uZmlnIH0gZnJvbSAnLi9nZXRXZWJwYWNrQ29uZmlnLmpzJztcbmltcG9ydCB7IEJvdW5kUmVuZGVyIH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbi8vIHJ1biBkaXJlY3RseSBmcm9tIG5vZGVcbmlmIChyZXF1aXJlLm1haW4gPT09IG1vZHVsZSkge1xuICBjb25zdCBlbnRyeXBvaW50ID0gcHJvY2Vzcy5hcmd2WzJdO1xuXG4gIGlmICghZW50cnlwb2ludCkge1xuICAgIGNvbnNvbGUubG9nKGBVc2FnZTogc3RhcnQtYW5hbnNpIDxlbnRyeXBvaW50LWZpbGU+YCk7XG4gICAgcHJvY2Vzcy5leGl0KC0xKTtcbiAgfVxuXG4gIHN0YXJ0RGV2U2VydmVyKGVudHJ5cG9pbnQpO1xufVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBzdGFydERldlNlcnZlcihcbiAgZW50cnlwb2ludDogc3RyaW5nLFxuICBlbnY6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge30sXG4pIHtcbiAgY29uc3Qgd2VicGFja0NvbmZpZyA9IGdldFdlYnBhY2tDb25maWcoKTtcblxuICBjb25zdCBsb2cgPSBsb2dnaW5nLmdldExvZ2dlcignYW5hbnNpLWRldnNlcnZlcicpO1xuXG4gIC8vIFNldCB1cCBpbiBtZW1vcnkgZmlsZXN5c3RlbVxuICBjb25zdCB2b2x1bWUgPSBuZXcgVm9sdW1lKCk7XG4gIGNvbnN0IGZzID0gY3JlYXRlRnNGcm9tVm9sdW1lKHZvbHVtZSk7XG4gIHVmcy51c2UoZGlza0ZzKS51c2UoZnMgYXMgYW55KTtcblxuICBjb25zdCBmc1JlcXVpcmUgPSBjcmVhdGVGc1JlcXVpcmUodWZzKTtcbiAgY29uc3QgcmVhZEZpbGUgPSBwcm9taXNpZnkodWZzLnJlYWRGaWxlKTtcbiAgbGV0IHNlcnZlcjogU2VydmVyIHwgdW5kZWZpbmVkO1xuXG4gIC8vIEdlbmVyYXRlIGEgdGVtcG9yYXJ5IGZpbGUgc28gd2UgY2FuIGhvdCByZWxvYWQgZnJvbSB0aGUgcm9vdCBvZiB0aGUgYXBwbGljYXRpb25cbiAgZnVuY3Rpb24gaG90RW50cnkoZW50cnlQYXRoOiBzdHJpbmcpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICAvLyBAdHMtaWdub3JlIGZvciBzb21lIHJlYXNvbiBpdCdzIG5vdCBwaWNraW5nIHVwIHRoYXQgb3RoZXIgb3B0aW9ucyBhcmUgb3B0aW9uYWxcbiAgICBjb25zdCBnZW5lcmF0ZWRFbnRyeXBvaW50ID0gdG1wLmZpbGVTeW5jKHsgcG9zdGZpeDogJy5qcycgfSk7XG4gICAgZGlza0ZzLndyaXRlU3luYyhcbiAgICAgIGdlbmVyYXRlZEVudHJ5cG9pbnQuZmQsXG4gICAgICBgXG4gIGltcG9ydCBlbnRyeSBmcm9tIFwiJHtwYXRoLnJlc29sdmUocHJvY2Vzcy5jd2QoKSwgZW50cnlQYXRoKX1cIjtcblxuICBpZiAobW9kdWxlLmhvdCkge1xuICAgIG1vZHVsZS5ob3QuYWNjZXB0KCk7XG4gIH1cblxuICBleHBvcnQgZGVmYXVsdCBlbnRyeTtcbiAgICBgLFxuICAgICk7XG4gICAgcmV0dXJuIGdlbmVyYXRlZEVudHJ5cG9pbnQ7XG4gIH1cblxuICBjb25zdCB3ZWJwYWNrQ29uZmlncyA9IFtcbiAgICB3ZWJwYWNrQ29uZmlnKFxuICAgICAge1xuICAgICAgICAuLi5lbnYsXG4gICAgICAgIGVudHJ5cGF0aDogaG90RW50cnkoZW50cnlwb2ludCkubmFtZSxcbiAgICAgICAgbmFtZTogJ2NsaWVudCcsXG4gICAgICB9LFxuICAgICAgeyBtb2RlOiAnZGV2ZWxvcG1lbnQnIH0sXG4gICAgKSxcbiAgICB3ZWJwYWNrQ29uZmlnKFxuICAgICAge1xuICAgICAgICAuLi5lbnYsXG4gICAgICAgIGVudHJ5cGF0aDogZW50cnlwb2ludC5yZXBsYWNlKCcudHN4JywgJy5zZXJ2ZXIudHN4JyksXG4gICAgICAgIG5hbWU6ICdzZXJ2ZXInLFxuICAgICAgICBCUk9XU0VSU0xJU1RfRU5WOiAnY3VycmVudCBub2RlJyxcbiAgICAgIH0sXG4gICAgICB7IG1vZGU6ICdkZXZlbG9wbWVudCcsIHRhcmdldDogJ25vZGUnIH0sXG4gICAgKSxcbiAgXSBhcyBjb25zdDtcblxuICAvLyBpbml0aWFsaXplIHRoZSB3ZWJwYWNrIGNvbXBpbGVyXG4gIGNvbnN0IGNvbXBpbGVyOiBNdWx0aUNvbXBpbGVyID0gd2VicGFjayh3ZWJwYWNrQ29uZmlncyk7XG5cbiAgc291cmNlTWFwU3VwcG9ydC5pbnN0YWxsKHsgaG9va1JlcXVpcmU6IHRydWUgfSk7XG5cbiAgZnVuY3Rpb24gZ2V0U2VydmVyQnVuZGxlKHNlcnZlclN0YXRzOiB3ZWJwYWNrLlN0YXRzKSB7XG4gICAgY29uc3Qgc2VydmVySnNvbiA9IHNlcnZlclN0YXRzLnRvSnNvbih7IGFzc2V0czogdHJ1ZSB9KTtcbiAgICByZXR1cm4gcGF0aC5qb2luKHNlcnZlckpzb24ub3V0cHV0UGF0aCA/PyAnJywgJ3NlcnZlci5qcycpO1xuICB9XG4gIGZ1bmN0aW9uIGhhbmRsZUVycm9yczxcbiAgICBGIGV4dGVuZHMgKFxuICAgICAgcmVxOiBSZXF1ZXN0IHwgSW5jb21pbmdNZXNzYWdlLFxuICAgICAgcmVzOiBSZXNwb25zZSB8IFNlcnZlclJlc3BvbnNlLFxuICAgICkgPT4gUHJvbWlzZTx2b2lkPixcbiAgPihmbjogRikge1xuICAgIHJldHVybiBhc3luYyBmdW5jdGlvbiAoXG4gICAgICByZXE6IFJlcXVlc3QgfCBJbmNvbWluZ01lc3NhZ2UsXG4gICAgICByZXM6IFJlc3BvbnNlIHwgU2VydmVyUmVzcG9uc2UsXG4gICAgICBuZXh0OiBOZXh0RnVuY3Rpb24sXG4gICAgKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gYXdhaXQgZm4ocmVxLCByZXMpO1xuICAgICAgfSBjYXRjaCAoeCkge1xuICAgICAgICBuZXh0KHgpO1xuICAgICAgfVxuICAgIH07XG4gIH1cblxuICBsZXQgaW5pdFJlbmRlcjpcbiAgICB8IHsgYXJnczogUGFyYW1ldGVyczxCb3VuZFJlbmRlcj47IHJlc29sdmU6ICgpID0+IHZvaWQgfVtdXG4gICAgfCB1bmRlZmluZWQgPSBbXTtcbiAgbGV0IHJlbmRlcjogQm91bmRSZW5kZXIgPSAoLi4uYXJncykgPT5cbiAgICBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICAgIGluaXRSZW5kZXI/LnB1c2goeyBhcmdzLCByZXNvbHZlIH0pO1xuICAgIH0pO1xuXG4gIGZ1bmN0aW9uIGltcG9ydFJlbmRlcihzdGF0czogd2VicGFjay5TdGF0c1tdKSB7XG4gICAgY29uc3QgW2NsaWVudFN0YXRzLCBzZXJ2ZXJTdGF0c10gPSBzdGF0cztcbiAgICBpZiAoXG4gICAgICBjbGllbnRTdGF0cz8uY29tcGlsYXRpb24/LmVycm9ycz8ubGVuZ3RoIHx8XG4gICAgICBzZXJ2ZXJTdGF0cz8uY29tcGlsYXRpb24/LmVycm9ycz8ubGVuZ3RoXG4gICAgKSB7XG4gICAgICBsb2cuZXJyb3IoJ0Vycm9ycyBmb3IgY2xpZW50IGJ1aWxkOiAnICsgY2xpZW50U3RhdHMuY29tcGlsYXRpb24uZXJyb3JzKTtcbiAgICAgIGxvZy5lcnJvcignRXJyb3JzIGZvciBzZXJ2ZXIgYnVpbGQ6ICcgKyBzZXJ2ZXJTdGF0cy5jb21waWxhdGlvbi5lcnJvcnMpO1xuICAgICAgLy8gZmlyc3QgdGltZSwgcmF0aGVyIHRoYW4gcmUtcmVuZGVyXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShpbml0UmVuZGVyKSkge1xuICAgICAgICBwcm9jZXNzLmV4aXQoLTEpO1xuICAgICAgfVxuICAgICAgbG9nLmVycm9yKCdBYm92ZSBjb21waWxlciBlcnJvcnMgYmxvY2tpbmcgcmVsb2FkJyk7XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIGxvZy5pbmZvKCdMYXVuY2hpbmcgU1NSJyk7XG4gICAgfVxuXG4gICAgLy8gQVNTRVRTXG4gICAgY29uc3QgY2xpZW50TWFuaWZlc3QgPSBjbGllbnRTdGF0cy50b0pzb24oKTtcblxuICAgIGNvbnN0IHNlcnZlckVudHJ5ID0gZ2V0U2VydmVyQnVuZGxlKHNlcnZlclN0YXRzKTtcbiAgICAvLyByZWxvYWQgbW9kdWxlc1xuICAgIE9iamVjdC5rZXlzKGZzUmVxdWlyZS5jYWNoZSkuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgZGVsZXRlIGZzUmVxdWlyZS5jYWNoZVtrZXldO1xuICAgIH0pO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdmFyLXJlcXVpcmVzXG4gICAgcmVuZGVyID0gKGZzUmVxdWlyZShzZXJ2ZXJFbnRyeSkgYXMgYW55KS5kZWZhdWx0LmJpbmQoXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBjbGllbnRNYW5pZmVzdCxcbiAgICApO1xuICAgIC8vIFNFUlZFUiBTSURFIEVOVFJZUE9JTlRcbiAgICBpZiAoQXJyYXkuaXNBcnJheShpbml0UmVuZGVyKSkge1xuICAgICAgaW5pdFJlbmRlci5mb3JFYWNoKGFzeW5jIGluaXQgPT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGxvZy5pbmZvKCdSZXNvbHZpbmcgcXVldWVkIHJlcXVlc3RzJyk7XG4gICAgICAgICAgYXdhaXQgcmVuZGVyKC4uLmluaXQuYXJncyk7XG4gICAgICAgICAgaW5pdC5yZXNvbHZlKCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICBsb2cuZXJyb3IoJ0Vycm9yIHdoZW4gYXR0ZW1wdGluZyB0byByZW5kZXIgcXVldWVkIHJlcXVlc3RzJyk7XG4gICAgICAgICAgbG9nLmVycm9yKGUpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIGluaXRSZW5kZXIgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgZGV2U2VydmVyID0gbmV3IFdlYnBhY2tEZXZTZXJ2ZXIoXG4gICAgLy8gd3JpdGUgdG8gbWVtb3J5IGZpbGVzeXN0ZW0gc28gd2UgY2FuIGltcG9ydFxuICAgIHtcbiAgICAgIC4uLndlYnBhY2tDb25maWdzWzBdLmRldlNlcnZlcixcbiAgICAgIGRldk1pZGRsZXdhcmU6IHtcbiAgICAgICAgLi4ud2VicGFja0NvbmZpZ3NbMF0/LmRldlNlcnZlcj8uZGV2TWlkZGxld2FyZSxcbiAgICAgICAgb3V0cHV0RmlsZVN5c3RlbToge1xuICAgICAgICAgIC4uLmZzLFxuICAgICAgICAgIGpvaW46IHBhdGguam9pbiBhcyBhbnksXG4gICAgICAgIH0gYXMgYW55LFxuICAgICAgfSxcbiAgICAgIHNldHVwTWlkZGxld2FyZXM6IChtaWRkbGV3YXJlcywgZGV2U2VydmVyKSA9PiB7XG4gICAgICAgIGlmICghZGV2U2VydmVyKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd3ZWJwYWNrLWRldi1zZXJ2ZXIgaXMgbm90IGRlZmluZWQnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG90aGVyUm91dGVzID0gW1xuICAgICAgICAgIHByb2Nlc3MuZW52LldFQlBBQ0tfUFVCTElDX1BBVEgsXG4gICAgICAgICAgLi4uT2JqZWN0LmtleXMod2VicGFja0NvbmZpZ3NbMF0uZGV2U2VydmVyPy5wcm94eSA/PyB7fSksXG4gICAgICAgIF07XG4gICAgICAgIC8vIHNlcnZlIFNTUiBmb3Igbm9uLVdFQlBBQ0tfUFVCTElDX1BBVEhcbiAgICAgICAgZGV2U2VydmVyLmFwcD8uZ2V0KFxuICAgICAgICAgIG5ldyBSZWdFeHAoYF4oPyEke290aGVyUm91dGVzLmpvaW4oJ3wnKX0pYCksXG4gICAgICAgICAgaGFuZGxlRXJyb3JzKGFzeW5jIGZ1bmN0aW9uIChyZXE6IGFueSwgcmVzOiBhbnkpIHtcbiAgICAgICAgICAgIGlmIChyZXEudXJsLmVuZHNXaXRoKCdmYXZpY29uLmljbycpKSB7XG4gICAgICAgICAgICAgIHJlcy5zdGF0dXNDb2RlID0gNDA0O1xuICAgICAgICAgICAgICByZXMuc2V0SGVhZGVyKCdDb250ZW50LXR5cGUnLCAndGV4dC9odG1sJyk7XG4gICAgICAgICAgICAgIHJlcy5zZW5kKCdub3QgZm91bmQnKTtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVzLnNvY2tldC5vbignZXJyb3InLCAoZXJyb3I6IHVua25vd24pID0+IHtcbiAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignRmF0YWwnLCBlcnJvcik7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgYXdhaXQgcmVuZGVyKHJlcSwgcmVzKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAod2VicGFja0NvbmZpZ3NbMF0uZGV2U2VydmVyPy5zZXR1cE1pZGRsZXdhcmVzKSB7XG4gICAgICAgICAgcmV0dXJuIHdlYnBhY2tDb25maWdzWzBdLmRldlNlcnZlci5zZXR1cE1pZGRsZXdhcmVzKFxuICAgICAgICAgICAgbWlkZGxld2FyZXMsXG4gICAgICAgICAgICBkZXZTZXJ2ZXIsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBtaWRkbGV3YXJlcztcbiAgICAgIH0sXG4gICAgfSxcbiAgICBjb21waWxlcixcbiAgKTtcbiAgY29uc3QgcnVuU2VydmVyID0gYXN5bmMgKCkgPT4ge1xuICAgIGF3YWl0IGRldlNlcnZlci5zdGFydCgpO1xuICAgIGRldlNlcnZlci5jb21waWxlci5ob29rcy5kb25lLnRhcChcbiAgICAgICdBbmFuc2kgU2VydmVyJyxcbiAgICAgIChtdWx0aVN0YXRzOiB3ZWJwYWNrLk11bHRpU3RhdHMgfCB3ZWJwYWNrLlN0YXRzKSA9PiB7XG4gICAgICAgIGlmICghbXVsdGlTdGF0cykge1xuICAgICAgICAgIGxvZy5lcnJvcignc3RhdHMgbm90IHNlbmQnKTtcbiAgICAgICAgICBwcm9jZXNzLmV4aXQoLTEpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFPYmplY3QuaGFzT3duKG11bHRpU3RhdHMsICdzdGF0cycpKSByZXR1cm47XG4gICAgICAgIGlmICgobXVsdGlTdGF0cyBhcyB3ZWJwYWNrLk11bHRpU3RhdHMpLnN0YXRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgaW1wb3J0UmVuZGVyKChtdWx0aVN0YXRzIGFzIHdlYnBhY2suTXVsdGlTdGF0cykuc3RhdHMpO1xuICAgICAgICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgICAgICAgbG9nLmVycm9yKCdGYWlsZWQgdG8gbG9hZCBzZXJ2ZSBlbnRyeXBvaW50Jyk7XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBsb2cuZXJyb3IoJ09ubHkgY29tcGlsZXIgb25lIHN0YXQnKTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICApO1xuICB9O1xuICBjb25zdCBzdG9wU2VydmVyID0gYXN5bmMgKCkgPT4ge1xuICAgIGxvZy5pbmZvKCdTdG9wcGluZyBzZXJ2ZXIuLi4nKTtcbiAgICBhd2FpdCBkZXZTZXJ2ZXIuc3RvcCgpO1xuICAgIGxvZy5pbmZvKCdTZXJ2ZXIgY2xvc2VkJyk7XG4gIH07XG5cbiAgcHJvY2Vzcy5vbignU0lHSU5UJywgKCkgPT4ge1xuICAgIGxvZy53YXJuKCdSZWNlaXZlZCBTSUdJTlQsIGRldnNlcnZlciBzaHV0dGluZyBkb3duJyk7XG4gICAgc3RvcFNlcnZlcigpO1xuICAgIHByb2Nlc3MuZXhpdCgtMSk7XG4gIH0pO1xuXG4gIHJ1blNlcnZlcigpO1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQTtBQUFtQjs7QUFBQSxJQUFBQSxzQkFBQSxHQUFBQyxPQUFBLGlEQUFBQyxPQUFBO0FBQUFDLE9BQUEsQ0FBQUMsVUFBQTtBQUFBRCxPQUFBLENBQUFELE9BQUEsR0FBQUcsY0FBQTtBQU9uQixJQUFBQyxHQUFBLEdBQUFOLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBTSxVQUFBLEdBQUFOLE9BQUE7QUFFQSxJQUFBTyxNQUFBLEdBQUFQLE9BQUE7QUFDQSxJQUFBUSxLQUFBLEdBQUFULHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBUyxpQkFBQSxHQUFBVixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVUsSUFBQSxHQUFBWCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVcsUUFBQSxHQUFBWCxPQUFB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
225
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPYmplY3QiLCJoYXNPd24iLCJpdCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRpc2tGcyIsImNyZWF0ZUZzUmVxdWlyZSIsImNyZWF0ZUZzRnJvbVZvbHVtZSIsIlZvbHVtZSIsInBhdGgiLCJzb3VyY2VNYXBTdXBwb3J0IiwidG1wIiwidWZzIiwicHJvbWlzaWZ5Iiwid2VicGFjayIsImxvZ2dpbmciLCJXZWJwYWNrRGV2U2VydmVyIiwiZ2V0V2VicGFja0NvbmZpZyIsImltcG9ydCIsIm1ldGEiLCJlbnRyeXBvaW50IiwicHJvY2VzcyIsImFyZ3YiLCJjb25zb2xlIiwibG9nIiwiZXhpdCIsInN0YXJ0RGV2U2VydmVyIiwic2VydmVyRmlsZUNvbnRlbnRzIiwiUHJvbWlzZSIsInJlc29sdmUiLCJzZXJ2ZXJFbnRyeSIsImVudiIsIl93ZWJwYWNrQ29uZmlncyQiLCJfd2VicGFja0NvbmZpZ3MkJGRldlMiLCJ3ZWJwYWNrQ29uZmlnIiwiZ2V0TG9nZ2VyIiwidm9sdW1lIiwiZnMiLCJ1c2UiLCJmc1JlcXVpcmUiLCJyZWFkRmlsZSIsInNlcnZlciIsImhvdEVudHJ5IiwiZW50cnlQYXRoIiwiZ2VuZXJhdGVkRW50cnlwb2ludCIsImZpbGVTeW5jIiwicG9zdGZpeCIsIndyaXRlU3luYyIsImZkIiwiY3dkIiwid2VicGFja0NvbmZpZ3MiLCJhc3NpZ24iLCJlbnRyeXBhdGgiLCJuYW1lIiwibW9kZSIsInJlcGxhY2UiLCJCUk9XU0VSU0xJU1RfRU5WIiwidGFyZ2V0IiwiY29tcGlsZXIiLCJpbnN0YWxsIiwiaG9va1JlcXVpcmUiLCJnZXRTZXJ2ZXJCdW5kbGUiLCJzZXJ2ZXJTdGF0cyIsIl9zZXJ2ZXJKc29uJG91dHB1dFBhdCIsInNlcnZlckpzb24iLCJ0b0pzb24iLCJhc3NldHMiLCJqb2luIiwib3V0cHV0UGF0aCIsImhhbmRsZUVycm9ycyIsImZuIiwicmVxIiwicmVzIiwibmV4dCIsIngiLCJpbml0UmVuZGVyIiwicmVuZGVyIiwiYXJncyIsIl9pbml0UmVuZGVyIiwicHVzaCIsImltcG9ydFJlbmRlciIsInN0YXRzIiwiX2NsaWVudFN0YXRzJGNvbXBpbGF0IiwiX2NsaWVudFN0YXRzJGNvbXBpbGF0MiIsIl9zZXJ2ZXJTdGF0cyRjb21waWxhdCIsIl9zZXJ2ZXJTdGF0cyRjb21waWxhdDIiLCJjbGllbnRTdGF0cyIsImNvbXBpbGF0aW9uIiwiZXJyb3JzIiwibGVuZ3RoIiwiZXJyb3IiLCJBcnJheSIsImlzQXJyYXkiLCJpbmZvIiwiY2xpZW50TWFuaWZlc3QiLCJ0aGVuIiwiYnVmIiwidG9TdHJpbmciLCJrZXlzIiwiY2FjaGUiLCJmb3JFYWNoIiwiZGVmYXVsdCIsImJpbmQiLCJ1bmRlZmluZWQiLCJpbml0IiwiZSIsImRldlNlcnZlciIsImRldk1pZGRsZXdhcmUiLCJvdXRwdXRGaWxlU3lzdGVtIiwic2V0dXBNaWRkbGV3YXJlcyIsIm1pZGRsZXdhcmVzIiwiX3dlYnBhY2tDb25maWdzJDAkZGV2IiwiX3dlYnBhY2tDb25maWdzJDAkZGV2MiIsIl9kZXZTZXJ2ZXIkYXBwIiwiX3dlYnBhY2tDb25maWdzJDAkZGV2MyIsIkVycm9yIiwib3RoZXJSb3V0ZXMiLCJXRUJQQUNLX1BVQkxJQ19QQVRIIiwicHJveHkiLCJhcHAiLCJnZXQiLCJSZWdFeHAiLCJ1cmwiLCJlbmRzV2l0aCIsInN0YXR1c0NvZGUiLCJzZXRIZWFkZXIiLCJzZW5kIiwic29ja2V0Iiwib24iLCJydW5TZXJ2ZXIiLCJzdGFydCIsImhvb2tzIiwiZG9uZSIsInRhcCIsIm11bHRpU3RhdHMiLCJmaW5kZXIiLCJmaWxlVGV4dCIsInRleHRSb3dzIiwic3BsaXQiLCJtYXRjaCIsIl9lJHN0YWNrJG1hdGNoQWxsIiwic3RhY2siLCJtYXRjaEFsbCIsInJvdyIsIk51bWJlciIsInBhcnNlSW50IiwiY29sIiwiYmFzZW5hbWUiLCJ3cml0ZUZpbGVTeW5jIiwic3RvcFNlcnZlciIsInN0b3AiLCJ3YXJuIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvc3RhcnREZXZzZXJ2ZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiIyEvdXNyL2Jpbi9lbnYgbm9kZVxuT2JqZWN0Lmhhc093biA9XG4gIE9iamVjdC5oYXNPd24gfHxcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi8gZnVuY3Rpb24gaGFzT3duKGl0LCBrZXkpIHtcbiAgICByZXR1cm4gT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGl0LCBrZXkpO1xuICB9O1xuaW1wb3J0IHR5cGUgeyBOZXh0RnVuY3Rpb24gfSBmcm9tICdleHByZXNzJztcbmltcG9ydCBkaXNrRnMgZnJvbSAnZnMnO1xuaW1wb3J0IHsgY3JlYXRlRnNSZXF1aXJlIH0gZnJvbSAnZnMtcmVxdWlyZSc7XG5pbXBvcnQgeyBTZXJ2ZXIsIEluY29taW5nTWVzc2FnZSwgU2VydmVyUmVzcG9uc2UgfSBmcm9tICdodHRwJztcbmltcG9ydCB7IGNyZWF0ZUZzRnJvbVZvbHVtZSwgVm9sdW1lIH0gZnJvbSAnbWVtZnMnO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQgc291cmNlTWFwU3VwcG9ydCBmcm9tICdzb3VyY2UtbWFwLXN1cHBvcnQnO1xuaW1wb3J0IHRtcCBmcm9tICd0bXAnO1xuaW1wb3J0IHsgdWZzIH0gZnJvbSAndW5pb25mcyc7XG5pbXBvcnQgeyBwcm9taXNpZnkgfSBmcm9tICd1dGlsJztcbmltcG9ydCB3ZWJwYWNrLCB7IE11bHRpQ29tcGlsZXIgfSBmcm9tICd3ZWJwYWNrJztcbmltcG9ydCBsb2dnaW5nIGZyb20gJ3dlYnBhY2svbGliL2xvZ2dpbmcvcnVudGltZS5qcyc7XG5pbXBvcnQgV2VicGFja0RldlNlcnZlciBmcm9tICd3ZWJwYWNrLWRldi1zZXJ2ZXInO1xuXG5pbXBvcnQgJ2Nyb3NzLWZldGNoL2Rpc3Qvbm9kZS1wb2x5ZmlsbC5qcyc7XG5pbXBvcnQgeyBnZXRXZWJwYWNrQ29uZmlnIH0gZnJvbSAnLi9nZXRXZWJwYWNrQ29uZmlnLmpzJztcbmltcG9ydCB7IEJvdW5kUmVuZGVyIH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbi8vIHJ1biBkaXJlY3RseSBmcm9tIG5vZGVcbmlmICgnbWFpbicgaW4gaW1wb3J0Lm1ldGEpIHtcbiAgY29uc3QgZW50cnlwb2ludCA9IHByb2Nlc3MuYXJndlsyXTtcblxuICBpZiAoIWVudHJ5cG9pbnQpIHtcbiAgICBjb25zb2xlLmxvZyhgVXNhZ2U6IHN0YXJ0LWFuYW5zaSA8ZW50cnlwb2ludC1maWxlPmApO1xuICAgIHByb2Nlc3MuZXhpdCgtMSk7XG4gIH1cblxuICBzdGFydERldlNlcnZlcihlbnRyeXBvaW50KTtcbn1cblxubGV0IHNlcnZlckZpbGVDb250ZW50czogUHJvbWlzZTxzdHJpbmc+ID0gUHJvbWlzZS5yZXNvbHZlKCcnKTtcbmxldCBzZXJ2ZXJFbnRyeSA9ICcnO1xuXG5leHBvcnQgZGVmYXVsdCBhc3luYyBmdW5jdGlvbiBzdGFydERldlNlcnZlcihcbiAgZW50cnlwb2ludDogc3RyaW5nLFxuICBlbnY6IFJlY29yZDxzdHJpbmcsIHVua25vd24+ID0ge30sXG4pIHtcbiAgY29uc3Qgd2VicGFja0NvbmZpZyA9IGF3YWl0IGdldFdlYnBhY2tDb25maWcoKTtcblxuICBjb25zdCBsb2cgPSBsb2dnaW5nLmdldExvZ2dlcignYW5hbnNpLWRldnNlcnZlcicpO1xuXG4gIC8vIFNldCB1cCBpbiBtZW1vcnkgZmlsZXN5c3RlbVxuICBjb25zdCB2b2x1bWUgPSBuZXcgVm9sdW1lKCk7XG4gIGNvbnN0IGZzID0gY3JlYXRlRnNGcm9tVm9sdW1lKHZvbHVtZSk7XG4gIHVmcy51c2UoZGlza0ZzKS51c2UoZnMgYXMgYW55KTtcblxuICBjb25zdCBmc1JlcXVpcmUgPSBjcmVhdGVGc1JlcXVpcmUodWZzKTtcbiAgY29uc3QgcmVhZEZpbGUgPSBwcm9taXNpZnkodWZzLnJlYWRGaWxlKTtcbiAgbGV0IHNlcnZlcjogU2VydmVyIHwgdW5kZWZpbmVkO1xuXG4gIC8vIEdlbmVyYXRlIGEgdGVtcG9yYXJ5IGZpbGUgc28gd2UgY2FuIGhvdCByZWxvYWQgZnJvbSB0aGUgcm9vdCBvZiB0aGUgYXBwbGljYXRpb25cbiAgZnVuY3Rpb24gaG90RW50cnkoZW50cnlQYXRoOiBzdHJpbmcpIHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgICAvLyBAdHMtaWdub3JlIGZvciBzb21lIHJlYXNvbiBpdCdzIG5vdCBwaWNraW5nIHVwIHRoYXQgb3RoZXIgb3B0aW9ucyBhcmUgb3B0aW9uYWxcbiAgICBjb25zdCBnZW5lcmF0ZWRFbnRyeXBvaW50ID0gdG1wLmZpbGVTeW5jKHsgcG9zdGZpeDogJy5qcycgfSk7XG4gICAgZGlza0ZzLndyaXRlU3luYyhcbiAgICAgIGdlbmVyYXRlZEVudHJ5cG9pbnQuZmQsXG4gICAgICBgXG4gIGltcG9ydCBlbnRyeSBmcm9tIFwiJHtwYXRoLnJlc29sdmUocHJvY2Vzcy5jd2QoKSwgZW50cnlQYXRoKX1cIjtcblxuICBpZiAobW9kdWxlLmhvdCkge1xuICAgIG1vZHVsZS5ob3QuYWNjZXB0KCk7XG4gIH1cblxuICBleHBvcnQgZGVmYXVsdCBlbnRyeTtcbiAgICBgLFxuICAgICk7XG4gICAgcmV0dXJuIGdlbmVyYXRlZEVudHJ5cG9pbnQ7XG4gIH1cblxuICBjb25zdCB3ZWJwYWNrQ29uZmlncyA9IFtcbiAgICB3ZWJwYWNrQ29uZmlnKFxuICAgICAge1xuICAgICAgICAuLi5lbnYsXG4gICAgICAgIGVudHJ5cGF0aDogaG90RW50cnkoZW50cnlwb2ludCkubmFtZSxcbiAgICAgICAgbmFtZTogJ2NsaWVudCcsXG4gICAgICB9LFxuICAgICAgeyBtb2RlOiAnZGV2ZWxvcG1lbnQnIH0sXG4gICAgKSxcbiAgICB3ZWJwYWNrQ29uZmlnKFxuICAgICAge1xuICAgICAgICAuLi5lbnYsXG4gICAgICAgIGVudHJ5cGF0aDogZW50cnlwb2ludC5yZXBsYWNlKCcudHN4JywgJy5zZXJ2ZXIudHN4JyksXG4gICAgICAgIG5hbWU6ICdzZXJ2ZXInLFxuICAgICAgICBCUk9XU0VSU0xJU1RfRU5WOiAnY3VycmVudCBub2RlJyxcbiAgICAgIH0sXG4gICAgICB7IG1vZGU6ICdkZXZlbG9wbWVudCcsIHRhcmdldDogJ25vZGUnIH0sXG4gICAgKSxcbiAgXSBhcyBjb25zdDtcblxuICAvLyBpbml0aWFsaXplIHRoZSB3ZWJwYWNrIGNvbXBpbGVyXG4gIGNvbnN0IGNvbXBpbGVyOiBNdWx0aUNvbXBpbGVyID0gd2VicGFjayh3ZWJwYWNrQ29uZmlncyk7XG5cbiAgc291cmNlTWFwU3VwcG9ydC5pbnN0YWxsKHsgaG9va1JlcXVpcmU6IHRydWUgfSk7XG5cbiAgZnVuY3Rpb24gZ2V0U2VydmVyQnVuZGxlKHNlcnZlclN0YXRzOiB3ZWJwYWNrLlN0YXRzKSB7XG4gICAgY29uc3Qgc2VydmVySnNvbiA9IHNlcnZlclN0YXRzLnRvSnNvbih7IGFzc2V0czogdHJ1ZSB9KTtcbiAgICByZXR1cm4gcGF0aC5qb2luKHNlcnZlckpzb24ub3V0cHV0UGF0aCA/PyAnJywgJ3NlcnZlci5qcycpO1xuICB9XG4gIGZ1bmN0aW9uIGhhbmRsZUVycm9yczxcbiAgICBGIGV4dGVuZHMgKFxuICAgICAgcmVxOiBSZXF1ZXN0IHwgSW5jb21pbmdNZXNzYWdlLFxuICAgICAgcmVzOiBSZXNwb25zZSB8IFNlcnZlclJlc3BvbnNlLFxuICAgICkgPT4gUHJvbWlzZTx2b2lkPixcbiAgPihmbjogRikge1xuICAgIHJldHVybiBhc3luYyBmdW5jdGlvbiAoXG4gICAgICByZXE6IFJlcXVlc3QgfCBJbmNvbWluZ01lc3NhZ2UsXG4gICAgICByZXM6IFJlc3BvbnNlIHwgU2VydmVyUmVzcG9uc2UsXG4gICAgICBuZXh0OiBOZXh0RnVuY3Rpb24sXG4gICAgKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gYXdhaXQgZm4ocmVxLCByZXMpO1xuICAgICAgfSBjYXRjaCAoeCkge1xuICAgICAgICBuZXh0KHgpO1xuICAgICAgfVxuICAgIH07XG4gIH1cblxuICBsZXQgaW5pdFJlbmRlcjpcbiAgICB8IHsgYXJnczogUGFyYW1ldGVyczxCb3VuZFJlbmRlcj47IHJlc29sdmU6ICgpID0+IHZvaWQgfVtdXG4gICAgfCB1bmRlZmluZWQgPSBbXTtcbiAgbGV0IHJlbmRlcjogQm91bmRSZW5kZXIgPSAoLi4uYXJncykgPT5cbiAgICBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICAgIGluaXRSZW5kZXI/LnB1c2goeyBhcmdzLCByZXNvbHZlIH0pO1xuICAgIH0pO1xuXG4gIGZ1bmN0aW9uIGltcG9ydFJlbmRlcihzdGF0czogd2VicGFjay5TdGF0c1tdKSB7XG4gICAgY29uc3QgW2NsaWVudFN0YXRzLCBzZXJ2ZXJTdGF0c10gPSBzdGF0cztcbiAgICBpZiAoXG4gICAgICBjbGllbnRTdGF0cz8uY29tcGlsYXRpb24/LmVycm9ycz8ubGVuZ3RoIHx8XG4gICAgICBzZXJ2ZXJTdGF0cz8uY29tcGlsYXRpb24/LmVycm9ycz8ubGVuZ3RoXG4gICAgKSB7XG4gICAgICBsb2cuZXJyb3IoJ0Vycm9ycyBmb3IgY2xpZW50IGJ1aWxkOiAnICsgY2xpZW50U3RhdHMuY29tcGlsYXRpb24uZXJyb3JzKTtcbiAgICAgIGxvZy5lcnJvcignRXJyb3JzIGZvciBzZXJ2ZXIgYnVpbGQ6ICcgKyBzZXJ2ZXJTdGF0cy5jb21waWxhdGlvbi5lcnJvcnMpO1xuICAgICAgLy8gZmlyc3QgdGltZSwgcmF0aGVyIHRoYW4gcmUtcmVuZGVyXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShpbml0UmVuZGVyKSkge1xuICAgICAgICBwcm9jZXNzLmV4aXQoLTEpO1xuICAgICAgfVxuICAgICAgbG9nLmVycm9yKCdBYm92ZSBjb21waWxlciBlcnJvcnMgYmxvY2tpbmcgcmVsb2FkJyk7XG4gICAgICByZXR1cm47XG4gICAgfSBlbHNlIHtcbiAgICAgIGxvZy5pbmZvKCdMYXVuY2hpbmcgU1NSJyk7XG4gICAgfVxuXG4gICAgLy8gQVNTRVRTXG4gICAgY29uc3QgY2xpZW50TWFuaWZlc3QgPSBjbGllbnRTdGF0cy50b0pzb24oKTtcblxuICAgIHNlcnZlckVudHJ5ID0gZ2V0U2VydmVyQnVuZGxlKHNlcnZlclN0YXRzKTtcbiAgICBzZXJ2ZXJGaWxlQ29udGVudHMgPSByZWFkRmlsZShzZXJ2ZXJFbnRyeSkudGhlbihidWYgPT4gYnVmLnRvU3RyaW5nKCkpO1xuICAgIC8vIHJlbG9hZCBtb2R1bGVzXG4gICAgT2JqZWN0LmtleXMoZnNSZXF1aXJlLmNhY2hlKS5mb3JFYWNoKGtleSA9PiB7XG4gICAgICBkZWxldGUgZnNSZXF1aXJlLmNhY2hlW2tleV07XG4gICAgfSk7XG4gICAgcmVuZGVyID0gKGZzUmVxdWlyZShzZXJ2ZXJFbnRyeSkgYXMgYW55KS5kZWZhdWx0LmJpbmQoXG4gICAgICB1bmRlZmluZWQsXG4gICAgICBjbGllbnRNYW5pZmVzdCxcbiAgICApO1xuICAgIC8vIFNFUlZFUiBTSURFIEVOVFJZUE9JTlRcbiAgICBpZiAoQXJyYXkuaXNBcnJheShpbml0UmVuZGVyKSkge1xuICAgICAgaW5pdFJlbmRlci5mb3JFYWNoKGFzeW5jIGluaXQgPT4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIGxvZy5pbmZvKCdSZXNvbHZpbmcgcXVldWVkIHJlcXVlc3RzJyk7XG4gICAgICAgICAgYXdhaXQgcmVuZGVyKC4uLmluaXQuYXJncyk7XG4gICAgICAgICAgaW5pdC5yZXNvbHZlKCk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICBsb2cuZXJyb3IoJ0Vycm9yIHdoZW4gYXR0ZW1wdGluZyB0byByZW5kZXIgcXVldWVkIHJlcXVlc3RzJyk7XG4gICAgICAgICAgbG9nLmVycm9yKGUpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICAgIGluaXRSZW5kZXIgPSB1bmRlZmluZWQ7XG4gICAgfVxuICB9XG5cbiAgY29uc3QgZGV2U2VydmVyID0gbmV3IFdlYnBhY2tEZXZTZXJ2ZXIoXG4gICAgLy8gd3JpdGUgdG8gbWVtb3J5IGZpbGVzeXN0ZW0gc28gd2UgY2FuIGltcG9ydFxuICAgIHtcbiAgICAgIC4uLndlYnBhY2tDb25maWdzWzBdLmRldlNlcnZlcixcbiAgICAgIGRldk1pZGRsZXdhcmU6IHtcbiAgICAgICAgLi4ud2VicGFja0NvbmZpZ3NbMF0/LmRldlNlcnZlcj8uZGV2TWlkZGxld2FyZSxcbiAgICAgICAgb3V0cHV0RmlsZVN5c3RlbToge1xuICAgICAgICAgIC4uLmZzLFxuICAgICAgICAgIGpvaW46IHBhdGguam9pbiBhcyBhbnksXG4gICAgICAgIH0gYXMgYW55LFxuICAgICAgfSxcbiAgICAgIHNldHVwTWlkZGxld2FyZXM6IChtaWRkbGV3YXJlcywgZGV2U2VydmVyKSA9PiB7XG4gICAgICAgIGlmICghZGV2U2VydmVyKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCd3ZWJwYWNrLWRldi1zZXJ2ZXIgaXMgbm90IGRlZmluZWQnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG90aGVyUm91dGVzID0gW1xuICAgICAgICAgIHByb2Nlc3MuZW52LldFQlBBQ0tfUFVCTElDX1BBVEgsXG4gICAgICAgICAgLi4uT2JqZWN0LmtleXMod2VicGFja0NvbmZpZ3NbMF0uZGV2U2VydmVyPy5wcm94eSA/PyB7fSksXG4gICAgICAgIF07XG4gICAgICAgIC8vIHNlcnZlIFNTUiBmb3Igbm9uLVdFQlBBQ0tfUFVCTElDX1BBVEhcbiAgICAgICAgZGV2U2VydmVyLmFwcD8uZ2V0KFxuICAgICAgICAgIG5ldyBSZWdFeHAoYF4oPyEke290aGVyUm91dGVzLmpvaW4oJ3wnKX0pYCksXG4gICAgICAgICAgaGFuZGxlRXJyb3JzKGFzeW5jIGZ1bmN0aW9uIChyZXE6IGFueSwgcmVzOiBhbnkpIHtcbiAgICAgICAgICAgIGlmIChyZXEudXJsLmVuZHNXaXRoKCdmYXZpY29uLmljbycpKSB7XG4gICAgICAgICAgICAgIHJlcy5zdGF0dXNDb2RlID0gNDA0O1xuICAgICAgICAgICAgICByZXMuc2V0SGVhZGVyKCdDb250ZW50LXR5cGUnLCAndGV4dC9odG1sJyk7XG4gICAgICAgICAgICAgIHJlcy5zZW5kKCdub3QgZm91bmQnKTtcbiAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmVzLnNvY2tldC5vbignZXJyb3InLCAoZXJyb3I6IHVua25vd24pID0+IHtcbiAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignRmF0YWwnLCBlcnJvcik7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgICAgYXdhaXQgcmVuZGVyKHJlcSwgcmVzKTtcbiAgICAgICAgICB9KSxcbiAgICAgICAgKTtcblxuICAgICAgICBpZiAod2VicGFja0NvbmZpZ3NbMF0uZGV2U2VydmVyPy5zZXR1cE1pZGRsZXdhcmVzKSB7XG4gICAgICAgICAgcmV0dXJuIHdlYnBhY2tDb25maWdzWzBdLmRldlNlcnZlci5zZXR1cE1pZGRsZXdhcmVzKFxuICAgICAgICAgICAgbWlkZGxld2FyZXMsXG4gICAgICAgICAgICBkZXZTZXJ2ZXIsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBtaWRkbGV3YXJlcztcbiAgICAgIH0sXG4gICAgfSxcbiAgICBjb21waWxlcixcbiAgKTtcbiAgY29uc3QgcnVuU2VydmVyID0gYXN5bmMgKCkgPT4ge1xuICAgIGF3YWl0IGRldlNlcnZlci5zdGFydCgpO1xuICAgIGRldlNlcnZlci5jb21waWxlci5ob29rcy5kb25lLnRhcChcbiAgICAgICdBbmFuc2kgU2VydmVyJyxcbiAgICAgIChtdWx0aVN0YXRzOiB3ZWJwYWNrLk11bHRpU3RhdHMgfCB3ZWJwYWNrLlN0YXRzKSA9PiB7XG4gICAgICAgIGlmICghbXVsdGlTdGF0cykge1xuICAgICAgICAgIGxvZy5lcnJvcignc3RhdHMgbm90IHNlbmQnKTtcbiAgICAgICAgICBwcm9jZXNzLmV4aXQoLTEpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFPYmplY3QuaGFzT3duKG11bHRpU3RhdHMsICdzdGF0cycpKSByZXR1cm47XG4gICAgICAgIGlmICgobXVsdGlTdGF0cyBhcyB3ZWJwYWNrLk11bHRpU3RhdHMpLnN0YXRzLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgaW1wb3J0UmVuZGVyKChtdWx0aVN0YXRzIGFzIHdlYnBhY2suTXVsdGlTdGF0cykuc3RhdHMpO1xuICAgICAgICAgIH0gY2F0Y2ggKGU6IGFueSkge1xuICAgICAgICAgICAgbG9nLmVycm9yKCdGYWlsZWQgdG8gbG9hZCBzZXJ2ZSBlbnRyeXBvaW50Jyk7XG4gICAgICAgICAgICBjb25zdCBmaW5kZXIgPSBuZXcgUmVnRXhwKGAke3NlcnZlckVudHJ5fTooW1xcXFxkXSspOihbXFxcXGRdKylgLCAnZycpO1xuICAgICAgICAgICAgc2VydmVyRmlsZUNvbnRlbnRzLnRoZW4oZmlsZVRleHQgPT4ge1xuICAgICAgICAgICAgICBjb25zdCB0ZXh0Um93cyA9IGZpbGVUZXh0LnNwbGl0KCdcXG4nKTtcbiAgICAgICAgICAgICAgbG9nLmVycm9yKCc+Pj4gU3RhY2sgQ29udGV4dCBbc2VydmUgZW50cnlwb2ludF0gPDw8Jyk7XG4gICAgICAgICAgICAgIGZvciAoY29uc3QgbWF0Y2ggb2YgZS5zdGFjay5tYXRjaEFsbChmaW5kZXIpID8/IFtdKSB7XG4gICAgICAgICAgICAgICAgY29uc3Qgcm93ID0gTnVtYmVyLnBhcnNlSW50KG1hdGNoWzFdKTtcbiAgICAgICAgICAgICAgICBjb25zdCBjb2wgPSBOdW1iZXIucGFyc2VJbnQobWF0Y2hbMl0pO1xuICAgICAgICAgICAgICAgIGxvZy5lcnJvcihwYXRoLmJhc2VuYW1lKHNlcnZlckVudHJ5KSArICcgJyArIHJvdyArICc6JyArIGNvbCk7XG4gICAgICAgICAgICAgICAgbG9nLmVycm9yKHRleHRSb3dzW3JvdyAtIDJdKTtcbiAgICAgICAgICAgICAgICBsb2cuZXJyb3IodGV4dFJvd3Nbcm93IC0gMV0pO1xuICAgICAgICAgICAgICAgIGxvZy5lcnJvcihBcnJheShjb2wpLmpvaW4oJyAnKSArICdeJyk7XG4gICAgICAgICAgICAgICAgbG9nLmVycm9yKHRleHRSb3dzW3Jvd10pO1xuICAgICAgICAgICAgICAgIGxvZy5lcnJvcih0ZXh0Um93c1tyb3cgKyAxXSk7XG4gICAgICAgICAgICAgICAgbG9nLmVycm9yKHRleHRSb3dzW3JvdyArIDJdKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBkaXNrRnMud3JpdGVGaWxlU3luYyhzZXJ2ZXJFbnRyeSwgZmlsZVRleHQpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICAgIHRocm93IGU7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGxvZy5lcnJvcignT25seSBjb21waWxlciBvbmUgc3RhdCcpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICk7XG4gIH07XG4gIGNvbnN0IHN0b3BTZXJ2ZXIgPSBhc3luYyAoKSA9PiB7XG4gICAgbG9nLmluZm8oJ1N0b3BwaW5nIHNlcnZlci4uLicpO1xuICAgIGF3YWl0IGRldlNlcnZlci5zdG9wKCk7XG4gICAgbG9nLmluZm8oJ1NlcnZlciBjbG9zZWQnKTtcbiAgfTtcblxuICBwcm9jZXNzLm9uKCdTSUdJTlQnLCAoKSA9PiB7XG4gICAgbG9nLndhcm4oJ1JlY2VpdmVkIFNJR0lOVCwgZGV2c2VydmVyIHNodXR0aW5nIGRvd24nKTtcbiAgICBzdG9wU2VydmVyKCk7XG4gICAgcHJvY2Vzcy5leGl0KC0xKTtcbiAgfSk7XG5cbiAgcnVuU2VydmVyKCk7XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBO0FBQ0FBLE1BQU0sQ0FBQ0MsTUFBTSxHQUNYRCxNQUFNLENBQUNDLE1BQU0sSUFDYiwwQkFBMkIsU0FBU0EsTUFBTUEsQ0FBQ0MsRUFBRSxFQUFFQyxHQUFHLEVBQUU7RUFDbEQsT0FBT0gsTUFBTSxDQUFDSSxTQUFTLENBQUNDLGNBQWMsQ0FBQ0MsSUFBSSxDQUFDSixFQUFFLEVBQUVDLEdBQUcsQ0FBQztBQUN0RCxDQUFDO0FBRUgsT0FBT0ksTUFBTSxNQUFNLElBQUk7QUFDdkIsU0FBU0MsZUFBZSxRQUFR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
@@ -1,4 +1,2 @@
1
- "use strict";
2
-
3
- exports.__esModule = true;
1
+ export {};
4
2
  //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NjcmlwdHMvdHlwZXMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVxdWVzdCwgUmVzcG9uc2UgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCB7IFNlcnZlclJlc3BvbnNlLCBJbmNvbWluZ01lc3NhZ2UgfSBmcm9tICdodHRwJztcbmltcG9ydCB7IFN0YXRzQ29tcGlsYXRpb24gfSBmcm9tICd3ZWJwYWNrJztcblxuZXhwb3J0IHR5cGUgUmVuZGVyID0gKFxuICBjbGllbnRNYW5pZmVzdDogU3RhdHNDb21waWxhdGlvbixcbiAgcmVxOiBSZXF1ZXN0IHwgSW5jb21pbmdNZXNzYWdlLFxuICByZXM6IFJlc3BvbnNlIHwgU2VydmVyUmVzcG9uc2UsXG4pID0+IFByb21pc2U8dm9pZD47XG5cbmV4cG9ydCB0eXBlIEJvdW5kUmVuZGVyID0gKFxuICByZXE6IFJlcXVlc3QgfCBJbmNvbWluZ01lc3NhZ2UsXG4gIHJlczogUmVzcG9uc2UgfCBTZXJ2ZXJSZXNwb25zZSxcbikgPT4gUHJvbWlzZTx2b2lkPjtcbiJdLCJtYXBwaW5ncyI6IiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentComponent.d.ts","sourceRoot":"","sources":["../../src/spouts/DocumentComponent.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGvC,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACtD,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,CAAC;AAEF,iBAAwB,QAAQ,CAAC,EAC/B,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,KAAK,EACL,MAAM,EACN,OAAO,EACP,QAAQ,EACR,KAAK,EACL,OAAO,EACP,UAAU,GACX,EAAE,KAAK,eA6CP;kBAxDuB,QAAQ;;;;;;;;eAAR,QAAQ"}
1
+ {"version":3,"file":"DocumentComponent.d.ts","sourceRoot":"","sources":["../../src/spouts/DocumentComponent.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGvC,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACtD,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,CAAC;AAEF,iBAAwB,QAAQ,CAAC,EAC/B,MAAM,EACN,IAAI,EACJ,QAAQ,EACR,KAAK,EACL,MAAM,EACN,OAAO,EACP,QAAQ,EACR,KAAK,EACL,OAAO,EACP,UAAU,GACX,EAAE,KAAK,eAyCP;kBApDuB,QAAQ;;;;;;;;eAAR,QAAQ"}
@@ -20,9 +20,7 @@ export default function Document({
20
20
  const policy = {
21
21
  ...csPolicy
22
22
  };
23
- if (nonce &&
24
- // nonces negate 'unsafe-inline' so do not add it in development to keep things easier
25
- process.env.NODE_ENV === 'production') {
23
+ if (nonce) {
26
24
  if (typeof policy['script-src'] === 'string') {
27
25
  policy['script-src'] = [policy['script-src'], `'nonce-${nonce}'`];
28
26
  } else {
@@ -63,4 +61,4 @@ Document.defaultProps = {
63
61
  rootId: 'anansi-root',
64
62
  scripts: null
65
63
  };
66
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZFBvbGljeSIsIkRvY3VtZW50IiwiYXNzZXRzIiwiaGVhZCIsImNoaWxkcmVuIiwidGl0bGUiLCJyb290SWQiLCJjaGFyU2V0IiwiY3NQb2xpY3kiLCJub25jZSIsInNjcmlwdHMiLCJleHRyYVN0eWxlIiwiY3NwTWV0YSIsInBvbGljeSIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsIl9qc3giLCJodHRwRXF1aXYiLCJjb250ZW50IiwibWFwIiwiYXNzZXQiLCJpIiwiUmVhY3QiLCJjcmVhdGVFbGVtZW50Iiwia2V5IiwicmVsIiwiaWQiLCJmaWx0ZXIiLCJocmVmIiwiZW5kc1dpdGgiLCJzcmMiLCJhc3luYyIsImRlZmF1bHRQcm9wcyIsIkZyYWdtZW50IiwibmFtZSIsIl9wcm9jZXNzJGVudiRXRUJQQUNLXyIsIldFQlBBQ0tfUFVCTElDX1BBVEgiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc3BvdXRzL0RvY3VtZW50Q29tcG9uZW50LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFBvbGljeSB9IGZyb20gJy4vY3NwLmpzJztcbmltcG9ydCB7IGJ1aWxkUG9saWN5IH0gZnJvbSAnLi9jc3AuanMnO1xuXG50eXBlIFByb3BzID0ge1xuICBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlO1xuICBhc3NldHM6IHsgaHJlZjogc3RyaW5nOyBhcz86IHN0cmluZzsgcmVsPzogc3RyaW5nIH1bXTtcbiAgaGVhZDogUmVhY3QuUmVhY3ROb2RlO1xuICBleHRyYVN0eWxlOiBSZWFjdC5SZWFjdE5vZGU7XG4gIHNjcmlwdHM6IFJlYWN0LlJlYWN0Tm9kZTtcbiAgdGl0bGU6IHN0cmluZztcbiAgcm9vdElkOiBzdHJpbmc7XG4gIGNoYXJTZXQ6IHN0cmluZztcbiAgY3NQb2xpY3k/OiBQb2xpY3k7XG4gIG5vbmNlPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRG9jdW1lbnQoe1xuICBhc3NldHMsXG4gIGhlYWQsXG4gIGNoaWxkcmVuLFxuICB0aXRsZSxcbiAgcm9vdElkLFxuICBjaGFyU2V0LFxuICBjc1BvbGljeSxcbiAgbm9uY2UsXG4gIHNjcmlwdHMsXG4gIGV4dHJhU3R5bGUsXG59OiBQcm9wcykge1xuICBsZXQgY3NwTWV0YTogbnVsbCB8IFJlYWN0LlJlYWN0Tm9kZSA9IG51bGw7XG4gIGlmIChjc1BvbGljeSkge1xuICAgIC8vIGFkZCBub25jZSB0byBwb2xpY3lcbiAgICBjb25zdCBwb2xpY3kgPSB7XG4gICAgICAuLi5jc1BvbGljeSxcbiAgICB9O1xuICAgIGlmIChcbiAgICAgIG5vbmNlICYmXG4gICAgICAvLyBub25jZXMgbmVnYXRlICd1bnNhZmUtaW5saW5lJyBzbyBkbyBub3QgYWRkIGl0IGluIGRldmVsb3BtZW50IHRvIGtlZXAgdGhpbmdzIGVhc2llclxuICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdwcm9kdWN0aW9uJ1xuICAgICkge1xuICAgICAgaWYgKHR5cGVvZiBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgcG9saWN5WydzY3JpcHQtc3JjJ10gPSBbcG9saWN5WydzY3JpcHQtc3JjJ10sIGAnbm9uY2UtJHtub25jZX0nYF07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9IFsuLi5wb2xpY3lbJ3NjcmlwdC1zcmMnXSwgYCdub25jZS0ke25vbmNlfSdgXTtcbiAgICAgIH1cbiAgICB9XG4gICAgY3NwTWV0YSA9IChcbiAgICAgIDxtZXRhIGh0dHBFcXVpdj1cIkNvbnRlbnQtU2VjdXJpdHktUG9saWN5XCIgY29udGVudD17YnVpbGRQb2xpY3kocG9saWN5KX0gLz5cbiAgICApO1xuICB9XG4gIHJldHVybiAoXG4gICAgPGh0bWw+XG4gICAgICA8aGVhZD5cbiAgICAgICAgPG1ldGEgY2hhclNldD17Y2hhclNldH0gLz5cbiAgICAgICAge2NzcE1ldGF9XG4gICAgICAgIHtoZWFkfVxuICAgICAgICB7ZXh0cmFTdHlsZX1cbiAgICAgICAge2Fzc2V0cy5tYXAoKGFzc2V0LCBpKSA9PiAoXG4gICAgICAgICAgPGxpbmsga2V5PXtpfSByZWw9XCJwcmVsb2FkXCIgey4uLmFzc2V0fSAvPlxuICAgICAgICApKX1cbiAgICAgICAgPHRpdGxlPnt0aXRsZX08L3RpdGxlPlxuICAgICAgPC9oZWFkPlxuICAgICAgPGJvZHk+XG4gICAgICAgIDxkaXYgaWQ9e3Jvb3RJZH0+e2NoaWxkcmVufTwvZGl2PlxuICAgICAgICB7c2NyaXB0c31cbiAgICAgICAge2Fzc2V0c1xuICAgICAgICAgIC5maWx0ZXIoKHsgaHJlZiB9KSA9PiBocmVmLmVuZHNXaXRoKCcuanMnKSlcbiAgICAgICAgICAubWFwKCh7IGhyZWYgfSwgaSkgPT4gKFxuICAgICAgICAgICAgPHNjcmlwdCBrZXk9e2l9IHNyYz17aHJlZn0gYXN5bmMgLz5cbiAgICAgICAgICApKX1cbiAgICAgIDwvYm9keT5cbiAgICA8L2h0bWw+XG4gICk7XG59XG5Eb2N1bWVudC5kZWZhdWx0UHJvcHMgPSB7XG4gIGhlYWQ6IChcbiAgICA8PlxuICAgICAgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCIgY29udGVudD1cIndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xXCIgLz5cbiAgICAgIDxsaW5rXG4gICAgICAgIHJlbD1cInNob3J0Y3V0IGljb25cIlxuICAgICAgICBocmVmPXtgJHtwcm9jZXNzLmVudi5XRUJQQUNLX1BVQkxJQ19QQVRIID8/ICcvJ31mYXZpY29uLmljb2B9XG4gICAgICAvPlxuICAgIDwvPlxuICApLFxuICBjaGFyU2V0OiAndXRmLTgnLFxuICByb290SWQ6ICdhbmFuc2ktcm9vdCcsXG4gIHNjcmlwdHM6IG51bGwsXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFDQSxTQUFTQSxXQUFXLFFBQVEsVUFBVTtBQWV0QyxlQUFlLFNBQVNDLFFBQVFBLENBQUM7RUFDL0JDLE1BQU07RUFDTkMsSUFBSTtF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
64
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZFBvbGljeSIsIkRvY3VtZW50IiwiYXNzZXRzIiwiaGVhZCIsImNoaWxkcmVuIiwidGl0bGUiLCJyb290SWQiLCJjaGFyU2V0IiwiY3NQb2xpY3kiLCJub25jZSIsInNjcmlwdHMiLCJleHRyYVN0eWxlIiwiY3NwTWV0YSIsInBvbGljeSIsIl9qc3giLCJodHRwRXF1aXYiLCJjb250ZW50IiwibWFwIiwiYXNzZXQiLCJpIiwiUmVhY3QiLCJjcmVhdGVFbGVtZW50Iiwia2V5IiwicmVsIiwiaWQiLCJmaWx0ZXIiLCJocmVmIiwiZW5kc1dpdGgiLCJzcmMiLCJhc3luYyIsImRlZmF1bHRQcm9wcyIsIkZyYWdtZW50IiwibmFtZSIsIl9wcm9jZXNzJGVudiRXRUJQQUNLXyIsInByb2Nlc3MiLCJlbnYiLCJXRUJQQUNLX1BVQkxJQ19QQVRIIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Nwb3V0cy9Eb2N1bWVudENvbXBvbmVudC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBQb2xpY3kgfSBmcm9tICcuL2NzcC5qcyc7XG5pbXBvcnQgeyBidWlsZFBvbGljeSB9IGZyb20gJy4vY3NwLmpzJztcblxudHlwZSBQcm9wcyA9IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgYXNzZXRzOiB7IGhyZWY6IHN0cmluZzsgYXM/OiBzdHJpbmc7IHJlbD86IHN0cmluZyB9W107XG4gIGhlYWQ6IFJlYWN0LlJlYWN0Tm9kZTtcbiAgZXh0cmFTdHlsZTogUmVhY3QuUmVhY3ROb2RlO1xuICBzY3JpcHRzOiBSZWFjdC5SZWFjdE5vZGU7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHJvb3RJZDogc3RyaW5nO1xuICBjaGFyU2V0OiBzdHJpbmc7XG4gIGNzUG9saWN5PzogUG9saWN5O1xuICBub25jZT86IHN0cmluZyB8IHVuZGVmaW5lZDtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIERvY3VtZW50KHtcbiAgYXNzZXRzLFxuICBoZWFkLFxuICBjaGlsZHJlbixcbiAgdGl0bGUsXG4gIHJvb3RJZCxcbiAgY2hhclNldCxcbiAgY3NQb2xpY3ksXG4gIG5vbmNlLFxuICBzY3JpcHRzLFxuICBleHRyYVN0eWxlLFxufTogUHJvcHMpIHtcbiAgbGV0IGNzcE1ldGE6IG51bGwgfCBSZWFjdC5SZWFjdE5vZGUgPSBudWxsO1xuICBpZiAoY3NQb2xpY3kpIHtcbiAgICAvLyBhZGQgbm9uY2UgdG8gcG9saWN5XG4gICAgY29uc3QgcG9saWN5ID0ge1xuICAgICAgLi4uY3NQb2xpY3ksXG4gICAgfTtcbiAgICBpZiAobm9uY2UpIHtcbiAgICAgIGlmICh0eXBlb2YgcG9saWN5WydzY3JpcHQtc3JjJ10gPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIHBvbGljeVsnc2NyaXB0LXNyYyddID0gW3BvbGljeVsnc2NyaXB0LXNyYyddLCBgJ25vbmNlLSR7bm9uY2V9J2BdO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcG9saWN5WydzY3JpcHQtc3JjJ10gPSBbLi4ucG9saWN5WydzY3JpcHQtc3JjJ10sIGAnbm9uY2UtJHtub25jZX0nYF07XG4gICAgICB9XG4gICAgfVxuICAgIGNzcE1ldGEgPSAoXG4gICAgICA8bWV0YSBodHRwRXF1aXY9XCJDb250ZW50LVNlY3VyaXR5LVBvbGljeVwiIGNvbnRlbnQ9e2J1aWxkUG9saWN5KHBvbGljeSl9IC8+XG4gICAgKTtcbiAgfVxuICByZXR1cm4gKFxuICAgIDxodG1sPlxuICAgICAgPGhlYWQ+XG4gICAgICAgIDxtZXRhIGNoYXJTZXQ9e2NoYXJTZXR9IC8+XG4gICAgICAgIHtjc3BNZXRhfVxuICAgICAgICB7aGVhZH1cbiAgICAgICAge2V4dHJhU3R5bGV9XG4gICAgICAgIHthc3NldHMubWFwKChhc3NldCwgaSkgPT4gKFxuICAgICAgICAgIDxsaW5rIGtleT17aX0gcmVsPVwicHJlbG9hZFwiIHsuLi5hc3NldH0gLz5cbiAgICAgICAgKSl9XG4gICAgICAgIDx0aXRsZT57dGl0bGV9PC90aXRsZT5cbiAgICAgIDwvaGVhZD5cbiAgICAgIDxib2R5PlxuICAgICAgICA8ZGl2IGlkPXtyb290SWR9PntjaGlsZHJlbn08L2Rpdj5cbiAgICAgICAge3NjcmlwdHN9XG4gICAgICAgIHthc3NldHNcbiAgICAgICAgICAuZmlsdGVyKCh7IGhyZWYgfSkgPT4gaHJlZi5lbmRzV2l0aCgnLmpzJykpXG4gICAgICAgICAgLm1hcCgoeyBocmVmIH0sIGkpID0+IChcbiAgICAgICAgICAgIDxzY3JpcHQga2V5PXtpfSBzcmM9e2hyZWZ9IGFzeW5jIC8+XG4gICAgICAgICAgKSl9XG4gICAgICA8L2JvZHk+XG4gICAgPC9odG1sPlxuICApO1xufVxuRG9jdW1lbnQuZGVmYXVsdFByb3BzID0ge1xuICBoZWFkOiAoXG4gICAgPD5cbiAgICAgIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MVwiIC8+XG4gICAgICA8bGlua1xuICAgICAgICByZWw9XCJzaG9ydGN1dCBpY29uXCJcbiAgICAgICAgaHJlZj17YCR7cHJvY2Vzcy5lbnYuV0VCUEFDS19QVUJMSUNfUEFUSCA/PyAnLyd9ZmF2aWNvbi5pY29gfVxuICAgICAgLz5cbiAgICA8Lz5cbiAgKSxcbiAgY2hhclNldDogJ3V0Zi04JyxcbiAgcm9vdElkOiAnYW5hbnNpLXJvb3QnLFxuICBzY3JpcHRzOiBudWxsLFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsU0FBU0EsV0FBVyxRQUFRLFVBQVU7QUFldEMsZUFBZSxTQUFTQyxRQUFRQSxDQUFDO0VBQy9CQyxNQUFNO0VBQ05DLElBQUk7RUFDSkMsUUFBUTtFQUNSQyxLQUFLO0VBQ0xDLE1BQU07RUFDTkMsT0FBTztFQUNQQyxRQUFRO0VBQ1JDLEtBQUs7RUFDTEMsT0FBTztFQUNQQztBQUNLLENBQUMsRUFBRTtFQUNSLElBQUlDLE9BQStCLEdBQUcsSUFBSTtFQUMxQyxJQUFJSixRQUFRLEVBQUU7SUFDWjtJQUNBLE1BQU1LLE1BQU0sR0FBRztNQUNiLEdBQUdMO0lBQ0wsQ0FBQztJQUNELElBQUlDLEtBQUssRUFBRTtNQUNULElBQUksT0FBT0ksTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFLLFFBQVEsRUFBRTtRQUM1Q0EsTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUNBLE1BQU0sQ0FBQyxZQUFZLENBQUMsRUFBRyxVQUFTSixLQUFNLEdBQUUsQ0FBQztNQUNuRSxDQUFDLE1BQU07UUFDTEksTUFBTSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsR0FBR0EsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFHLFVBQVNKLEtBQU0sR0FBRSxDQUFDO01BQ3RFO0lBQ0Y7SUFDQUcsT0FBTyxnQkFDTEUsSUFBQTtNQUFNQyxTQUFTLEVBQUMseUJBQXlCO01BQUNDLE9BQU8sRUFBRWhCLFdBQVcsQ0FBQ2EsTUFBTTtJQUFFLEVBQ3hFO0VBQ0g7RUFDQSxvQkFDRUMsSUFBQSxrQ0FDRUEsSUFBQSxrQ0FDRUEsSUFBQTtJQUFNUCxPQUFPLEVBQUVBO0VBQVEsRUFBRyxFQUN6QkssT0FBTyxFQUNQVCxJQUFJLEVBQ0pRLFVBQVUsRUFDVlQsTUFBTSxDQUFDZSxHQUFHLENBQUMsQ0FBQ0MsS0FBSyxFQUFFQyxDQUFDLGtCQUNuQkMsS0FBQSxDQUFBQyxhQUFBO0lBQU1DLEdBQUcsRUFBRUgsQ0FBRTtJQUFDSSxHQUFHLEVBQUMsU0FBUztJQUFBLEdBQUtMO0VBQUssRUFDdEMsQ0FBQyxlQUNGSixJQUFBLHNCQUFRVCxLQUFLLENBQVMsQ0FDakIsZUFDUFMsSUFBQSxrQ0FDRUEsSUFBQTtJQUFLVSxFQUFFLEVBQUVsQjtFQUFPLFdBQUVGLFFBQVEsQ0FBTyxFQUNoQ00sT0FBTyxFQUNQUixNQUFNLENBQ0p1QixNQUFNLENBQUMsQ0FBQztJQUFFQztFQUFLLENBQUMsS0FBS0EsSUFBSSxDQUFDQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDMUNWLEdBQUcsQ0FBQyxDQUFDO0lBQUVTO0VBQUssQ0FBQyxFQUFFUCxDQUFDLGtCQUNmTCxJQUFBO0lBQWdCYyxHQUFHLEVBQUVGLElBQUs7SUFBQ0csS0FBSztFQUFBLEdBQW5CVixDQUFDLENBQ2YsQ0FBQyxDQUNDLENBQ0Y7QUFFWDtBQUNBbEIsUUFBUSxDQUFDNkIsWUFBWSxHQUFHO0VBQ3RCM0IsSUFBSSxlQUNGaUIsS0FBQSxDQUFBQyxhQUFBLENBQUFELEtBQUEsQ0FBQVcsUUFBQSxxQkFDRWpCLElBQUE7SUFBTWtCLElBQUksRUFBQyxVQUFVO0lBQUNoQixPQUFPLEVBQUM7RUFBcUMsRUFBRyxlQUN0RUYsSUFBQTtJQUNFUyxHQUFHLEVBQUMsZUFBZTtJQUNuQkcsSUFBSSxFQUFHLElBQUFPLHFCQUFBLEdBQUVDLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDQyxtQkFBbUIsWUFBQUgscUJBQUEsR0FBSSxHQUFJO0VBQWEsRUFDN0QsQ0FFTDtFQUNEMUIsT0FBTyxFQUFFLE9BQU87RUFDaEJELE1BQU0sRUFBRSxhQUFhO0VBQ3JCSSxPQUFPLEVBQUU7QUFDWCxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"document.server.d.ts","sourceRoot":"","sources":["../../src/spouts/document.server.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,KAAK,UAAU,GAAG;IAChB,aAAa,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;CAChC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,OAAO,EAAE;IAC7C,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CAsE5E"}
1
+ {"version":3,"file":"document.server.d.ts","sourceRoot":"","sources":["../../src/spouts/document.server.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,KAAK,UAAU,GAAG;IAChB,aAAa,EAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;CAChC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,OAAO,EAAE;IAC7C,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CA6E5E"}
@@ -2,7 +2,7 @@ import React from 'react';
2
2
  import Document from './DocumentComponent.js';
3
3
  export default function DocumentSpout(options) {
4
4
  return next => async props => {
5
- var _props$clientManifest, _props$clientManifest2, _props$clientManifest3, _props$clientManifest4, _props$clientManifest5, _nextProps$title;
5
+ var _props$clientManifest, _props$clientManifest2, _props$clientManifest3, _props$clientManifest4, _props$clientManifest5, _props$req, _nextProps$title;
6
6
  const nextProps = await next(props);
7
7
  const publicPath = props.clientManifest.publicPath;
8
8
  if (Object.keys((_props$clientManifest = (_props$clientManifest2 = props.clientManifest) == null ? void 0 : _props$clientManifest2.entrypoints) != null ? _props$clientManifest : {}).length < 1 || publicPath === undefined) throw new Error('Manifest missing entries needed');
@@ -36,6 +36,9 @@ export default function DocumentSpout(options) {
36
36
  } : {
37
37
  href: asset
38
38
  });
39
+ const nonce =
40
+ // nonces negate 'unsafe-inline' so do not add it in development to keep things easier
41
+ props.nonce && (process.env.NODE_ENV === 'production' || ((_props$req = props.req) == null ? void 0 : _props$req.protocol) !== 'http') ? props.nonce : undefined;
39
42
  return {
40
43
  ...nextProps,
41
44
  app: /*#__PURE__*/React.createElement(Document, {
@@ -44,7 +47,7 @@ export default function DocumentSpout(options) {
44
47
  title: (_nextProps$title = nextProps.title) != null ? _nextProps$title : options.title,
45
48
  assets: assets,
46
49
  rootId: options.rootId,
47
- nonce: props.nonce,
50
+ nonce: nonce,
48
51
  csPolicy: options.csPolicy,
49
52
  scripts: nextProps.scripts
50
53
  }, nextProps.app)
@@ -57,4 +60,4 @@ function childrenAssets(chunk) {
57
60
  return (_c$assets = c.assets) != null ? _c$assets : [];
58
61
  })) : [];
59
62
  }
60
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkRvY3VtZW50IiwiRG9jdW1lbnRTcG91dCIsIm9wdGlvbnMiLCJuZXh0IiwicHJvcHMiLCJfcHJvcHMkY2xpZW50TWFuaWZlc3QiLCJfcHJvcHMkY2xpZW50TWFuaWZlc3QyIiwiX3Byb3BzJGNsaWVudE1hbmlmZXN0MyIsIl9wcm9wcyRjbGllbnRNYW5pZmVzdDQiLCJfcHJvcHMkY2xpZW50TWFuaWZlc3Q1IiwiX25leHRQcm9wcyR0aXRsZSIsIm5leHRQcm9wcyIsInB1YmxpY1BhdGgiLCJjbGllbnRNYW5pZmVzdCIsIk9iamVjdCIsImtleXMiLCJlbnRyeXBvaW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsIkVycm9yIiwiYXNzZXRNYXAiLCJhc3NldHMiLCJtYXAiLCJuYW1lIiwiYXNzZXRMaXN0IiwidmFsdWVzIiwiZm9yRWFjaCIsImVudHJ5cG9pbnQiLCJfZW50cnlwb2ludCRhc3NldHMiLCJwdXNoIiwiU2V0IiwibmFtZWRDaHVua0dyb3VwcyIsImZpbHRlciIsIm1hdGNoZWRSb3V0ZXMiLCJzb21lIiwicm91dGUiLCJpbmNsdWRlcyIsImZsYXRNYXAiLCJjaHVuayIsIl9jaHVuayRhc3NldHMiLCJjaGlsZHJlbkFzc2V0cyIsImFzc2V0IiwiZW5kc1dpdGgiLCJocmVmIiwicmVsIiwiYXMiLCJhcHAiLCJjcmVhdGVFbGVtZW50IiwiZXh0cmFTdHlsZSIsInRpdGxlIiwicm9vdElkIiwibm9uY2UiLCJjc1BvbGljeSIsInNjcmlwdHMiLCJjaGlsZHJlbiIsInByZWxvYWQiLCJjIiwiX2MkYXNzZXRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Nwb3V0cy9kb2N1bWVudC5zZXJ2ZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUm91dGUgfSBmcm9tICdAYW5hbnNpL3JvdXRlcic7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgU3RhdHNDaHVua0dyb3VwIH0gZnJvbSAnd2VicGFjayc7XG5cbmltcG9ydCB0eXBlIHsgUG9saWN5IH0gZnJvbSAnLi9jc3AuanMnO1xuaW1wb3J0IERvY3VtZW50IGZyb20gJy4vRG9jdW1lbnRDb21wb25lbnQuanMnO1xuaW1wb3J0IHR5cGUgeyBTZXJ2ZXJTcG91dCB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG50eXBlIE5lZWRlZE5leHQgPSB7XG4gIG1hdGNoZWRSb3V0ZXM6IFJvdXRlPGFueT5bXTtcbiAgdGl0bGU/OiBzdHJpbmc7XG4gIHNjcmlwdHM/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbiAgZXh0cmFTdHlsZT86IFJlYWN0LlJlYWN0Tm9kZVtdO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRG9jdW1lbnRTcG91dChvcHRpb25zOiB7XG4gIGhlYWQ/OiBSZWFjdC5SZWFjdE5vZGU7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHJvb3RJZD86IHN0cmluZztcbiAgY2hhclNldD86IHN0cmluZztcbiAgY3NQb2xpY3k/OiBQb2xpY3k7XG59KTogU2VydmVyU3BvdXQ8UmVjb3JkPHN0cmluZywgdW5rbm93bj4sIFJlY29yZDxzdHJpbmcsIHVua25vd24+LCBOZWVkZWROZXh0PiB7XG4gIHJldHVybiBuZXh0ID0+IGFzeW5jIHByb3BzID0+IHtcbiAgICBjb25zdCBuZXh0UHJvcHMgPSBhd2FpdCBuZXh0KHByb3BzKTtcblxuICAgIGNvbnN0IHB1YmxpY1BhdGggPSBwcm9wcy5jbGllbnRNYW5pZmVzdC5wdWJsaWNQYXRoO1xuXG4gICAgaWYgKFxuICAgICAgT2JqZWN0LmtleXMocHJvcHMuY2xpZW50TWFuaWZlc3Q/LmVudHJ5cG9pbnRzID8/IHt9KS5sZW5ndGggPCAxIHx8XG4gICAgICBwdWJsaWNQYXRoID09PSB1bmRlZmluZWRcbiAgICApXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01hbmlmZXN0IG1pc3NpbmcgZW50cmllcyBuZWVkZWQnKTtcblxuICAgIC8vIFRPRE86IGNvbnNpZGVyIHVzaW5nIHRoaXMgcGFja2FnZSBmb3IgYnVpbGQgc3RhdHMgaW4gZnV0dXJlOlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC90cmVlL21haW4vcGFja2FnZXMvcmVhY3Qtc2VydmVyLWRvbS13ZWJwYWNrXG4gICAgY29uc3QgYXNzZXRNYXAgPSAoYXNzZXRzOiB7IG5hbWU6IHN0cmluZzsgc2l6ZT86IG51bWJlciB9W10pID0+XG4gICAgICBhc3NldHMubWFwKCh7IG5hbWUgfSkgPT4gYCR7cHVibGljUGF0aH0ke25hbWV9YCk7XG5cbiAgICBjb25zdCBhc3NldExpc3Q6IHN0cmluZ1tdID0gW107XG4gICAgT2JqZWN0LnZhbHVlcyhwcm9wcy5jbGllbnRNYW5pZmVzdD8uZW50cnlwb2ludHMgPz8ge30pLmZvckVhY2goXG4gICAgICBlbnRyeXBvaW50ID0+IHtcbiAgICAgICAgYXNzZXRMaXN0LnB1c2goLi4uYXNzZXRNYXAoZW50cnlwb2ludC5hc3NldHMgPz8gW10pKTtcbiAgICAgIH0sXG4gICAgKTtcbiAgICBuZXcgU2V0KFxuICAgICAgYXNzZXRNYXAoXG4gICAgICAgIE9iamVjdC52YWx1ZXMocHJvcHMuY2xpZW50TWFuaWZlc3QubmFtZWRDaHVua0dyb3VwcyA/PyB7fSlcbiAgICAgICAgICAuZmlsdGVyKCh7IG5hbWUgfSkgPT5cbiAgICAgICAgICAgIG5leHRQcm9wcy5tYXRjaGVkUm91dGVzLnNvbWUocm91dGUgPT4gbmFtZT8uaW5jbHVkZXMocm91dGUubmFtZSkpLFxuICAgICAgICAgIClcbiAgICAgICAgICAuZmxhdE1hcChjaHVuayA9PiBbXG4gICAgICAgICAgICAuLi4oY2h1bmsuYXNzZXRzID8/IFtdKSxcbiAgICAgICAgICAgIC8vIGFueSBjaHVuayBwcmVsb2Fkc1xuICAgICAgICAgICAgLi4uY2hpbGRyZW5Bc3NldHMoY2h1bmspLFxuICAgICAgICAgIF0pLFxuICAgICAgKSxcbiAgICApLmZvckVhY2goYXNzZXQgPT4gYXNzZXRMaXN0LnB1c2goYXNzZXQpKTtcblxuICAgIC8vIGZpbmQgYWRkaXRpb25hbCBhc3NldHMgdG8gcHJlbG9hZCBiYXNlZCBvbiBtYXRjaGVkIHJvdXRlXG4gICAgY29uc3QgYXNzZXRzOiB7XG4gICAgICBocmVmOiBzdHJpbmc7XG4gICAgICBhcz86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAgIHJlbD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICB9W10gPSBhc3NldExpc3RcbiAgICAgIC5maWx0ZXIoYXNzZXQgPT4gIWFzc2V0LmVuZHNXaXRoKCcuaG90LXVwZGF0ZS5qcycpKVxuICAgICAgLm1hcChhc3NldCA9PlxuICAgICAgICBhc3NldC5lbmRzV2l0aCgnLmNzcycpXG4gICAgICAgICAgPyB7IGhyZWY6IGFzc2V0LCByZWw6ICdzdHlsZXNoZWV0JyB9XG4gICAgICAgICAgOiBhc3NldC5lbmRzV2l0aCgnLmpzJylcbiAgICAgICAgICA/IHsgaHJlZjogYXNzZXQsIGFzOiAnc2NyaXB0JyB9XG4gICAgICAgICAgOiB7IGhyZWY6IGFzc2V0IH0sXG4gICAgICApO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5leHRQcm9wcyxcbiAgICAgIGFwcDogKFxuICAgICAgICA8RG9jdW1lbnRcbiAgICAgICAgICB7Li4ub3B0aW9uc31cbiAgICAgICAgICBleHRyYVN0eWxlPXtuZXh0UHJvcHMuZXh0cmFTdHlsZX1cbiAgICAgICAgICB0aXRsZT17bmV4dFByb3BzLnRpdGxlID8/IG9wdGlvbnMudGl0bGV9XG4gICAgICAgICAgYXNzZXRzPXthc3NldHN9XG4gICAgICAgICAgcm9vdElkPXtvcHRpb25zLnJvb3RJZH1cbiAgICAgICAgICBub25jZT17cHJvcHMubm9uY2V9XG4gICAgICAgICAgY3NQb2xpY3k9e29wdGlvbnMuY3NQb2xpY3l9XG4gICAgICAgICAgc2NyaXB0cz17bmV4dFByb3BzLnNjcmlwdHN9XG4gICAgICAgID5cbiAgICAgICAgICB7bmV4dFByb3BzLmFwcH1cbiAgICAgICAgPC9Eb2N1bWVudD5cbiAgICAgICksXG4gICAgfTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gY2hpbGRyZW5Bc3NldHMoY2h1bms6IFN0YXRzQ2h1bmtHcm91cCkge1xuICByZXR1cm4gY2h1bmsuY2hpbGRyZW5cbiAgICA/IE9iamVjdC52YWx1ZXMoY2h1bmsuY2hpbGRyZW4pLmZsYXRNYXAocHJlbG9hZCA9PlxuICAgICAgICBwcmVsb2FkLmZsYXRNYXAoYyA9PiBjLmFzc2V0cyA/PyBbXSksXG4gICAgICApXG4gICAgOiBbXTtcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBT0EsS0FBSyxNQUFNLE9BQU87QUFJekIsT0FBT0MsUUFBUSxNQUFNLHdCQUF3QjtBQVU3QyxlQUFlLFNBQVNDLGFBQWFBLENBQUNDLE9BTXJDLEVBQTZFO0VBQzVFLE9BQU9DLElBQUksSUFBSSxNQUFNQyxLQUFLLElBQUk7SUFBQSxJQUFBQyxxQkFBQSxFQUFBQyxzQkFBQSxFQUFBQyxzQkFBQSxFQUFBQyxzQkFBQSxFQUFBQyxzQkFBQSxFQUFBQyxnQkFBQTtJQUM1QixNQUFNQyxTQUFTLEdBQUcsTUFBTVIsSUFBSSxDQUFDQyxLQUFLLENBQUM7SUFFbkMsTUFBTVEsVUFBVSxHQUFHUixLQUFLLENBQUNTLGNBQWMsQ0FBQ0QsVUFBVTtJQUVsRCxJQUNFRSxNQUFNLENBQUNDLElBQUksRUFBQVYscUJBQUEsSUFBQUMsc0JBQUEsR0FBQ0YsS0FBSyxDQUFDUyxjQUFjLHFCQUFwQlAsc0JBQUEsQ0FBc0JVLFdBQVcsWUFBQVgscUJBQUEsR0FBSSxDQUFDLENBQUMsQ0FBQyxDQUFDWSxNQUFNLEdBQUcsQ0FBQyxJQUMvREwsVUFBVSxLQUFLTSxTQUFTLEVBRXhCLE1BQU0sSUFBSUMsS0FBSyxDQUFDLGlDQUFpQyxDQUFDOztJQUVwRDtJQUNBO0lBQ0EsTUFBTUMsUUFBUSxHQUFJQyxNQUF5QyxJQUN6REEsTUFBTSxDQUFDQyxHQUFHLENBQUMsQ0FBQztNQUFFQztJQUFLLENBQUMsS0FBTSxHQUFFWCxVQUFXLEdBQUVXLElBQUssRUFBQyxDQUFDO0lBRWxELE1BQU1DLFNBQW1CLEdBQUcsRUFB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
63
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkRvY3VtZW50IiwiRG9jdW1lbnRTcG91dCIsIm9wdGlvbnMiLCJuZXh0IiwicHJvcHMiLCJfcHJvcHMkY2xpZW50TWFuaWZlc3QiLCJfcHJvcHMkY2xpZW50TWFuaWZlc3QyIiwiX3Byb3BzJGNsaWVudE1hbmlmZXN0MyIsIl9wcm9wcyRjbGllbnRNYW5pZmVzdDQiLCJfcHJvcHMkY2xpZW50TWFuaWZlc3Q1IiwiX3Byb3BzJHJlcSIsIl9uZXh0UHJvcHMkdGl0bGUiLCJuZXh0UHJvcHMiLCJwdWJsaWNQYXRoIiwiY2xpZW50TWFuaWZlc3QiLCJPYmplY3QiLCJrZXlzIiwiZW50cnlwb2ludHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJFcnJvciIsImFzc2V0TWFwIiwiYXNzZXRzIiwibWFwIiwibmFtZSIsImFzc2V0TGlzdCIsInZhbHVlcyIsImZvckVhY2giLCJlbnRyeXBvaW50IiwiX2VudHJ5cG9pbnQkYXNzZXRzIiwicHVzaCIsIlNldCIsIm5hbWVkQ2h1bmtHcm91cHMiLCJmaWx0ZXIiLCJtYXRjaGVkUm91dGVzIiwic29tZSIsInJvdXRlIiwiaW5jbHVkZXMiLCJmbGF0TWFwIiwiY2h1bmsiLCJfY2h1bmskYXNzZXRzIiwiY2hpbGRyZW5Bc3NldHMiLCJhc3NldCIsImVuZHNXaXRoIiwiaHJlZiIsInJlbCIsImFzIiwibm9uY2UiLCJwcm9jZXNzIiwiZW52IiwiTk9ERV9FTlYiLCJyZXEiLCJwcm90b2NvbCIsImFwcCIsImNyZWF0ZUVsZW1lbnQiLCJleHRyYVN0eWxlIiwidGl0bGUiLCJyb290SWQiLCJjc1BvbGljeSIsInNjcmlwdHMiLCJjaGlsZHJlbiIsInByZWxvYWQiLCJjIiwiX2MkYXNzZXRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Nwb3V0cy9kb2N1bWVudC5zZXJ2ZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgUm91dGUgfSBmcm9tICdAYW5hbnNpL3JvdXRlcic7XG5pbXBvcnQgeyBSZXF1ZXN0IH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgU3RhdHNDaHVua0dyb3VwIH0gZnJvbSAnd2VicGFjayc7XG5cbmltcG9ydCB0eXBlIHsgUG9saWN5IH0gZnJvbSAnLi9jc3AuanMnO1xuaW1wb3J0IERvY3VtZW50IGZyb20gJy4vRG9jdW1lbnRDb21wb25lbnQuanMnO1xuaW1wb3J0IHR5cGUgeyBTZXJ2ZXJTcG91dCB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG50eXBlIE5lZWRlZE5leHQgPSB7XG4gIG1hdGNoZWRSb3V0ZXM6IFJvdXRlPGFueT5bXTtcbiAgdGl0bGU/OiBzdHJpbmc7XG4gIHNjcmlwdHM/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbiAgZXh0cmFTdHlsZT86IFJlYWN0LlJlYWN0Tm9kZVtdO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRG9jdW1lbnRTcG91dChvcHRpb25zOiB7XG4gIGhlYWQ/OiBSZWFjdC5SZWFjdE5vZGU7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHJvb3RJZD86IHN0cmluZztcbiAgY2hhclNldD86IHN0cmluZztcbiAgY3NQb2xpY3k/OiBQb2xpY3k7XG59KTogU2VydmVyU3BvdXQ8UmVjb3JkPHN0cmluZywgdW5rbm93bj4sIFJlY29yZDxzdHJpbmcsIHVua25vd24+LCBOZWVkZWROZXh0PiB7XG4gIHJldHVybiBuZXh0ID0+IGFzeW5jIHByb3BzID0+IHtcbiAgICBjb25zdCBuZXh0UHJvcHMgPSBhd2FpdCBuZXh0KHByb3BzKTtcblxuICAgIGNvbnN0IHB1YmxpY1BhdGggPSBwcm9wcy5jbGllbnRNYW5pZmVzdC5wdWJsaWNQYXRoO1xuXG4gICAgaWYgKFxuICAgICAgT2JqZWN0LmtleXMocHJvcHMuY2xpZW50TWFuaWZlc3Q/LmVudHJ5cG9pbnRzID8/IHt9KS5sZW5ndGggPCAxIHx8XG4gICAgICBwdWJsaWNQYXRoID09PSB1bmRlZmluZWRcbiAgICApXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01hbmlmZXN0IG1pc3NpbmcgZW50cmllcyBuZWVkZWQnKTtcblxuICAgIC8vIFRPRE86IGNvbnNpZGVyIHVzaW5nIHRoaXMgcGFja2FnZSBmb3IgYnVpbGQgc3RhdHMgaW4gZnV0dXJlOlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC90cmVlL21haW4vcGFja2FnZXMvcmVhY3Qtc2VydmVyLWRvbS13ZWJwYWNrXG4gICAgY29uc3QgYXNzZXRNYXAgPSAoYXNzZXRzOiB7IG5hbWU6IHN0cmluZzsgc2l6ZT86IG51bWJlciB9W10pID0+XG4gICAgICBhc3NldHMubWFwKCh7IG5hbWUgfSkgPT4gYCR7cHVibGljUGF0aH0ke25hbWV9YCk7XG5cbiAgICBjb25zdCBhc3NldExpc3Q6IHN0cmluZ1tdID0gW107XG4gICAgT2JqZWN0LnZhbHVlcyhwcm9wcy5jbGllbnRNYW5pZmVzdD8uZW50cnlwb2ludHMgPz8ge30pLmZvckVhY2goXG4gICAgICBlbnRyeXBvaW50ID0+IHtcbiAgICAgICAgYXNzZXRMaXN0LnB1c2goLi4uYXNzZXRNYXAoZW50cnlwb2ludC5hc3NldHMgPz8gW10pKTtcbiAgICAgIH0sXG4gICAgKTtcbiAgICBuZXcgU2V0KFxuICAgICAgYXNzZXRNYXAoXG4gICAgICAgIE9iamVjdC52YWx1ZXMocHJvcHMuY2xpZW50TWFuaWZlc3QubmFtZWRDaHVua0dyb3VwcyA/PyB7fSlcbiAgICAgICAgICAuZmlsdGVyKCh7IG5hbWUgfSkgPT5cbiAgICAgICAgICAgIG5leHRQcm9wcy5tYXRjaGVkUm91dGVzLnNvbWUocm91dGUgPT4gbmFtZT8uaW5jbHVkZXMocm91dGUubmFtZSkpLFxuICAgICAgICAgIClcbiAgICAgICAgICAuZmxhdE1hcChjaHVuayA9PiBbXG4gICAgICAgICAgICAuLi4oY2h1bmsuYXNzZXRzID8/IFtdKSxcbiAgICAgICAgICAgIC8vIGFueSBjaHVuayBwcmVsb2Fkc1xuICAgICAgICAgICAgLi4uY2hpbGRyZW5Bc3NldHMoY2h1bmspLFxuICAgICAgICAgIF0pLFxuICAgICAgKSxcbiAgICApLmZvckVhY2goYXNzZXQgPT4gYXNzZXRMaXN0LnB1c2goYXNzZXQpKTtcblxuICAgIC8vIGZpbmQgYWRkaXRpb25hbCBhc3NldHMgdG8gcHJlbG9hZCBiYXNlZCBvbiBtYXRjaGVkIHJvdXRlXG4gICAgY29uc3QgYXNzZXRzOiB7XG4gICAgICBocmVmOiBzdHJpbmc7XG4gICAgICBhcz86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAgIHJlbD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICB9W10gPSBhc3NldExpc3RcbiAgICAgIC5maWx0ZXIoYXNzZXQgPT4gIWFzc2V0LmVuZHNXaXRoKCcuaG90LXVwZGF0ZS5qcycpKVxuICAgICAgLm1hcChhc3NldCA9PlxuICAgICAgICBhc3NldC5lbmRzV2l0aCgnLmNzcycpXG4gICAgICAgICAgPyB7IGhyZWY6IGFzc2V0LCByZWw6ICdzdHlsZXNoZWV0JyB9XG4gICAgICAgICAgOiBhc3NldC5lbmRzV2l0aCgnLmpzJylcbiAgICAgICAgICA/IHsgaHJlZjogYXNzZXQsIGFzOiAnc2NyaXB0JyB9XG4gICAgICAgICAgOiB7IGhyZWY6IGFzc2V0IH0sXG4gICAgICApO1xuICAgIGNvbnN0IG5vbmNlID1cbiAgICAgIC8vIG5vbmNlcyBuZWdhdGUgJ3Vuc2FmZS1pbmxpbmUnIHNvIGRvIG5vdCBhZGQgaXQgaW4gZGV2ZWxvcG1lbnQgdG8ga2VlcCB0aGluZ3MgZWFzaWVyXG4gICAgICBwcm9wcy5ub25jZSAmJlxuICAgICAgKHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbicgfHxcbiAgICAgICAgKHByb3BzLnJlcSBhcyBSZXF1ZXN0KT8ucHJvdG9jb2wgIT09ICdodHRwJylcbiAgICAgICAgPyBwcm9wcy5ub25jZVxuICAgICAgICA6IHVuZGVmaW5lZDtcblxuICAgIHJldHVybiB7XG4gICAgICAuLi5uZXh0UHJvcHMsXG4gICAgICBhcHA6IChcbiAgICAgICAgPERvY3VtZW50XG4gICAgICAgICAgey4uLm9wdGlvbnN9XG4gICAgICAgICAgZXh0cmFTdHlsZT17bmV4dFByb3BzLmV4dHJhU3R5bGV9XG4gICAgICAgICAgdGl0bGU9e25leHRQcm9wcy50aXRsZSA/PyBvcHRpb25zLnRpdGxlfVxuICAgICAgICAgIGFzc2V0cz17YXNzZXRzfVxuICAgICAgICAgIHJvb3RJZD17b3B0aW9ucy5yb290SWR9XG4gICAgICAgICAgbm9uY2U9e25vbmNlfVxuICAgICAgICAgIGNzUG9saWN5PXtvcHRpb25zLmNzUG9saWN5fVxuICAgICAgICAgIHNjcmlwdHM9e25leHRQcm9wcy5zY3JpcHRzfVxuICAgICAgICA+XG4gICAgICAgICAge25leHRQcm9wcy5hcHB9XG4gICAgICAgIDwvRG9jdW1lbnQ+XG4gICAgICApLFxuICAgIH07XG4gIH07XG59XG5cbmZ1bmN0aW9uIGNoaWxkcmVuQXNzZXRzKGNodW5rOiBTdGF0c0NodW5rR3JvdXApIHtcbiAgcmV0dXJuIGNodW5rLmNoaWxkcmVuXG4gICAgPyBPYmplY3QudmFsdWVzKGNodW5rLmNoaWxkcmVuKS5mbGF0TWFwKHByZWxvYWQgPT5cbiAgICAgICAgcHJlbG9hZC5mbGF0TWFwKGMgPT4gYy5hc3NldHMgPz8gW10pLFxuICAgICAgKVxuICAgIDogW107XG59XG4iXSwibWFwcGluZ3MiOiJBQUVBLE9BQU9BLEtBQUssTUFBTSxPQUFPO0FBSXpCLE9BQU9DLFFBQVEsTUFBTSx3QkFBd0I7QUFVN0MsZUFBZSxTQUFTQyxhQUFhQSxDQUFDQyxPQU1yQyxFQUE2RTtFQUM1RSxPQUFPQyxJQUFJLElBQUksTUFBTUMsS0FBSyxJQUFJO0lBQUEsSUFBQUMscUJBQUEsRUFBQUMsc0JBQUEsRUFBQUMsc0JBQUEsRUFBQUMsc0JBQUEsRUFBQUMsc0JBQUEsRUFBQUMsVUFBQSxFQUFBQyxnQkFBQTtJQUM1QixNQUFNQyxTQUFTLEdBQUcsTUFBTVQsSUFBSSxDQUFDQyxLQUFLLENBQUM7SUFFbkMsTUFBTVMsVUFBVSxHQUFHVCxLQUFLLENBQUNVLGNB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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anansi/core",
3
- "version": "0.16.7",
3
+ "version": "0.16.9",
4
4
  "description": "React 18 Framework",
5
5
  "homepage": "https://github.com/ntucker/anansi/tree/master/packages/core#readme",
6
6
  "repository": {
@@ -68,7 +68,7 @@
68
68
  "devDependencies": {
69
69
  "@anansi/babel-preset": "3.4.2",
70
70
  "@anansi/browserslist-config": "1.4.1",
71
- "@anansi/webpack-config": "14.2.0",
71
+ "@anansi/webpack-config": "14.3.0",
72
72
  "@babel/cli": "7.21.0",
73
73
  "@babel/core": "7.21.0",
74
74
  "@types/compression": "1.7.2",
@@ -81,7 +81,7 @@
81
81
  "webpack-cli": "5.0.1"
82
82
  },
83
83
  "dependencies": {
84
- "@anansi/router": "^0.7.16",
84
+ "@anansi/router": "^0.7.18",
85
85
  "@babel/runtime": "^7.17.0",
86
86
  "@rest-hooks/ssr": "^0.7.9",
87
87
  "chalk": "^4.1.2",
@@ -137,8 +137,8 @@
137
137
  "test:type": "tsc",
138
138
  "build": "yarn run build:lib && yarn build:scripts && yarn run build:bundle",
139
139
  "build:lib": "NODE_ENV=production BROWSERSLIST_ENV='2020' babel --root-mode upward src --out-dir lib --source-maps inline --extensions '.ts,.tsx,.cts,.js' --ignore '**/__tests__/**' --ignore '**/*.d.ts'",
140
- "build:scripts": "NODE_ENV=production BROWSERSLIST_ENV='node12' babel --root-mode upward src/scripts --out-dir lib/scripts --source-maps inline --extensions '.ts,.tsx,.cts,.js' --ignore '**/__tests__/**' --ignore '**/*.d.ts' && echo '{\"type\":\"commonjs\"}' > lib/scripts/package.json",
141
- "build:bundle": "BROWSERSLIST_ENV=node12 webpack --mode=development --target=node && echo '{\"type\":\"commonjs\"}' > dist/package.json",
140
+ "build:scripts": "NODE_ENV=production BROWSERSLIST_ENV='2018' babel --root-mode upward src/scripts --out-dir lib/scripts --source-maps inline --extensions '.ts,.tsx,.cts,.js' --ignore '**/__tests__/**' --ignore '**/*.d.ts'",
141
+ "build:bundle": "BROWSERSLIST_ENV=node12 webpack --mode=none --target=node && echo '{\"type\":\"commonjs\"}' > dist/package.json",
142
142
  "build:clean": "rimraf lib dist ts3.4 legacy *.tsbuildinfo",
143
143
  "prepack": "yarn build"
144
144
  }
@@ -1,22 +1,20 @@
1
- import { create as createResolve } from 'enhanced-resolve';
1
+ import { default as enhanced } from 'enhanced-resolve';
2
2
  import webpack from 'webpack';
3
3
 
4
- const resolve = createResolve.sync({
4
+ const resolve = enhanced.create.sync({
5
5
  modules: ['.'],
6
6
  // or resolve.create.sync
7
7
  extensions: ['.js', '.cjs', '.mjs'],
8
8
  // see more options below
9
9
  });
10
10
 
11
- export function getWebpackConfig(): (
12
- env: any,
13
- argv: any,
14
- ) => webpack.Configuration {
11
+ export async function getWebpackConfig(): Promise<
12
+ (env: any, argv: any) => webpack.Configuration
13
+ > {
15
14
  const configPath = resolve({}, process.cwd(), 'webpack.config');
16
15
  if (!configPath) {
17
16
  throw new Error('Cannot find webpack.config in ' + process.cwd());
18
17
  }
19
- // eslint-disable-next-line @typescript-eslint/no-var-requires
20
- const webpackConfig = require(configPath);
21
- return webpackConfig;
18
+
19
+ return (await import(configPath)).default;
22
20
  }
@@ -13,13 +13,13 @@ import path from 'path';
13
13
  import { promisify } from 'util';
14
14
  import webpack from 'webpack';
15
15
 
16
- import 'cross-fetch/dist/node-polyfill';
16
+ import 'cross-fetch/dist/node-polyfill.js';
17
17
  import getProxyMiddlewares from './getProxyMiddlewares.js';
18
18
  import { getWebpackConfig } from './getWebpackConfig.js';
19
19
  import { Render } from './types.js';
20
20
 
21
21
  // run directly from node
22
- if (require.main === module) {
22
+ if ('main' in import.meta) {
23
23
  const entrypoint = process.argv[2];
24
24
 
25
25
  if (!entrypoint) {
@@ -29,7 +29,7 @@ if (require.main === module) {
29
29
  serve(entrypoint);
30
30
  }
31
31
 
32
- export default function serve(
32
+ export default async function serve(
33
33
  entrypoint: string,
34
34
  options: { serveAssets?: boolean; serveProxy?: boolean } = {},
35
35
  ) {
@@ -37,7 +37,7 @@ export default function serve(
37
37
 
38
38
  const loader = ora('Initializing').start();
39
39
 
40
- const webpackConfig = getWebpackConfig();
40
+ const webpackConfig = await getWebpackConfig();
41
41
 
42
42
  const manifestPath = getManifestPathFromWebpackconfig(
43
43
  webpackConfig({}, { mode: 'production' }),
@@ -66,7 +66,7 @@ export default function serve(
66
66
  }
67
67
 
68
68
  // Start the express server after the first compilation
69
- function initializeApp(clientManifest: webpack.StatsCompilation) {
69
+ async function initializeApp(clientManifest: webpack.StatsCompilation) {
70
70
  loader.info('Launching server');
71
71
  if (!clientManifest) {
72
72
  loader.fail('Manifest not found');
@@ -129,11 +129,12 @@ export default function serve(
129
129
  }
130
130
 
131
131
  // SERVER SIDE RENDERING
132
- // eslint-disable-next-line @typescript-eslint/no-var-requires
133
- const render: Render = require(path.join(
134
- process.cwd(),
135
- entrypoint,
136
- )).default;
132
+ let render: Render = (await import(path.join(process.cwd(), entrypoint)))
133
+ .default;
134
+
135
+ if ('default' in render) {
136
+ render = render.default as any;
137
+ }
137
138
 
138
139
  if (typeof render !== 'function') {
139
140
  throw new Error(
@@ -187,8 +188,14 @@ export default function serve(
187
188
  });
188
189
  }
189
190
 
190
- // eslint-disable-next-line @typescript-eslint/no-var-requires
191
- initializeApp(require(manifestPath));
191
+ let manifest = await import(manifestPath, {
192
+ assert: { type: 'json' },
193
+ });
194
+ // handle inconsistent import conditions
195
+ if ('default' in manifest) {
196
+ manifest = manifest.default;
197
+ }
198
+ await initializeApp(manifest);
192
199
 
193
200
  process.on('SIGINT', () => {
194
201
  loader.warn('Received SIGINT, devserver shutting down');