@anansi/core 0.21.5 → 0.22.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,28 @@
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.22.1](/github.com/ntucker/anansi/compare/@anansi/core@0.22.0...@anansi/core@0.22.1) (2025-12-21)
7
+
8
+ ### 💅 Enhancement
9
+
10
+ * Robust handling of json loading ([96abe1d](/github.com/ntucker/anansi/commit/96abe1d341c375031baff1394cc4a445e19b5711))
11
+
12
+ ### 🐛 Bug Fix
13
+
14
+ * Antd server spout import ([14fa728](/github.com/ntucker/anansi/commit/14fa728a90b9765e37b58161a125d2191f79f1ba))
15
+
16
+ ## [0.22.0](/github.com/ntucker/anansi/compare/@anansi/core@0.21.5...@anansi/core@0.22.0) (2025-12-14)
17
+
18
+ ### ⚠ 💥 BREAKING CHANGES
19
+
20
+ * // Client
21
+ import {antdSpout} from '@anansi/core/antd';
22
+
23
+ // Server
24
+ import {antdSpout} from '@anansi/core/antd/server';
25
+
26
+ * Move antd spouts to own path '@anansi/core/antd' ([11b7b6b](/github.com/ntucker/anansi/commit/11b7b6bd19046911e2ebe694f4ba8920860ea253))
27
+
6
28
  ## [0.21.5](/github.com/ntucker/anansi/compare/@anansi/core@0.21.4...@anansi/core@0.21.5) (2025-12-13)
7
29
 
8
30
  ### 🐛 Bug Fix
package/dist/server.js CHANGED
@@ -121,7 +121,6 @@ __webpack_require__.r(__webpack_exports__);
121
121
  // EXPORTS
122
122
  __webpack_require__.d(__webpack_exports__, {
123
123
  JSONSpout: () => (/* reexport */ JSONSpout),
124
- antdSpout: () => (/* reexport */ antdSpout),
125
124
  appSpout: () => (/* reexport */ app_server),
126
125
  dataClientSpout: () => (/* reexport */ dataClientSpout),
127
126
  documentSpout: () => (/* reexport */ DocumentSpout),
@@ -443,40 +442,6 @@ function dataClientSpout(options = {}) {
443
442
  };
444
443
  };
445
444
  }
446
- ;// ./src/spouts/antd.server.tsx
447
-
448
-
449
- function antdSpout() {
450
- return next => async props => {
451
- const {
452
- createCache,
453
- extractStyle,
454
- StyleProvider
455
- } = await import(/* webpackIgnore: true */'@ant-design/cssinjs');
456
- const cache = createCache();
457
- const AntdSheets = () => {
458
- return /*#__PURE__*/(0,jsx_runtime_namespaceObject.jsx)("script", {
459
- dangerouslySetInnerHTML: {
460
- __html: `</script>${extractStyle(cache)}<script>`
461
- }
462
- });
463
- };
464
- const nextProps = await next(props);
465
- const scripts = nextProps.scripts ?? [];
466
-
467
- // unfortunately we have to inject this after the entire content has streamed in or it doesn't correctly populate
468
- // see: https://github.com/ant-design/cssinjs/issues/79
469
- scripts.push(/*#__PURE__*/(0,jsx_runtime_namespaceObject.jsx)(AntdSheets, {}, "antd-sheets"));
470
- return {
471
- ...nextProps,
472
- app: /*#__PURE__*/(0,jsx_runtime_namespaceObject.jsx)(StyleProvider, {
473
- cache: cache,
474
- children: nextProps.app
475
- }),
476
- scripts
477
- };
478
- };
479
- }
480
445
  ;// external "@anansi/router"
481
446
  const router_namespaceObject = require("@anansi/router");
482
447
  ;// external "history"
@@ -664,10 +629,9 @@ function navigatorSpout() {
664
629
 
665
630
 
666
631
 
667
-
668
632
  })();
669
633
 
670
634
  module.exports = __webpack_exports__;
671
635
  /******/ })()
672
636
  ;
673
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,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SUFDM0JtTCxTQUFTLEVBQUVuTCxNQUFNLENBQUNrRyxNQUFNLEdBQUcsQ0FBQyxHQUFHbEcsTUFBTSxHQUFHLENBQUMsSUFBSTtFQUMvQyxDQUFDO0FBQ0gsQzs7QUN6QzBCO0FBRXFEO0FBQUE7QUFPaEUsU0FBUzJMLGNBQWNBLENBQUEsRUFJcEM7RUFDQSxPQUFPOUYsSUFBSSxJQUFJLE1BQU1DLEtBQUssSUFBSTtJQUM1QixNQUFNOEYsY0FBYyxHQUFHOUYsS0FBSyxDQUFDbEUsR0FBRyxDQUFDaUssT0FBTyxDQUFDLGlCQUFpQixDQUFDO0lBQzNELE1BQU1aLE1BQU0sR0FDVixPQUFPVyxjQUFjLEtBQUssUUFBUSxHQUFHQSxjQUFjLEdBQUdBLGNBQWMsR0FBRyxDQUFDLENBQUM7SUFDM0UsTUFBTUUsY0FBYyxHQUFHZCxtQkFBbUIsQ0FBQ0MsTUFBTSxDQUFDO0lBRWxELE1BQU1sRixTQUFTLEdBQUcsTUFBTUYsSUFBSSxDQUFDO01BQzNCLEdBQUdDLEtBQUs7TUFDUixHQUFHZ0c7SUFDTCxDQUFDLENBQUM7SUFFRixPQUFPO01BQ0wsR0FBRy9GLFNBQVM7TUFDWixHQUFHK0YsY0FBYztNQUNqQmhFLFFBQVEsRUFBRTtRQUNSLEdBQUcvQixTQUFTLENBQUMrQixRQUFRO1FBQ3JCaUUsU0FBUyxFQUFFQSxDQUFBLEtBQU1EO01BQ25CLENBQUM7TUFDRDdKLEdBQUcsZUFDRDBDLG1DQUFBLENBQUNrRyxnQkFBZ0I7UUFBQ21CLEtBQUssRUFBRUYsY0FBZTtRQUFBM0gsUUFBQSxFQUNyQzRCLFNBQVMsQ0FBQzlEO01BQUcsQ0FDRTtJQUV0QixDQUFDO0VBQ0gsQ0FBQztBQUNILEM7O0FDdkNzRDtBQUNpQjtBQUNJO0FBQ1o7QUFDSTtBQUNJO0FBQ1I7QUFDRjtBQUNZO0FBQ1oiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvZXh0ZXJuYWwgY29tbW9uanMgXCJAZGF0YS1jbGllbnQvcmVhY3RcIiIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvZXh0ZXJuYWwgY29tbW9uanMgXCJAZGF0YS1jbGllbnQvcmVhY3Qvc3NyXCIiLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlL3dlYnBhY2svYm9vdHN0cmFwIiwid2VicGFjazovL0BhbmFuc2kvY29yZS93ZWJwYWNrL3J1bnRpbWUvY29tcGF0IGdldCBkZWZhdWx0IGV4cG9ydCIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvd2VicGFjay9ydW50aW1lL2NyZWF0ZSBmYWtlIG5hbWVzcGFjZSBvYmplY3QiLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlL3dlYnBhY2svcnVudGltZS9kZWZpbmUgcHJvcGVydHkgZ2V0dGVycyIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvd2VicGFjay9ydW50aW1lL2hhc093blByb3BlcnR5IHNob3J0aGFuZCIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvd2VicGFjay9ydW50aW1lL21ha2UgbmFtZXNwYWNlIG9iamVjdCIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvZXh0ZXJuYWwgbm9kZS1jb21tb25qcyBcImNyeXB0b1wiIiwid2VicGFjazovL0BhbmFuc2kvY29yZS9leHRlcm5hbCBjb21tb25qcyBcInJlYWN0LWRvbS9zZXJ2ZXJcIiIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvLi9zcmMvc2NyaXB0cy9zc3JFcnJvckhhbmRsZXIudHMiLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlLy4vc3JjL2xheVNwb3V0cy50c3giLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlL2V4dGVybmFsIGNvbW1vbmpzIFwicmVhY3RcIiIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvLi9zcmMvc3BvdXRzL2NzcC50cyIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvZXh0ZXJuYWwgY29tbW9uanMgXCJyZWFjdC9qc3gtcnVudGltZVwiIiwid2VicGFjazovL0BhbmFuc2kvY29yZS8uL3NyYy9zcG91dHMvRG9jdW1lbnRDb21wb25lbnQudHN4Iiwid2VicGFjazovL0BhbmFuc2kvY29yZS8uL3NyYy9zcG91dHMvZG9jdW1lbnQuc2VydmVyLnRzeCIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvLi9zcmMvc3BvdXRzL2RhdGFDbGllbnQuc2VydmVyLnRzeCIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvLi9zcmMvc3BvdXRzL2FudGQuc2VydmVyLnRzeCIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvZXh0ZXJuYWwgY29tbW9uanMgXCJAYW5hbnNpL3JvdXRlclwiIiwid2VicGFjazovL0BhbmFuc2kvY29yZS9leHRlcm5hbCBjb21tb25qcyBcImhpc3RvcnlcIiIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvLi9zcmMvc3BvdXRzL3JvdXRlci5zZXJ2ZXIudHN4Iiwid2VicGFjazovL0BhbmFuc2kvY29yZS8uL3NyYy9zcG91dHMvcHJlZmV0Y2guc2VydmVyLnRzeCIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvLi9zcmMvc3BvdXRzL2pzb24uc2VydmVyLnRzeCIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvLi9zcmMvc3BvdXRzL2FwcC5zZXJ2ZXIudHN4Iiwid2VicGFjazovL0BhbmFuc2kvY29yZS8uL3NyYy9zcG91dHMvbmF2aWdhdG9yLmNvbnRleHQudHN4Iiwid2VicGFjazovL0BhbmFuc2kvY29yZS8uL3NyYy9zcG91dHMvbmF2aWdhdG9yLnNlcnZlci50c3giLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlLy4vc3JjL2luZGV4LnNlcnZlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJAZGF0YS1jbGllbnQvcmVhY3RcIik7IiwibW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKFwiQGRhdGEtY2xpZW50L3JlYWN0L3NzclwiKTsiLCIvLyBUaGUgbW9kdWxlIGNhY2hlXG52YXIgX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fID0ge307XG5cbi8vIFRoZSByZXF1aXJlIGZ1bmN0aW9uXG5mdW5jdGlvbiBfX3dlYnBhY2tfcmVxdWlyZV9fKG1vZHVsZUlkKSB7XG5cdC8vIENoZWNrIGlmIG1vZHVsZSBpcyBpbiBjYWNoZVxuXHR2YXIgY2FjaGVkTW9kdWxlID0gX193ZWJwYWNrX21vZHVsZV9jYWNoZV9fW21vZHVsZUlkXTtcblx0aWYgKGNhY2hlZE1vZHVsZSAhPT0gdW5kZWZpbmVkKSB7XG5cdFx0cmV0dXJuIGNhY2hlZE1vZHVsZS5leHBvcnRzO1xuXHR9XG5cdC8vIENyZWF0ZSBhIG5ldyBtb2R1bGUgKGFuZCBwdXQgaXQgaW50byB0aGUgY2FjaGUpXG5cdHZhciBtb2R1bGUgPSBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdID0ge1xuXHRcdC8vIG5vIG1vZHVsZS5pZCBuZWVkZWRcblx0XHQvLyBubyBtb2R1bGUubG9hZGVkIG5lZWRlZFxuXHRcdGV4cG9ydHM6IHt9XG5cdH07XG5cblx0Ly8gRXhlY3V0ZSB0aGUgbW9kdWxlIGZ1bmN0aW9uXG5cdF9fd2VicGFja19tb2R1bGVzX19bbW9kdWxlSWRdKG1vZHVsZSwgbW9kdWxlLmV4cG9ydHMsIF9fd2VicGFja19yZXF1aXJlX18pO1xuXG5cdC8vIFJldHVybiB0aGUgZXhwb3J0cyBvZiB0aGUgbW9kdWxlXG5cdHJldHVybiBtb2R1bGUuZXhwb3J0cztcbn1cblxuIiwiLy8gZ2V0RGVmYXVsdEV4cG9ydCBmdW5jdGlvbiBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5vbi1oYXJtb255IG1vZHVsZXNcbl9fd2VicGFja19yZXF1aXJlX18ubiA9IChtb2R1bGUpID0+IHtcblx0dmFyIGdldHRlciA9IG1vZHVsZSAmJiBtb2R1bGUuX19lc01vZHVsZSA/XG5cdFx0KCkgPT4gKG1vZHVsZVsnZGVmYXVsdCddKSA6XG5cdFx0KCkgPT4gKG1vZHVsZSk7XG5cdF9fd2VicGFja19yZXF1aXJlX18uZChnZXR0ZXIsIHsgYTogZ2V0dGVyIH0pO1xuXHRyZXR1cm4gZ2V0dGVyO1xufTsiLCJ2YXIgZ2V0UHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YgPyAob2JqKSA9PiAoT2JqZWN0LmdldFByb3RvdHlwZU9mKG9iaikpIDogKG9iaikgPT4gKG9iai5fX3Byb3RvX18pO1xudmFyIGxlYWZQcm90b3R5cGVzO1xuLy8gY3JlYXRlIGEgZmFrZSBuYW1lc3BhY2Ugb2JqZWN0XG4vLyBtb2RlICYgMTogdmFsdWUgaXMgYSBtb2R1bGUgaWQsIHJlcXVpcmUgaXRcbi8vIG1vZGUgJiAyOiBtZXJnZSBhbGwgcHJvcGVydGllcyBvZiB2YWx1ZSBpbnRvIHRoZSBuc1xuLy8gbW9kZSAmIDQ6IHJldHVybiB2YWx1ZSB3aGVuIGFscmVhZHkgbnMgb2JqZWN0XG4vLyBtb2RlICYgMTY6IHJldHVybiB2YWx1ZSB3aGVuIGl0J3MgUHJvbWlzZS1saWtlXG4vLyBtb2RlICYgOHwxOiBiZWhhdmUgbGlrZSByZXF1aXJlXG5fX3dlYnBhY2tfcmVxdWlyZV9fLnQgPSBmdW5jdGlvbih2YWx1ZSwgbW9kZSkge1xuXHRpZihtb2RlICYgMSkgdmFsdWUgPSB0aGlzKHZhbHVlKTtcblx0aWYobW9kZSAmIDgpIHJldHVybiB2YWx1ZTtcblx0aWYodHlwZW9mIHZhbHVlID09PSAnb2JqZWN0JyAmJiB2YWx1ZSkge1xuXHRcdGlmKChtb2RlICYgNCkgJiYgdmFsdWUuX19lc01vZHVsZSkgcmV0dXJuIHZhbHVlO1xuXHRcdGlmKChtb2RlICYgMTYpICYmIHR5cGVvZiB2YWx1ZS50aGVuID09PSAnZnVuY3Rpb24nKSByZXR1cm4gdmFsdWU7XG5cdH1cblx0dmFyIG5zID0gT2JqZWN0LmNyZWF0ZShudWxsKTtcblx0X193ZWJwYWNrX3JlcXVpcmVfXy5yKG5zKTtcblx0dmFyIGRlZiA9IHt9O1xuXHRsZWFmUHJvdG90eXBlcyA9IGxlYWZQcm90b3R5cGVzIHx8IFtudWxsLCBnZXRQcm90byh7fSksIGdldFByb3RvKFtdKSwgZ2V0UHJvdG8oZ2V0UHJvdG8pXTtcblx0Zm9yKHZhciBjdXJyZW50ID0gbW9kZSAmIDIgJiYgdmFsdWU7ICh0eXBlb2YgY3VycmVudCA9PSAnb2JqZWN0JyB8fCB0eXBlb2YgY3VycmVudCA9PSAnZnVuY3Rpb24nKSAmJiAhfmxlYWZQcm90b3R5cGVzLmluZGV4T2YoY3VycmVudCk7IGN1cnJlbnQgPSBnZXRQcm90byhjdXJyZW50KSkge1xuXHRcdE9iamVjdC5nZXRPd25Qcm9wZXJ0eU5hbWVzKGN1cnJlbnQpLmZvckVhY2goKGtleSkgPT4gKGRlZltrZXldID0gKCkgPT4gKHZhbHVlW2tleV0pKSk7XG5cdH1cblx0ZGVmWydkZWZhdWx0J10gPSAoKSA9PiAodmFsdWUpO1xuXHRfX3dlYnBhY2tfcmVxdWlyZV9fLmQobnMsIGRlZik7XG5cdHJldHVybiBucztcbn07IiwiLy8gZGVmaW5lIGdldHRlciBmdW5jdGlvbnMgZm9yIGhhcm1vbnkgZXhwb3J0c1xuX193ZWJwYWNrX3JlcXVpcmVfXy5kID0gKGV4cG9ydHMsIGRlZmluaXRpb24pID0+IHtcblx0Zm9yKHZhciBrZXkgaW4gZGVmaW5pdGlvbikge1xuXHRcdGlmKF9fd2VicGFja19yZXF1aXJlX18ubyhkZWZpbml0aW9uLCBrZXkpICYmICFfX3dlYnBhY2tfcmVxdWlyZV9fLm8oZXhwb3J0cywga2V5KSkge1xuXHRcdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIGtleSwgeyBlbnVtZXJhYmxlOiB0cnVlLCBnZXQ6IGRlZmluaXRpb25ba2V5XSB9KTtcblx0XHR9XG5cdH1cbn07IiwiX193ZWJwYWNrX3JlcXVpcmVfXy5vID0gKG9iaiwgcHJvcCkgPT4gKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChvYmosIHByb3ApKSIsIi8vIGRlZmluZSBfX2VzTW9kdWxlIG9uIGV4cG9ydHNcbl9fd2VicGFja19yZXF1aXJlX18uciA9IChleHBvcnRzKSA9PiB7XG5cdGlmKHR5cGVvZiBTeW1ib2wgIT09ICd1bmRlZmluZWQnICYmIFN5bWJvbC50b1N0cmluZ1RhZykge1xuXHRcdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCBTeW1ib2wudG9TdHJpbmdUYWcsIHsgdmFsdWU6ICdNb2R1bGUnIH0pO1xuXHR9XG5cdE9iamVjdC5kZWZpbmVQcm9wZXJ0eShleHBvcnRzLCAnX19lc01vZHVsZScsIHsgdmFsdWU6IHRydWUgfSk7XG59OyIsImNvbnN0IF9fV0VCUEFDS19OQU1FU1BBQ0VfT0JKRUNUX18gPSByZXF1aXJlKFwiY3J5cHRvXCIpOyIsImNvbnN0IF9fV0VCUEFDS19OQU1FU1BBQ0VfT0JKRUNUX18gPSByZXF1aXJlKFwicmVhY3QtZG9tL3NlcnZlclwiKTsiLCIvKipcbiAqIFV0aWxpdGllcyBmb3IgaGFuZGxpbmcgU1NSIGVycm9ycyBncmFjZWZ1bGx5XG4gKi9cblxuLyoqXG4gKiBFeHRyYWN0IEhUVFAgc3RhdHVzIGNvZGUgZnJvbSBhbiBlcnJvciBvYmplY3QuXG4gKiBMb29rcyBmb3IgYSBgc3RhdHVzYCBwcm9wZXJ0eSB0aGF0IGlzIGEgbnVtYmVyIG9yIHBhcnNlYWJsZSBzdHJpbmcuXG4gKiBSZXR1cm5zIDUwMCBpZiBubyB2YWxpZCBzdGF0dXMgZm91bmQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRFcnJvclN0YXR1cyhlcnJvcjogdW5rbm93bik6IG51bWJlciB7XG4gIGlmIChlcnJvciAmJiB0eXBlb2YgZXJyb3IgPT09ICdvYmplY3QnICYmICdzdGF0dXMnIGluIGVycm9yKSB7XG4gICAgY29uc3Qgc3RhdHVzID0gKGVycm9yIGFzIHsgc3RhdHVzOiB1bmtub3duIH0pLnN0YXR1cztcbiAgICBpZiAodHlwZW9mIHN0YXR1cyA9PT0gJ251bWJlcicgJiYgc3RhdHVzID49IDEwMCAmJiBzdGF0dXMgPCA2MDApIHtcbiAgICAgIHJldHVybiBzdGF0dXM7XG4gICAgfVxuICAgIGlmICh0eXBlb2Ygc3RhdHVzID09PSAnc3RyaW5nJykge1xuICAgICAgY29uc3QgcGFyc2VkID0gcGFyc2VJbnQoc3RhdHVzLCAxMCk7XG4gICAgICBpZiAoIWlzTmFOKHBhcnNlZCkgJiYgcGFyc2VkID49IDEwMCAmJiBwYXJzZWQgPCA2MDApIHtcbiAgICAgICAgcmV0dXJuIHBhcnNlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIDUwMDtcbn1cblxuLyoqXG4gKiBFc2NhcGUgSFRNTCBzcGVjaWFsIGNoYXJhY3RlcnMgdG8gcHJldmVudCBYU1NcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGVzY2FwZUh0bWwoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gc3RyXG4gICAgLnJlcGxhY2UoLyYvZywgJyZhbXA7JylcbiAgICAucmVwbGFjZSgvPC9nLCAnJmx0OycpXG4gICAgLnJlcGxhY2UoLz4vZywgJyZndDsnKVxuICAgIC5yZXBsYWNlKC9cIi9nLCAnJnF1b3Q7JylcbiAgICAucmVwbGFjZSgvJy9nLCAnJiMwMzk7Jyk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgUmVuZGVyRXJyb3JQYWdlT3B0aW9ucyB7XG4gIC8qKiBTaG93IHN0YWNrIHRyYWNlIGluIG91dHB1dCAqL1xuICBzaG93U3RhY2s/OiBib29sZWFuO1xuICAvKiogQWRkaXRpb25hbCBoaW50IG1lc3NhZ2UgdG8gZGlzcGxheSAqL1xuICBoaW50Pzogc3RyaW5nO1xuICAvKiogQmFkZ2UgdGV4dCB0byBkaXNwbGF5IChlLmcuLCBcIkRFViBNT0RFXCIpICovXG4gIGJhZGdlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlbmRlciBhbiBIVE1MIGVycm9yIHBhZ2UgZm9yIFNTUiBmYWlsdXJlc1xuICovXG5leHBvcnQgZnVuY3Rpb24gcmVuZGVyRXJyb3JQYWdlKFxuICBlcnJvcjogdW5rbm93bixcbiAgdXJsOiBzdHJpbmcsXG4gIHN0YXR1c0NvZGU6IG51bWJlcixcbiAgb3B0aW9uczogUmVuZGVyRXJyb3JQYWdlT3B0aW9ucyA9IHt9LFxuKTogc3RyaW5nIHtcbiAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiBTdHJpbmcoZXJyb3IpO1xuICBjb25zdCBzdGFjayA9IGVycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5zdGFjayA6IHVuZGVmaW5lZDtcbiAgY29uc3QgeyBzaG93U3RhY2sgPSBmYWxzZSwgaGludCwgYmFkZ2UgfSA9IG9wdGlvbnM7XG5cbiAgcmV0dXJuIGA8IURPQ1RZUEUgaHRtbD5cbjxodG1sIGxhbmc9XCJlblwiPlxuPGhlYWQ+XG4gIDxtZXRhIGNoYXJzZXQ9XCJVVEYtOFwiPlxuICA8bWV0YSBuYW1lPVwidmlld3BvcnRcIiBjb250ZW50PVwid2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMFwiPlxuICA8dGl0bGU+JHtzdGF0dXNDb2RlfSAtIFNlcnZlciBFcnJvcjwvdGl0bGU+XG4gIDxzdHlsZT5cbiAgICAqIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB9XG4gICAgYm9keSB7IGZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsIFJvYm90bywgc2Fucy1zZXJpZjsgYmFja2dyb3VuZDogIzFhMWEyZTsgY29sb3I6ICNlZWU7IG1pbi1oZWlnaHQ6IDEwMHZoOyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgcGFkZGluZzogMnJlbTsgfVxuICAgIC5jb250YWluZXIgeyBtYXgtd2lkdGg6IDgwMHB4OyB3aWR0aDogMTAwJTsgfVxuICAgIGgxIHsgY29sb3I6ICNmZjZiNmI7IGZvbnQtc2l6ZTogMi41cmVtOyBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgLmJhZGdlIHsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBiYWNrZ3JvdW5kOiAjNGVjZGM0OyBjb2xvcjogIzFhMWEyZTsgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07IGJvcmRlci1yYWRpdXM6IDRweDsgZm9udC1zaXplOiAwLjc1cmVtOyBmb250LXdlaWdodDogNjAwOyBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgLnVybCB7IGNvbG9yOiAjODg4OyBmb250LXNpemU6IDAuOXJlbTsgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB3b3JkLWJyZWFrOiBicmVhay1hbGw7IH1cbiAgICAubWVzc2FnZSB7IGJhY2tncm91bmQ6ICMxNjIxM2U7IGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2ZmNmI2YjsgcGFkZGluZzogMXJlbSAxLjVyZW07IGJvcmRlci1yYWRpdXM6IDAgOHB4IDhweCAwOyBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbiAgICAubWVzc2FnZSBjb2RlIHsgY29sb3I6ICNmZjZiNmI7IGZvbnQtc2l6ZTogMS4xcmVtOyB9XG4gICAgLnN0YWNrIHsgYmFja2dyb3VuZDogIzBmMGYyMzsgYm9yZGVyLXJhZGl1czogOHB4OyBwYWRkaW5nOiAxLjVyZW07IG92ZXJmbG93LXg6IGF1dG87IGZvbnQtZmFtaWx5OiAnTW9uYWNvJywgJ01lbmxvJywgbW9ub3NwYWNlOyBmb250LXNpemU6IDAuODVyZW07IGxpbmUtaGVpZ2h0OiAxLjY7IGNvbG9yOiAjYWFhOyB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7IHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7IH1cbiAgICAucmV0cnkgeyBtYXJnaW4tdG9wOiAycmVtOyB9XG4gICAgLnJldHJ5IGEgeyBjb2xvcjogIzRlY2RjNDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBwYWRkaW5nOiAwLjc1cmVtIDEuNXJlbTsgYm9yZGVyOiAycHggc29saWQgIzRlY2RjNDsgYm9yZGVyLXJhZGl1czogNnB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHRyYW5zaXRpb246IGFsbCAwLjJzOyB9XG4gICAgLnJldHJ5IGE6aG92ZXIgeyBiYWNrZ3JvdW5kOiAjNGVjZGM0OyBjb2xvcjogIzFhMWEyZTsgfVxuICAgIC5oaW50IHsgbWFyZ2luLXRvcDogMS41cmVtOyBjb2xvcjogIzg4ODsgZm9udC1zaXplOiAwLjlyZW07IH1cbiAgPC9zdHlsZT5cbjwvaGVhZD5cbjxib2R5PlxuICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyXCI+XG4gICAgJHtiYWRnZSA/IGA8c3BhbiBjbGFzcz1cImJhZGdlXCI+JHtlc2NhcGVIdG1sKGJhZGdlKX08L3NwYW4+YCA6ICcnfVxuICAgIDxoMT4ke3N0YXR1c0NvZGV9IC0gU2VydmVyIEVycm9yPC9oMT5cbiAgICA8cCBjbGFzcz1cInVybFwiPkVycm9yIHJlbmRlcmluZzogJHtlc2NhcGVIdG1sKHVybCl9PC9wPlxuICAgIDxkaXYgY2xhc3M9XCJtZXNzYWdlXCI+XG4gICAgICA8Y29kZT4ke2VzY2FwZUh0bWwoZXJyb3JNZXNzYWdlKX08L2NvZGU+XG4gICAgPC9kaXY+XG4gICAgJHtzaG93U3RhY2sgJiYgc3RhY2sgPyBgPHByZSBjbGFzcz1cInN0YWNrXCI+JHtlc2NhcGVIdG1sKHN0YWNrKX08L3ByZT5gIDogJyd9XG4gICAgPGRpdiBjbGFzcz1cInJldHJ5XCI+XG4gICAgICA8YSBocmVmPVwiJHtlc2NhcGVIdG1sKHVybCl9XCI+UmV0cnk8L2E+XG4gICAgPC9kaXY+XG4gICAgJHtoaW50ID8gYDxwIGNsYXNzPVwiaGludFwiPiR7ZXNjYXBlSHRtbChoaW50KX08L3A+YCA6ICcnfVxuICA8L2Rpdj5cbjwvYm9keT5cbjwvaHRtbD5gO1xufVxuIiwiaW1wb3J0IGNyeXB0byBmcm9tICdjcnlwdG8nO1xuaW1wb3J0IHR5cGUgeyBKU1ggfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyByZW5kZXJUb1BpcGVhYmxlU3RyZWFtIGFzIHJlYWN0UmVuZGVyIH0gZnJvbSAncmVhY3QtZG9tL3NlcnZlcic7XG5cbmltcG9ydCB7IGdldEVycm9yU3RhdHVzIH0gZnJvbSAnLi9zY3JpcHRzL3NzckVycm9ySGFuZGxlci5qcyc7XG5pbXBvcnQgdHlwZSB7IFJlbmRlciB9IGZyb20gJy4vc2NyaXB0cy90eXBlcy5qcyc7XG5pbXBvcnQgdHlwZSB7IFNlcnZlclByb3BzIH0gZnJvbSAnLi9zcG91dHMvdHlwZXMuanMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBsYXlTcG91dHMoXG4gIHNwb3V0czogKHByb3BzOiBTZXJ2ZXJQcm9wcykgPT4gUHJvbWlzZTx7XG4gICAgYXBwOiBKU1guRWxlbWVudDtcbiAgfT4sXG4gIHtcbiAgICB0aW1lb3V0TVMgPSAxMDAwMCxcbiAgICBvbkVycm9yLFxuICB9OiB7IHRpbWVvdXRNUz86IG51bWJlcjsgb25FcnJvcj86IChlcnJvcjogdW5rbm93bikgPT4gdm9pZCB9ID0ge30sXG4pIHtcbiAgY29uc3QgcmVuZGVyOiBSZW5kZXIgPSBhc3luYyAoY2xpZW50TWFuaWZlc3QsIHJlcSwgcmVzKSA9PiB7XG4gICAgY29uc3Qgbm9uY2UgPSBjcnlwdG8ucmFuZG9tQnl0ZXMoMTYpLnRvU3RyaW5nKCdiYXNlNjQnKTtcblxuICAgIHRyeSB7XG4gICAgICBjb25zdCB7IGFwcCB9ID0gYXdhaXQgc3BvdXRzKHsgY2xpZW50TWFuaWZlc3QsIHJlcSwgcmVzLCBub25jZSB9KTtcblxuICAgICAgbGV0IGRpZEVycm9yID0gZmFsc2U7XG4gICAgICBsZXQgbGFzdEVycm9yOiB1bmtub3duO1xuICAgICAgY29uc3QgeyBwaXBlLCBhYm9ydCB9ID0gcmVhY3RSZW5kZXIoYXBwLCB7XG4gICAgICAgIG5vbmNlLFxuICAgICAgICAvL2Jvb3RzdHJhcFNjcmlwdHM6IGFzc2V0cy5maWx0ZXIoYXNzZXQgPT4gYXNzZXQuZW5kc1dpdGgoJy5qcycpKSxcbiAgICAgICAgb25TaGVsbFJlYWR5KCkge1xuICAgICAgICAgIC8vbWFuYWdlcnMuZm9yRWFjaChtYW5hZ2VyID0+IG1hbmFnZXIuY2xlYW51cCgpKTtcbiAgICAgICAgICAvLyBJZiBzb21ldGhpbmcgZXJyb3JlZCBiZWZvcmUgd2Ugc3RhcnRlZCBzdHJlYW1pbmcsIHdlIHNldCB0aGUgZXJyb3IgY29kZSBhcHByb3ByaWF0ZWx5LlxuICAgICAgICAgIHJlcy5zdGF0dXNDb2RlID0gZGlkRXJyb3IgPyBnZXRFcnJvclN0YXR1cyhsYXN0RXJyb3IpIDogMjAwO1xuICAgICAgICAgIHJlcy5zZXRIZWFkZXIoJ0NvbnRlbnQtdHlwZScsICd0ZXh0L2h0bWwnKTtcbiAgICAgICAgICBwaXBlKHJlcyk7XG4gICAgICAgIH0sXG4gICAgICAgIG9uU2hlbGxFcnJvcihlOiB1bmtub3duKSB7XG4gICAgICAgICAgZGlkRXJyb3IgPSB0cnVlO1xuICAgICAgICAgIGxhc3RFcnJvciA9IGU7XG4gICAgICAgICAgcmVzLnN0YXR1c0NvZGUgPSBnZXRFcnJvclN0YXR1cyhlKTtcbiAgICAgICAgICBwaXBlKHJlcyk7XG4gICAgICAgIH0sXG4gICAgICAgIG9uRXJyb3IoZTogdW5rbm93bikge1xuICAgICAgICAgIGRpZEVycm9yID0gdHJ1ZTtcbiAgICAgICAgICBsYXN0RXJyb3IgPSBlO1xuICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICAgICAgcmVzLnN0YXR1c0NvZGUgPSBnZXRFcnJvclN0YXR1cyhlKTtcbiAgICAgICAgICAvL3BpcGUocmVzKTsgUmVtb3ZpbmcgdGhpcyBhdm9pZHMsIFwiUmVhY3QgY3VycmVudGx5IG9ubHkgc3VwcG9ydHMgcGlwaW5nIHRvIG9uZSB3cml0YWJsZSBzdHJlYW0uXCJcbiAgICAgICAgICBpZiAob25FcnJvcikgb25FcnJvcihlKTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICAgICAgLy8gQWJhbmRvbiBhbmQgc3dpdGNoIHRvIGNsaWVudCByZW5kZXJpbmcgaWYgZW5vdWdoIHRpbWUgcGFzc2VzLlxuICAgICAgLy8gVHJ5IGxvd2VyaW5nIHRoaXMgdG8gc2VlIHRoZSBjbGllbnQgcmVjb3Zlci5cbiAgICAgIHNldFRpbWVvdXQoXG4gICAgICAgICgpID0+IChhYm9ydCBhcyBhbnkpKGBUaW1lb3V0IG9mICR7dGltZW91dE1TfW1zIGV4Y2VlZGVkYCksXG4gICAgICAgIHRpbWVvdXRNUyxcbiAgICAgICk7XG4gICAgfSBjYXRjaCAoZTogdW5rbm93bikge1xuICAgICAgaWYgKG9uRXJyb3IpIG9uRXJyb3IoZSk7XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfTtcbiAgcmV0dXJuIHJlbmRlcjtcbn1cbiIsImNvbnN0IF9fV0VCUEFDS19OQU1FU1BBQ0VfT0JKRUNUX18gPSByZXF1aXJlKFwicmVhY3RcIik7IiwiZXhwb3J0IGludGVyZmFjZSBQb2xpY3kge1xuICBbZGlyZWN0aXZlOiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXTtcbn1cblxuLy8gVE9ETzogbWVtb2l6ZSB0aGlzXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRQb2xpY3kocG9saWN5T2JqOiBQb2xpY3kpIHtcbiAgcmV0dXJuIE9iamVjdC5rZXlzKHBvbGljeU9iailcbiAgICAubWFwKGtleSA9PiB7XG4gICAgICBjb25zdCB2YWwgPVxuICAgICAgICBBcnJheS5pc0FycmF5KHBvbGljeU9ialtrZXldKSA/XG4gICAgICAgICAgWy4uLm5ldyBTZXQocG9saWN5T2JqW2tleV0pLnZhbHVlcygpXS5maWx0ZXIodiA9PiB2KS5qb2luKCcgJylcbiAgICAgICAgOiBwb2xpY3lPYmpba2V5XTtcblxuICAgICAgLy8gbW92ZSBzdHJpY3QgZHluYW1pYyB0byB0aGUgZW5kIG9mIHRoZSBwb2xpY3kgaWYgaXQgZXhpc3RzIHRvIGJlIGJhY2t3YXJkcyBjb21wYXRpYmxlIHdpdGggY3NwMlxuICAgICAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRUUC9IZWFkZXJzL0NvbnRlbnQtU2VjdXJpdHktUG9saWN5L3NjcmlwdC1zcmMjc3RyaWN0LWR5bmFtaWNcbiAgICAgIGlmICh0eXBlb2YgdmFsID09PSAnc3RyaW5nJyAmJiB2YWwuaW5jbHVkZXMoXCInc3RyaWN0LWR5bmFtaWMnXCIpKSB7XG4gICAgICAgIGNvbnN0IG5ld1ZhbCA9IGAke3ZhbFxuICAgICAgICAgIC5yZXBsYWNlKC9cXHM/J3N0cmljdC1keW5hbWljJ1xccz8vZ2ksICcgJylcbiAgICAgICAgICAudHJpbSgpfSAnc3RyaWN0LWR5bmFtaWMnYDtcbiAgICAgICAgcmV0dXJuIGAke2tleX0gJHtuZXdWYWx9YDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGAke2tleX0gJHt2YWx9YDtcbiAgICB9KVxuICAgIC5qb2luKCc7ICcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gam9pbk5vbmNlKHBvbGljeU9iajogUG9saWN5LCBub25jZT86IHN0cmluZyB8IHVuZGVmaW5lZCkge1xuICBpZiAoIW5vbmNlKSByZXR1cm4gcG9saWN5T2JqO1xuICBjb25zdCBwb2xpY3kgPSB7XG4gICAgLi4ucG9saWN5T2JqLFxuICB9O1xuICBpZiAodHlwZW9mIHBvbGljeVsnc2NyaXB0LXNyYyddID09PSAnc3RyaW5nJykge1xuICAgIHBvbGljeVsnc2NyaXB0LXNyYyddID0gW3BvbGljeVsnc2NyaXB0LXNyYyddLCBgJ25vbmNlLSR7bm9uY2V9J2BdO1xuICB9IGVsc2Uge1xuICAgIHBvbGljeVsnc2NyaXB0LXNyYyddID0gWy4uLnBvbGljeVsnc2NyaXB0LXNyYyddLCBgJ25vbmNlLSR7bm9uY2V9J2BdO1xuICB9XG4gIHJldHVybiBwb2xpY3k7XG59XG4iLCJjb25zdCBfX1dFQlBBQ0tfTkFNRVNQQUNFX09CSkVDVF9fID0gcmVxdWlyZShcInJlYWN0L2pzeC1ydW50aW1lXCIpOyIsInR5cGUgUHJvcHMgPSB7XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdE5vZGU7XG4gIGFzc2V0czogeyBocmVmOiBzdHJpbmc7IGFzPzogc3RyaW5nOyByZWw/OiBzdHJpbmcgfVtdO1xuICBoZWFkPzogUmVhY3QuUmVhY3ROb2RlO1xuICBleHRyYVN0eWxlOiBSZWFjdC5SZWFjdE5vZGU7XG4gIHNjcmlwdHM/OiBSZWFjdC5SZWFjdE5vZGU7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHJvb3RJZD86IHN0cmluZztcbiAgY2hhclNldD86IHN0cmluZztcbiAgbGFuZz86IHN0cmluZztcbn07XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBEb2N1bWVudCh7XG4gIGFzc2V0cyxcbiAgaGVhZCA9IGRlZmF1bHRIZWFkLFxuICBjaGlsZHJlbixcbiAgdGl0bGUsXG4gIHJvb3RJZCA9ICdhbmFuc2ktcm9vdCcsXG4gIGNoYXJTZXQgPSAndXRmLTgnLFxuICBzY3JpcHRzID0gbnVsbCxcbiAgZXh0cmFTdHlsZSxcbiAgbGFuZyxcbn06IFByb3BzKSB7XG4gIHJldHVybiAoXG4gICAgPGh0bWwgbGFuZz17bGFuZ30+XG4gICAgICA8aGVhZD5cbiAgICAgICAgPG1ldGEgY2hhclNldD17Y2hhclNldH0gLz5cbiAgICAgICAge2hlYWR9XG4gICAgICAgIHtleHRyYVN0eWxlfVxuICAgICAgICB7YXNzZXRzLm1hcCgoYXNzZXQsIGkpID0+IChcbiAgICAgICAgICA8bGluayBrZXk9e2l9IHJlbD1cInByZWxvYWRcIiB7Li4uYXNzZXR9IC8+XG4gICAgICAgICkpfVxuICAgICAgICA8dGl0bGU+e3RpdGxlfTwvdGl0bGU+XG4gICAgICA8L2hlYWQ+XG4gICAgICA8Ym9keT5cbiAgICAgICAgPGRpdiBpZD17cm9vdElkfT57Y2hpbGRyZW59PC9kaXY+XG4gICAgICAgIHtzY3JpcHRzfVxuICAgICAgICB7YXNzZXRzXG4gICAgICAgICAgLmZpbHRlcigoeyBocmVmIH0pID0+IGhyZWYuZW5kc1dpdGgoJy5qcycpKVxuICAgICAgICAgIC5tYXAoKHsgaHJlZiB9LCBpKSA9PiAoXG4gICAgICAgICAgICA8c2NyaXB0IGtleT17aX0gc3JjPXtocmVmfSBhc3luYyAvPlxuICAgICAgICAgICkpfVxuICAgICAgPC9ib2R5PlxuICAgIDwvaHRtbD5cbiAgKTtcbn1cbmNvbnN0IGRlZmF1bHRIZWFkID0gKFxuICA8PlxuICAgIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MVwiIC8+XG4gICAgPGxpbmtcbiAgICAgIHJlbD1cInNob3J0Y3V0IGljb25cIlxuICAgICAgaHJlZj17YCR7cHJvY2Vzcy5lbnYuV0VCUEFDS19QVUJMSUNfUEFUSCA/PyAnLyd9ZmF2aWNvbi5pY29gfVxuICAgIC8+XG4gIDwvPlxuKTtcbiIsImltcG9ydCB0eXBlIHsgUm91dGUgfSBmcm9tICdAYW5hbnNpL3JvdXRlcic7XG5pbXBvcnQgeyBSZXF1ZXN0IH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgU3RhdHNDaHVua0dyb3VwIH0gZnJvbSAnd2VicGFjayc7XG5cbmltcG9ydCB7IGJ1aWxkUG9saWN5LCBqb2luTm9uY2UsIFBvbGljeSB9IGZyb20gJy4vY3NwLmpzJztcbmltcG9ydCBEb2N1bWVudCBmcm9tICcuL0RvY3VtZW50Q29tcG9uZW50LmpzJztcbmltcG9ydCB0eXBlIHsgU2VydmVyU3BvdXQgfSBmcm9tICcuL3R5cGVzLmpzJztcblxudHlwZSBOZWVkZWROZXh0ID0ge1xuICBtYXRjaGVkUm91dGVzOiBSb3V0ZTxhbnk+W107XG4gIHRpdGxlPzogc3RyaW5nO1xuICBzY3JpcHRzPzogUmVhY3QuUmVhY3ROb2RlW107XG4gIGV4dHJhU3R5bGU/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIERvY3VtZW50U3BvdXQob3B0aW9uczoge1xuICBoZWFkPzogUmVhY3QuUmVhY3ROb2RlO1xuICB0aXRsZTogc3RyaW5nO1xuICBsYW5nPzogc3RyaW5nO1xuICByb290SWQ/OiBzdHJpbmc7XG4gIGNoYXJTZXQ/OiBzdHJpbmc7XG4gIGNzUG9saWN5PzogUG9saWN5O1xufSk6IFNlcnZlclNwb3V0PFJlY29yZDxzdHJpbmcsIHVua25vd24+LCBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgTmVlZGVkTmV4dD4ge1xuICByZXR1cm4gbmV4dCA9PiBhc3luYyBwcm9wcyA9PiB7XG4gICAgY29uc3QgbmV4dFByb3BzID0gYXdhaXQgbmV4dChwcm9wcyk7XG5cbiAgICBjb25zdCBwdWJsaWNQYXRoID0gcHJvcHMuY2xpZW50TWFuaWZlc3QucHVibGljUGF0aDtcblxuICAgIGlmIChcbiAgICAgIE9iamVjdC5rZXlzKHByb3BzLmNsaWVudE1hbmlmZXN0Py5lbnRyeXBvaW50cyA/PyB7fSkubGVuZ3RoIDwgMSB8fFxuICAgICAgcHVibGljUGF0aCA9PT0gdW5kZWZpbmVkXG4gICAgKVxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdNYW5pZmVzdCBtaXNzaW5nIGVudHJpZXMgbmVlZGVkJyk7XG5cbiAgICAvLyBUT0RPOiBjb25zaWRlciB1c2luZyB0aGlzIHBhY2thZ2UgZm9yIGJ1aWxkIHN0YXRzIGluIGZ1dHVyZTpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZmFjZWJvb2svcmVhY3QvdHJlZS9tYWluL3BhY2thZ2VzL3JlYWN0LXNlcnZlci1kb20td2VicGFja1xuICAgIGNvbnN0IGFzc2V0TWFwID0gKGFzc2V0czogeyBuYW1lOiBzdHJpbmc7IHNpemU/OiBudW1iZXIgfVtdKSA9PlxuICAgICAgYXNzZXRzLm1hcCgoeyBuYW1lIH0pID0+IGAke3B1YmxpY1BhdGh9JHtuYW1lfWApO1xuXG4gICAgY29uc3QgYXNzZXRMaXN0OiBzdHJpbmdbXSA9IFtdO1xuICAgIE9iamVjdC52YWx1ZXMocHJvcHMuY2xpZW50TWFuaWZlc3Q/LmVudHJ5cG9pbnRzID8/IHt9KS5mb3JFYWNoKFxuICAgICAgZW50cnlwb2ludCA9PiB7XG4gICAgICAgIGFzc2V0TGlzdC5wdXNoKC4uLmFzc2V0TWFwKGVudHJ5cG9pbnQuYXNzZXRzID8/IFtdKSk7XG4gICAgICB9LFxuICAgICk7XG4gICAgbmV3IFNldChcbiAgICAgIGFzc2V0TWFwKFxuICAgICAgICBPYmplY3QudmFsdWVzKHByb3BzLmNsaWVudE1hbmlmZXN0Lm5hbWVkQ2h1bmtHcm91cHMgPz8ge30pXG4gICAgICAgICAgLmZpbHRlcigoeyBuYW1lIH0pID0+XG4gICAgICAgICAgICBuZXh0UHJvcHMubWF0Y2hlZFJvdXRlcy5zb21lKHJvdXRlID0+IG5hbWU/LmluY2x1ZGVzKHJvdXRlLm5hbWUpKSxcbiAgICAgICAgICApXG4gICAgICAgICAgLmZsYXRNYXAoY2h1bmsgPT4gW1xuICAgICAgICAgICAgLi4uKGNodW5rLmFzc2V0cyA/PyBbXSksXG4gICAgICAgICAgICAvLyBhbnkgY2h1bmsgcHJlbG9hZHNcbiAgICAgICAgICAgIC4uLmNoaWxkcmVuQXNzZXRzKGNodW5rKSxcbiAgICAgICAgICBdKSxcbiAgICAgICksXG4gICAgKS5mb3JFYWNoKGFzc2V0ID0+IGFzc2V0TGlzdC5wdXNoKGFzc2V0KSk7XG5cbiAgICAvLyBmaW5kIGFkZGl0aW9uYWwgYXNzZXRzIHRvIHByZWxvYWQgYmFzZWQgb24gbWF0Y2hlZCByb3V0ZVxuICAgIGNvbnN0IGFzc2V0czoge1xuICAgICAgaHJlZjogc3RyaW5nO1xuICAgICAgYXM/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgICByZWw/OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgfVtdID0gYXNzZXRMaXN0XG4gICAgICAuZmlsdGVyKGFzc2V0ID0+ICFhc3NldC5lbmRzV2l0aCgnLmhvdC11cGRhdGUuanMnKSlcbiAgICAgIC5tYXAoYXNzZXQgPT5cbiAgICAgICAgYXNzZXQuZW5kc1dpdGgoJy5jc3MnKSA/IHsgaHJlZjogYXNzZXQsIHJlbDogJ3N0eWxlc2hlZXQnIH1cbiAgICAgICAgOiBhc3NldC5lbmRzV2l0aCgnLmpzJykgPyB7IGhyZWY6IGFzc2V0LCBhczogJ3NjcmlwdCcgfVxuICAgICAgICA6IHsgaHJlZjogYXNzZXQgfSxcbiAgICAgICk7XG5cbiAgICBpZiAob3B0aW9ucy5jc1BvbGljeSkge1xuICAgICAgY29uc3QgaHR0cEVxdWl2ID1cbiAgICAgICAgcHJvY2Vzcy5lbnYuTk9ERV9FTlYgPT09ICdwcm9kdWN0aW9uJyA/XG4gICAgICAgICAgJ0NvbnRlbnQtU2VjdXJpdHktUG9saWN5J1xuICAgICAgICA6ICdDb250ZW50LVNlY3VyaXR5LVBvbGljeS1SZXBvcnQtT25seSc7XG5cbiAgICAgIHByb3BzLnJlcy5zZXRIZWFkZXIoXG4gICAgICAgIGh0dHBFcXVpdixcbiAgICAgICAgYnVpbGRQb2xpY3koam9pbk5vbmNlKG9wdGlvbnMuY3NQb2xpY3ksIHByb3BzLm5vbmNlKSksXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICAuLi5uZXh0UHJvcHMsXG4gICAgICBhcHA6IChcbiAgICAgICAgPERvY3VtZW50XG4gICAgICAgICAgey4uLm9wdGlvbnN9XG4gICAgICAgICAgZXh0cmFTdHlsZT17bmV4dFByb3BzLmV4dHJhU3R5bGV9XG4gICAgICAgICAgdGl0bGU9e25leHRQcm9wcy50aXRsZSA/PyBvcHRpb25zLnRpdGxlfVxuICAgICAgICAgIGFzc2V0cz17YXNzZXRzfVxuICAgICAgICAgIHJvb3RJZD17b3B0aW9ucy5yb290SWR9XG4gICAgICAgICAgc2NyaXB0cz17bmV4dFByb3BzLnNjcmlwdHN9XG4gICAgICAgID5cbiAgICAgICAgICB7bmV4dFByb3BzLmFwcH1cbiAgICAgICAgPC9Eb2N1bWVudD5cbiAgICAgICksXG4gICAgfTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gY2hpbGRyZW5Bc3NldHMoY2h1bms6IFN0YXRzQ2h1bmtHcm91cCkge1xuICByZXR1cm4gY2h1bmsuY2hpbGRyZW4gP1xuICAgICAgT2JqZWN0LnZhbHVlcyhjaHVuay5jaGlsZHJlbikuZmxhdE1hcChwcmVsb2FkID0+XG4gICAgICAgIHByZWxvYWQuZmxhdE1hcChjID0+IGMuYXNzZXRzID8/IFtdKSxcbiAgICAgIClcbiAgICA6IFtdO1xufVxuIiwiaW1wb3J0IHtcbiAgdHlwZSBDb250cm9sbGVyLFxuICB0eXBlIE1hbmFnZXIsXG4gIHR5cGUgU3RhdGUsXG4gIHR5cGUgU3RvcmUsXG59IGZyb20gJ0BkYXRhLWNsaWVudC9yZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgU2VydmVyU3BvdXQgfSBmcm9tICcuL3R5cGVzLmpzJztcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gZGF0YUNsaWVudFNwb3V0KFxuICBvcHRpb25zOiB7XG4gICAgZ2V0TWFuYWdlcnM/OiAoKSA9PiBNYW5hZ2VyW107XG4gIH0gPSB7fSxcbik6IFNlcnZlclNwb3V0PFxuICBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgeyBjb250cm9sbGVyOiBDb250cm9sbGVyIH0gJiB7IHN0b3JlOiBTdG9yZTxTdGF0ZTx1bmtub3duPj4gfSxcbiAgeyBpbml0RGF0YT86IFJlY29yZDxzdHJpbmcsICgpID0+IHVua25vd24+OyBzY3JpcHRzPzogUmVhY3QuUmVhY3ROb2RlW10gfVxuPiB7XG4gIHJldHVybiBuZXh0ID0+IGFzeW5jIHByb3BzID0+IHtcbiAgICBjb25zdCBtYW5hZ2VycyA9IG9wdGlvbnM/LmdldE1hbmFnZXJzPy4oKSA/PyBbXG4gICAgICBuZXcgKGF3YWl0IGltcG9ydCgnQGRhdGEtY2xpZW50L3JlYWN0JykpLk5ldHdvcmtNYW5hZ2VyKCksXG4gICAgXTtcbiAgICBjb25zdCB7IGNyZWF0ZVBlcnNpc3RlZFN0b3JlIH0gPSBhd2FpdCBpbXBvcnQoJ0BkYXRhLWNsaWVudC9yZWFjdC9zc3InKTtcbiAgICBjb25zdCBbU2VydmVyRGF0YVByb3ZpZGVyLCB1c2VSZWFkeUNhY2hlU3RhdGUsIGNvbnRyb2xsZXIsIHN0b3JlXSA9XG4gICAgICBjcmVhdGVQZXJzaXN0ZWRTdG9yZShtYW5hZ2Vycyk7XG5cbiAgICBjb25zdCBuZXh0UHJvcHMgPSBhd2FpdCBuZXh0KHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgY29udHJvbGxlcixcbiAgICAgIHN0b3JlLFxuICAgIH0pO1xuICAgIHJldHVybiB7XG4gICAgICAuLi5uZXh0UHJvcHMsXG4gICAgICBpbml0RGF0YToge1xuICAgICAgICAuLi5uZXh0UHJvcHMuaW5pdERhdGEsXG4gICAgICAgIGRhdGFjbGllbnQ6IHVzZVJlYWR5Q2FjaGVTdGF0ZSxcbiAgICAgIH0sXG4gICAgICBhcHA6IDxTZXJ2ZXJEYXRhUHJvdmlkZXI+e25leHRQcm9wcy5hcHB9PC9TZXJ2ZXJEYXRhUHJvdmlkZXI+LFxuICAgICAgLy8gVE9ETzogZmlndXJlIG91dCBob3cgdG8gb25seSBpbmplY3QgaW4gbmV4dCBhbmQgbm90IGhhdmUgdG8gYWxzbyBwdXQgaGVyZVxuICAgICAgY29udHJvbGxlcixcbiAgICAgIHN0b3JlLFxuICAgIH07XG4gIH07XG59XG4iLCJpbXBvcnQgUmVhY3QsIHsgdHlwZSBKU1ggfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgU2VydmVyU3BvdXQgfSBmcm9tICcuL3R5cGVzLmpzJztcblxudHlwZSBOZWVkZWROZXh0ID0ge1xuICBpbml0RGF0YT86IFJlY29yZDxzdHJpbmcsICgpID0+IHVua25vd24+O1xuICBzY3JpcHRzPzogUmVhY3QuUmVhY3ROb2RlW107XG4gIGV4dHJhU3R5bGU/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGFudGRTcG91dCgpOiBTZXJ2ZXJTcG91dDxcbiAgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBOZWVkZWROZXh0XG4+IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IHsgY3JlYXRlQ2FjaGUsIGV4dHJhY3RTdHlsZSwgU3R5bGVQcm92aWRlciB9ID0gYXdhaXQgaW1wb3J0KFxuICAgICAgLyogd2VicGFja0lnbm9yZTogdHJ1ZSAqLyAnQGFudC1kZXNpZ24vY3NzaW5qcydcbiAgICApO1xuICAgIGNvbnN0IGNhY2hlID0gY3JlYXRlQ2FjaGUoKTtcbiAgICBjb25zdCBBbnRkU2hlZXRzID0gKCk6IEpTWC5FbGVtZW50ID0+IHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxzY3JpcHRcbiAgICAgICAgICBkYW5nZXJvdXNseVNldElubmVySFRNTD17e1xuICAgICAgICAgICAgX19odG1sOiBgPC9zY3JpcHQ+JHtleHRyYWN0U3R5bGUoY2FjaGUpfTxzY3JpcHQ+YCxcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgY29uc3QgbmV4dFByb3BzID0gYXdhaXQgbmV4dChwcm9wcyk7XG5cbiAgICBjb25zdCBzY3JpcHRzOiBSZWFjdC5SZWFjdE5vZGVbXSA9IG5leHRQcm9wcy5zY3JpcHRzID8/IFtdO1xuXG4gICAgLy8gdW5mb3J0dW5hdGVseSB3ZSBoYXZlIHRvIGluamVjdCB0aGlzIGFmdGVyIHRoZSBlbnRpcmUgY29udGVudCBoYXMgc3RyZWFtZWQgaW4gb3IgaXQgZG9lc24ndCBjb3JyZWN0bHkgcG9wdWxhdGVcbiAgICAvLyBzZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbnQtZGVzaWduL2Nzc2luanMvaXNzdWVzLzc5XG4gICAgc2NyaXB0cy5wdXNoKDxBbnRkU2hlZXRzIGtleT1cImFudGQtc2hlZXRzXCIgLz4pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5leHRQcm9wcyxcbiAgICAgIGFwcDogPFN0eWxlUHJvdmlkZXIgY2FjaGU9e2NhY2hlfT57bmV4dFByb3BzLmFwcH08L1N0eWxlUHJvdmlkZXI+LFxuICAgICAgc2NyaXB0cyxcbiAgICB9O1xuICB9O1xufVxuIiwiY29uc3QgX19XRUJQQUNLX05BTUVTUEFDRV9PQkpFQ1RfXyA9IHJlcXVpcmUoXCJAYW5hbnNpL3JvdXRlclwiKTsiLCJjb25zdCBfX1dFQlBBQ0tfTkFNRVNQQUNFX09CSkVDVF9fID0gcmVxdWlyZShcImhpc3RvcnlcIik7IiwiaW1wb3J0IHsgUm91dGUsIFJvdXRlUHJvdmlkZXIsIFJvdXRlQ29udHJvbGxlciB9IGZyb20gJ0BhbmFuc2kvcm91dGVyJztcbmltcG9ydCB7IGNyZWF0ZU1lbW9yeUhpc3RvcnkgfSBmcm9tICdoaXN0b3J5JztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgQ3JlYXRlUm91dGVyLCBTZXJ2ZXJTcG91dCB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiByb3V0ZXJTcG91dDxSZXNvbHZlV2l0aD4ob3B0aW9uczoge1xuICByZXNvbHZlV2l0aD86IGFueTtcbiAgdXNlUmVzb2x2ZVdpdGg6ICgpID0+IFJlc29sdmVXaXRoO1xuICBjcmVhdGVSb3V0ZXI6IENyZWF0ZVJvdXRlcjxSZXNvbHZlV2l0aD47XG59KTogU2VydmVyU3BvdXQ8XG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICB7XG4gICAgbWF0Y2hlZFJvdXRlczogUm91dGU8UmVzb2x2ZVdpdGg+W107XG4gICAgc2VhcmNoUGFyYW1zOiBVUkxTZWFyY2hQYXJhbXM7XG4gIH0gJiB7XG4gICAgcm91dGVyOiBSb3V0ZUNvbnRyb2xsZXI8Um91dGU8UmVzb2x2ZVdpdGgsIGFueT4+O1xuICB9XG4+IHtcbiAgY29uc3QgY3JlYXRlUm91dGVDb21wb25lbnQgPSAoXG4gICAgcm91dGVyOiBSb3V0ZUNvbnRyb2xsZXI8Um91dGU8UmVzb2x2ZVdpdGgsIGFueT4+LFxuICApID0+XG4gICAgZnVuY3Rpb24gUm91dGVyKHsgY2hpbGRyZW4gfTogeyBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlIH0pIHtcbiAgICAgIGNvbnN0IHJlc29sdmVXaXRoID0gb3B0aW9ucy51c2VSZXNvbHZlV2l0aCgpO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8Um91dGVQcm92aWRlciByb3V0ZXI9e3JvdXRlcn0gcmVzb2x2ZVdpdGg9e3Jlc29sdmVXaXRofT5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgIDwvUm91dGVQcm92aWRlcj5cbiAgICAgICk7XG4gICAgfTtcblxuICByZXR1cm4gbmV4dCA9PiBhc3luYyBwcm9wcyA9PiB7XG4gICAgY29uc3QgdXJsID0gcHJvcHMucmVxLnVybCB8fCAnJztcbiAgICBjb25zdCBwYXJ0cyA9IHVybC5zcGxpdCgnPycsIDIpO1xuICAgIGNvbnN0IHNlYXJjaFBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMocGFydHMubGVuZ3RoIDwgMiA/ICcnIDogcGFydHNbMV0pO1xuICAgIGNvbnN0IHJvdXRlciA9IG9wdGlvbnMuY3JlYXRlUm91dGVyKFxuICAgICAgY3JlYXRlTWVtb3J5SGlzdG9yeSh7IGluaXRpYWxFbnRyaWVzOiBbdXJsXSB9KSxcbiAgICApO1xuICAgIGNvbnN0IG1hdGNoZWRSb3V0ZXM6IFJvdXRlPFJlc29sdmVXaXRoPltdID0gcm91dGVyLmdldE1hdGNoZWRSb3V0ZXModXJsKTtcblxuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQoe1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBtYXRjaGVkUm91dGVzLFxuICAgICAgcm91dGVyLFxuICAgICAgc2VhcmNoUGFyYW1zLFxuICAgIH0pO1xuXG4gICAgY29uc3QgUm91dGVyID0gY3JlYXRlUm91dGVDb21wb25lbnQocm91dGVyKTtcblxuICAgIHJldHVybiB7XG4gICAgICAuLi5uZXh0UHJvcHMsXG4gICAgICBhcHA6IDxSb3V0ZXI+e25leHRQcm9wcy5hcHB9PC9Sb3V0ZXI+LFxuICAgICAgLy8gVE9ETzogZmlndXJlIG91dCBob3cgdG8gb25seSBpbmplY3QgaW4gbmV4dCBhbmQgbm90IGhhdmUgdG8gYWxzbyBwdXQgaGVyZVxuICAgICAgbWF0Y2hlZFJvdXRlcyxcbiAgICAgIHJvdXRlcixcbiAgICAgIHNlYXJjaFBhcmFtcyxcbiAgICB9O1xuICB9O1xufVxuIiwiaW1wb3J0IHsgUm91dGUgfSBmcm9tICdAYW5hbnNpL3JvdXRlcic7XG5cbmltcG9ydCB0eXBlIHsgUmVzb2x2ZVByb3BzLCBTZXJ2ZXJQcm9wcyB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG50eXBlIE5lZWRlZFByb3BzPFJvdXRlV2l0aD4gPSB7XG4gIG1hdGNoZWRSb3V0ZXM6IFJvdXRlPFJvdXRlV2l0aD5bXTtcbiAgc2VhcmNoUGFyYW1zOiBVUkxTZWFyY2hQYXJhbXM7XG59ICYgUmVzb2x2ZVByb3BzO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBwcmVmZXRjaFNwb3V0PEYgZXh0ZW5kcyBzdHJpbmc+KGZpZWxkOiBGKSB7XG4gIHJldHVybiBmdW5jdGlvbiA8XG4gICAgUm91dGVXaXRoLFxuICAgIE4gZXh0ZW5kcyBOZWVkZWRQcm9wczxSb3V0ZVdpdGg+LFxuICAgIEkgZXh0ZW5kcyBTZXJ2ZXJQcm9wcyxcbiAgPihcbiAgICBuZXh0OiAocHJvcHM6IEkpID0+IFByb21pc2U8XG4gICAgICB7XG4gICAgICAgIFtLIGluIEZdOiBSb3V0ZVdpdGg7XG4gICAgICB9ICYgTlxuICAgID4sXG4gICkge1xuICAgIHJldHVybiBhc3luYyAocHJvcHM6IEkpID0+IHtcbiAgICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCB0b0ZldGNoOiBQcm9taXNlPHVua25vd24+W10gPSBbXTtcbiAgICAgICAgbmV4dFByb3BzLm1hdGNoZWRSb3V0ZXMuZm9yRWFjaChyb3V0ZSA9PiB7XG4gICAgICAgICAgLy8gUHJlbG9hZCBsYXp5IGNvbXBvbmVudCBzbyBpdCdzIHJlYWR5IGZvciBTU1IgcmVuZGVyXG4gICAgICAgICAgaWYgKHR5cGVvZiByb3V0ZS5jb21wb25lbnQ/LnByZWxvYWQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHRvRmV0Y2gucHVzaChyb3V0ZS5jb21wb25lbnQucHJlbG9hZCgpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHR5cGVvZiByb3V0ZS5yZXNvbHZlRGF0YSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgdG9GZXRjaC5wdXNoKFxuICAgICAgICAgICAgICByb3V0ZS5yZXNvbHZlRGF0YShcbiAgICAgICAgICAgICAgICBuZXh0UHJvcHNbZmllbGRdLFxuICAgICAgICAgICAgICAgIHJvdXRlLFxuICAgICAgICAgICAgICAgIG5leHRQcm9wcy5zZWFyY2hQYXJhbXMsXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKHRvRmV0Y2gpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIG5leHRQcm9wcztcbiAgICB9O1xuICB9O1xufVxuIiwiaW1wb3J0IFJlYWN0LCB7IFN1c3BlbnNlIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgdHlwZSB7IFNlcnZlclNwb3V0IH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbnR5cGUgTmVlZGVkTmV4dCA9IHtcbiAgaW5pdERhdGE/OiBSZWNvcmQ8c3RyaW5nLCAoKSA9PiB1bmtub3duPjtcbiAgc2NyaXB0cz86IFJlYWN0LlJlYWN0Tm9kZVtdO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gSlNPTlNwb3V0KHtcbiAgaWQgPSAnYW5hbnNpLWpzb24nLFxufTogeyBpZD86IHN0cmluZyB9ID0ge30pOiBTZXJ2ZXJTcG91dDxcbiAgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBOZWVkZWROZXh0XG4+IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgY29uc3Qgc2NyaXB0czogUmVhY3QuUmVhY3ROb2RlW10gPSBuZXh0UHJvcHMuc2NyaXB0cyA/PyBbXTtcblxuICAgIE9iamVjdC5lbnRyaWVzKG5leHRQcm9wcy5pbml0RGF0YSA/PyB7fSkuZm9yRWFjaCgoW2tleSwgdXNlRGF0YV0pID0+IHtcbiAgICAgIGNvbnN0IGdsb2JhbElkID0gYCR7aWR9LiR7a2V5fWA7XG4gICAgICBjb25zdCBTY3JpcHQgPSAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGRhdGE6IGFueSA9IHVzZURhdGEoKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCBlbmNvZGVkID0gSlNPTi5zdHJpbmdpZnkoZGF0YSk7XG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxzY3JpcHRcbiAgICAgICAgICAgICAgaWQ9e2dsb2JhbElkfVxuICAgICAgICAgICAgICB0eXBlPVwiYXBwbGljYXRpb24vanNvblwiXG4gICAgICAgICAgICAgIGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MPXt7XG4gICAgICAgICAgICAgICAgX19odG1sOiBlbmNvZGVkLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBub25jZT17cHJvcHMubm9uY2V9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAvLyBUT0RPOiBVc2UgdW5pZmllZCBsb2dnaW5nXG4gICAgICAgICAgY29uc29sZS5lcnJvcihgRXJyb3Igc2VyaWFsaXppbmcganNvbiBmb3IgJHtrZXl9YCk7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihlKTtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIHNjcmlwdHMucHVzaChcbiAgICAgICAgPFN1c3BlbnNlIGtleT17Z2xvYmFsSWR9PlxuICAgICAgICAgIDxTY3JpcHQgLz5cbiAgICAgICAgPC9TdXNwZW5zZT4sXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5leHRQcm9wcyxcbiAgICAgIHNjcmlwdHMsXG4gICAgfTtcbiAgfTtcbn1cbiIsImltcG9ydCB0eXBlIHsgSlNYIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBTZXJ2ZXJQcm9wcyB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG5jb25zdCBhcHBTcG91dCA9XG4gIChhcHA6IEpTWC5FbGVtZW50KSA9PlxuICA8UCBleHRlbmRzIFNlcnZlclByb3BzPihwcm9wczogUCkgPT5cbiAgICBQcm9taXNlLnJlc29sdmUoeyAuLi5wcm9wcywgYXBwIH0pO1xuXG5leHBvcnQgZGVmYXVsdCBhcHBTcG91dDtcbiIsImltcG9ydCB7IGNyZWF0ZUNvbnRleHQsIHVzZUNvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmF2aWdhdG9yUHJvcGVydGllcyB7XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG4gIGxhbmd1YWdlczogcmVhZG9ubHkgc3RyaW5nW107XG59XG5cbmV4cG9ydCBjb25zdCBOYXZpZ2F0b3JDb250ZXh0ID0gY3JlYXRlQ29udGV4dDxOYXZpZ2F0b3JQcm9wZXJ0aWVzIHwgdW5kZWZpbmVkPihcbiAgdW5kZWZpbmVkLFxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZU5hdmlnYXRvcigpOiBOYXZpZ2F0b3JQcm9wZXJ0aWVzIHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoTmF2aWdhdG9yQ29udGV4dCk7XG4gIGlmIChjb250ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3VzZU5hdmlnYXRvciBtdXN0IGJlIHVzZWQgd2l0aGluIGEgTmF2aWdhdG9yUHJvdmlkZXInKTtcbiAgfVxuICByZXR1cm4gY29udGV4dDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlQWNjZXB0TGFuZ3VhZ2UoaGVhZGVyOiBzdHJpbmcgfCB1bmRlZmluZWQpOiB7XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG4gIGxhbmd1YWdlczogcmVhZG9ubHkgc3RyaW5nW107XG59IHtcbiAgaWYgKCFoZWFkZXIpIHtcbiAgICByZXR1cm4geyBsYW5ndWFnZTogJ2VuJywgbGFuZ3VhZ2VzOiBbJ2VuJ10gfTtcbiAgfVxuXG4gIGNvbnN0IHBhcnNlZCA9IGhlYWRlclxuICAgIC5zcGxpdCgnLCcpXG4gICAgLm1hcChwYXJ0ID0+IHtcbiAgICAgIGNvbnN0IFtsYW5nLCBxUGFydF0gPSBwYXJ0LnRyaW0oKS5zcGxpdCgnOycpO1xuICAgICAgY29uc3QgcSA9IHFQYXJ0ID8gcGFyc2VGbG9hdChxUGFydC5yZXBsYWNlKCdxPScsICcnKSkgOiAxO1xuICAgICAgcmV0dXJuIHsgbGFuZzogbGFuZy50cmltKCksIHEgfTtcbiAgICB9KVxuICAgIC5zb3J0KChhLCBiKSA9PiBiLnEgLSBhLnEpXG4gICAgLm1hcCgoeyBsYW5nIH0pID0+IGxhbmcpO1xuXG4gIHJldHVybiB7XG4gICAgbGFuZ3VhZ2U6IHBhcnNlZFswXSA/PyAnZW4nLFxuICAgIGxhbmd1YWdlczogcGFyc2VkLmxlbmd0aCA+IDAgPyBwYXJzZWQgOiBbJ2VuJ10sXG4gIH07XG59XG4iLCJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBOYXZpZ2F0b3JDb250ZXh0LCBwYXJzZUFjY2VwdExhbmd1YWdlIH0gZnJvbSAnLi9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5pbXBvcnQgdHlwZSB7IFNlcnZlclNwb3V0IH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbnR5cGUgTmVlZGVkTmV4dCA9IHtcbiAgaW5pdERhdGE/OiBSZWNvcmQ8c3RyaW5nLCAoKSA9PiB1bmtub3duPjtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIG5hdmlnYXRvclNwb3V0KCk6IFNlcnZlclNwb3V0PFxuICBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgeyBsYW5ndWFnZTogc3RyaW5nOyBsYW5ndWFnZXM6IHJlYWRvbmx5IHN0cmluZ1tdIH0sXG4gIE5lZWRlZE5leHRcbj4ge1xuICByZXR1cm4gbmV4dCA9PiBhc3luYyBwcm9wcyA9PiB7XG4gICAgY29uc3QgYWNjZXB0TGFuZ3VhZ2UgPSBwcm9wcy5yZXEuaGVhZGVyc1snYWNjZXB0LWxhbmd1YWdlJ107XG4gICAgY29uc3QgaGVhZGVyID1cbiAgICAgIHR5cGVvZiBhY2NlcHRMYW5ndWFnZSA9PT0gJ3N0cmluZycgPyBhY2NlcHRMYW5ndWFnZSA6IGFjY2VwdExhbmd1YWdlPy5bMF07XG4gICAgY29uc3QgbmF2aWdhdG9yUHJvcHMgPSBwYXJzZUFjY2VwdExhbmd1YWdlKGhlYWRlcik7XG5cbiAgICBjb25zdCBuZXh0UHJvcHMgPSBhd2FpdCBuZXh0KHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgLi4ubmF2aWdhdG9yUHJvcHMsXG4gICAgfSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4ubmV4dFByb3BzLFxuICAgICAgLi4ubmF2aWdhdG9yUHJvcHMsXG4gICAgICBpbml0RGF0YToge1xuICAgICAgICAuLi5uZXh0UHJvcHMuaW5pdERhdGEsXG4gICAgICAgIG5hdmlnYXRvcjogKCkgPT4gbmF2aWdhdG9yUHJvcHMsXG4gICAgICB9LFxuICAgICAgYXBwOiAoXG4gICAgICAgIDxOYXZpZ2F0b3JDb250ZXh0IHZhbHVlPXtuYXZpZ2F0b3JQcm9wc30+XG4gICAgICAgICAge25leHRQcm9wcy5hcHB9XG4gICAgICAgIDwvTmF2aWdhdG9yQ29udGV4dD5cbiAgICAgICksXG4gICAgfTtcbiAgfTtcbn1cbiIsImV4cG9ydCB7IGRlZmF1bHQgYXMgbGF5U3BvdXRzIH0gZnJvbSAnLi9sYXlTcG91dHMuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBkb2N1bWVudFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvZG9jdW1lbnQuc2VydmVyLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZGF0YUNsaWVudFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvZGF0YUNsaWVudC5zZXJ2ZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBhbnRkU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9hbnRkLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHJvdXRlclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvcm91dGVyLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHByZWZldGNoU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9wcmVmZXRjaC5zZXJ2ZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBKU09OU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9qc29uLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGFwcFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvYXBwLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIG5hdmlnYXRvclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvbmF2aWdhdG9yLnNlcnZlci5qcyc7XG5leHBvcnQgeyB1c2VOYXZpZ2F0b3IgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5leHBvcnQgdHlwZSB7IE5hdmlnYXRvclByb3BlcnRpZXMgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5leHBvcnQgdHlwZSB7IFNlcnZlclByb3BzIH0gZnJvbSAnLi9zcG91dHMvdHlwZXMuanMnO1xuZXhwb3J0IHR5cGUgeyBTZXJ2ZXJTcG91dCBhcyBTcG91dCB9IGZyb20gJy4vc3BvdXRzL3R5cGVzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2NyaXB0cy90eXBlcy5qcyc7XG4iXSwibmFtZXMiOlsiZ2V0RXJyb3JTdGF0dXMiLCJlcnJvciIsInN0YXR1cyIsInBhcnNlZCIsInBhcnNlSW50IiwiaXNOYU4iLCJlc2NhcGVIdG1sIiwic3RyIiwicmVwbGFjZSIsInJlbmRlckVycm9yUGFnZSIsInVybCIsInN0YXR1c0NvZGUiLCJvcHRpb25zIiwiZXJyb3JNZXNzYWdlIiwiRXJyb3IiLCJtZXNzYWdlIiwiU3RyaW5nIiwic3RhY2siLCJ1bmRlZmluZWQiLCJzaG93U3RhY2siLCJoaW50IiwiYmFkZ2UiLCJjcnlwdG8iLCJyZW5kZXJUb1BpcGVhYmxlU3RyZWFtIiwicmVhY3RSZW5kZXIiLCJsYXlTcG91dHMiLCJzcG91dHMiLCJ0aW1lb3V0TVMiLCJvbkVycm9yIiwicmVuZGVyIiwiY2xpZW50TWFuaWZlc3QiLCJyZXEiLCJyZXMiLCJub25jZSIsInJhbmRvbUJ5dGVzIiwidG9TdHJpbmciLCJhcHAiLCJkaWRFcnJvciIsImxhc3RFcnJvciIsInBpcGUiLCJhYm9ydCIsIm9uU2hlbGxSZWFkeSIsInNldEhlYWRlciIsIm9uU2hlbGxFcnJvciIsImUiLCJjb25zb2xlIiwic2V0VGltZW91dCIsImJ1aWxkUG9saWN5IiwicG9saWN5T2JqIiwiT2JqZWN0Iiwia2V5cyIsIm1hcCIsImtleSIsInZhbCIsIkFycmF5IiwiaXNBcnJheSIsIlNldCIsInZhbHVlcyIsImZpbHRlciIsInYiLCJqb2luIiwiaW5jbHVkZXMiLCJuZXdWYWwiLCJ0cmltIiwiam9pbk5vbmNlIiwicG9saWN5IiwiRG9jdW1lbnQiLCJhc3NldHMiLCJoZWFkIiwiZGVmYXVsdEhlYWQiLCJjaGlsZHJlbiIsInRpdGxlIiwicm9vdElkIiwiY2hhclNldCIsInNjcmlwdHMiLCJleHRyYVN0eWxlIiwibGFuZyIsIl9qc3hzIiwiX2pzeCIsImFzc2V0IiwiaSIsInJlbCIsImlkIiwiaHJlZiIsImVuZHNXaXRoIiwic3JjIiwiYXN5bmMiLCJfRnJhZ21lbnQiLCJuYW1lIiwiY29udGVudCIsInByb2Nlc3MiLCJlbnYiLCJXRUJQQUNLX1BVQkxJQ19QQVRIIiwiUmVhY3QiLCJqc3giLCJEb2N1bWVudFNwb3V0IiwibmV4dCIsInByb3BzIiwibmV4dFByb3BzIiwicHVibGljUGF0aCIsImVudHJ5cG9pbnRzIiwibGVuZ3RoIiwiYXNzZXRNYXAiLCJhc3NldExpc3QiLCJmb3JFYWNoIiwiZW50cnlwb2ludCIsInB1c2giLCJuYW1lZENodW5rR3JvdXBzIiwibWF0Y2hlZFJvdXRlcyIsInNvbWUiLCJyb3V0ZSIsImZsYXRNYXAiLCJjaHVuayIsImNoaWxkcmVuQXNzZXRzIiwiYXMiLCJjc1BvbGljeSIsImh0dHBFcXVpdiIsIk5PREVfRU5WIiwicHJlbG9hZCIsImMiLCJkYXRhQ2xpZW50U3BvdXQiLCJtYW5hZ2VycyIsImdldE1hbmFnZXJzIiwiTmV0d29ya01hbmFnZXIiLCJjcmVhdGVQZXJzaXN0ZWRTdG9yZSIsIlNlcnZlckRhdGFQcm92aWRlciIsInVzZVJlYWR5Q2FjaGVTdGF0ZSIsImNvbnRyb2xsZXIiLCJzdG9yZSIsImluaXREYXRhIiwiZGF0YWNsaWVudCIsImFudGRTcG91dCIsImNyZWF0ZUNhY2hlIiwiZXh0cmFjdFN0eWxlIiwiU3R5bGVQcm92aWRlciIsImNhY2hlIiwiQW50ZFNoZWV0cyIsImRhbmdlcm91c2x5U2V0SW5uZXJIVE1MIiwiX19odG1sIiwiUm91dGVQcm92aWRlciIsImNyZWF0ZU1lbW9yeUhpc3RvcnkiLCJyb3V0ZXJTcG91dCIsImNyZWF0ZVJvdXRlQ29tcG9uZW50Iiwicm91dGVyIiwiUm91dGVyIiwicmVzb2x2ZVdpdGgiLCJ1c2VSZXNvbHZlV2l0aCIsInBhcnRzIiwic3BsaXQiLCJzZWFyY2hQYXJhbXMiLCJVUkxTZWFyY2hQYXJhbXMiLCJjcmVhdGVSb3V0ZXIiLCJpbml0aWFsRW50cmllcyIsImdldE1hdGNoZWRSb3V0ZXMiLCJwcmVmZXRjaFNwb3V0IiwiZmllbGQiLCJ0b0ZldGNoIiwiY29tcG9uZW50IiwicmVzb2x2ZURhdGEiLCJQcm9taXNlIiwiYWxsIiwiU3VzcGVuc2UiLCJKU09OU3BvdXQiLCJlbnRyaWVzIiwidXNlRGF0YSIsImdsb2JhbElkIiwiU2NyaXB0IiwiZGF0YSIsImVuY29kZWQiLCJKU09OIiwic3RyaW5naWZ5IiwidHlwZSIsImFwcFNwb3V0IiwicmVzb2x2ZSIsImNyZWF0ZUNvbnRleHQiLCJ1c2VDb250ZXh0IiwiTmF2aWdhdG9yQ29udGV4dCIsInVzZU5hdmlnYXRvciIsImNvbnRleHQiLCJwYXJzZUFjY2VwdExhbmd1YWdlIiwiaGVhZGVyIiwibGFuZ3VhZ2UiLCJsYW5ndWFnZXMiLCJwYXJ0IiwicVBhcnQiLCJxIiwicGFyc2VGbG9hdCIsInNvcnQiLCJhIiwiYiIsIm5hdmlnYXRvclNwb3V0IiwiYWNjZXB0TGFuZ3VhZ2UiLCJoZWFkZXJzIiwibmF2aWdhdG9yUHJvcHMiLCJuYXZpZ2F0b3IiLCJ2YWx1ZSIsImRlZmF1bHQiLCJkb2N1bWVudFNwb3V0Il0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=
637
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,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Q0gsQ0FBQztBQUNILEM7O0FDdkNzRDtBQUlqQjtBQUNzQztBQUNSO0FBQ0k7QUFDUjtBQUNGO0FBQ1k7QUFDWiIsInNvdXJjZXMiOlsid2VicGFjazovL0BhbmFuc2kvY29yZS9leHRlcm5hbCBjb21tb25qcyBcIkBkYXRhLWNsaWVudC9yZWFjdFwiIiwid2VicGFjazovL0BhbmFuc2kvY29yZS9leHRlcm5hbCBjb21tb25qcyBcIkBkYXRhLWNsaWVudC9yZWFjdC9zc3JcIiIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvd2VicGFjay9ib290c3RyYXAiLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlL3dlYnBhY2svcnVudGltZS9jb21wYXQgZ2V0IGRlZmF1bHQgZXhwb3J0Iiwid2VicGFjazovL0BhbmFuc2kvY29yZS93ZWJwYWNrL3J1bnRpbWUvY3JlYXRlIGZha2UgbmFtZXNwYWNlIG9iamVjdCIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvd2VicGFjay9ydW50aW1lL2RlZmluZSBwcm9wZXJ0eSBnZXR0ZXJzIiwid2VicGFjazovL0BhbmFuc2kvY29yZS93ZWJwYWNrL3J1bnRpbWUvaGFzT3duUHJvcGVydHkgc2hvcnRoYW5kIiwid2VicGFjazovL0BhbmFuc2kvY29yZS93ZWJwYWNrL3J1bnRpbWUvbWFrZSBuYW1lc3BhY2Ugb2JqZWN0Iiwid2VicGFjazovL0BhbmFuc2kvY29yZS9leHRlcm5hbCBub2RlLWNvbW1vbmpzIFwiY3J5cHRvXCIiLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlL2V4dGVybmFsIGNvbW1vbmpzIFwicmVhY3QtZG9tL3NlcnZlclwiIiwid2VicGFjazovL0BhbmFuc2kvY29yZS8uL3NyYy9zY3JpcHRzL3NzckVycm9ySGFuZGxlci50cyIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvLi9zcmMvbGF5U3BvdXRzLnRzeCIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvZXh0ZXJuYWwgY29tbW9uanMgXCJyZWFjdFwiIiwid2VicGFjazovL0BhbmFuc2kvY29yZS8uL3NyYy9zcG91dHMvY3NwLnRzIiwid2VicGFjazovL0BhbmFuc2kvY29yZS9leHRlcm5hbCBjb21tb25qcyBcInJlYWN0L2pzeC1ydW50aW1lXCIiLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlLy4vc3JjL3Nwb3V0cy9Eb2N1bWVudENvbXBvbmVudC50c3giLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlLy4vc3JjL3Nwb3V0cy9kb2N1bWVudC5zZXJ2ZXIudHN4Iiwid2VicGFjazovL0BhbmFuc2kvY29yZS8uL3NyYy9zcG91dHMvZGF0YUNsaWVudC5zZXJ2ZXIudHN4Iiwid2VicGFjazovL0BhbmFuc2kvY29yZS9leHRlcm5hbCBjb21tb25qcyBcIkBhbmFuc2kvcm91dGVyXCIiLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlL2V4dGVybmFsIGNvbW1vbmpzIFwiaGlzdG9yeVwiIiwid2VicGFjazovL0BhbmFuc2kvY29yZS8uL3NyYy9zcG91dHMvcm91dGVyLnNlcnZlci50c3giLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlLy4vc3JjL3Nwb3V0cy9wcmVmZXRjaC5zZXJ2ZXIudHN4Iiwid2VicGFjazovL0BhbmFuc2kvY29yZS8uL3NyYy9zcG91dHMvanNvbi5zZXJ2ZXIudHN4Iiwid2VicGFjazovL0BhbmFuc2kvY29yZS8uL3NyYy9zcG91dHMvYXBwLnNlcnZlci50c3giLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlLy4vc3JjL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC50c3giLCJ3ZWJwYWNrOi8vQGFuYW5zaS9jb3JlLy4vc3JjL3Nwb3V0cy9uYXZpZ2F0b3Iuc2VydmVyLnRzeCIsIndlYnBhY2s6Ly9AYW5hbnNpL2NvcmUvLi9zcmMvaW5kZXguc2VydmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIm1vZHVsZS5leHBvcnRzID0gcmVxdWlyZShcIkBkYXRhLWNsaWVudC9yZWFjdFwiKTsiLCJtb2R1bGUuZXhwb3J0cyA9IHJlcXVpcmUoXCJAZGF0YS1jbGllbnQvcmVhY3Qvc3NyXCIpOyIsIi8vIFRoZSBtb2R1bGUgY2FjaGVcbnZhciBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX18gPSB7fTtcblxuLy8gVGhlIHJlcXVpcmUgZnVuY3Rpb25cbmZ1bmN0aW9uIF9fd2VicGFja19yZXF1aXJlX18obW9kdWxlSWQpIHtcblx0Ly8gQ2hlY2sgaWYgbW9kdWxlIGlzIGluIGNhY2hlXG5cdHZhciBjYWNoZWRNb2R1bGUgPSBfX3dlYnBhY2tfbW9kdWxlX2NhY2hlX19bbW9kdWxlSWRdO1xuXHRpZiAoY2FjaGVkTW9kdWxlICE9PSB1bmRlZmluZWQpIHtcblx0XHRyZXR1cm4gY2FjaGVkTW9kdWxlLmV4cG9ydHM7XG5cdH1cblx0Ly8gQ3JlYXRlIGEgbmV3IG1vZHVsZSAoYW5kIHB1dCBpdCBpbnRvIHRoZSBjYWNoZSlcblx0dmFyIG1vZHVsZSA9IF9fd2VicGFja19tb2R1bGVfY2FjaGVfX1ttb2R1bGVJZF0gPSB7XG5cdFx0Ly8gbm8gbW9kdWxlLmlkIG5lZWRlZFxuXHRcdC8vIG5vIG1vZHVsZS5sb2FkZWQgbmVlZGVkXG5cdFx0ZXhwb3J0czoge31cblx0fTtcblxuXHQvLyBFeGVjdXRlIHRoZSBtb2R1bGUgZnVuY3Rpb25cblx0X193ZWJwYWNrX21vZHVsZXNfX1ttb2R1bGVJZF0obW9kdWxlLCBtb2R1bGUuZXhwb3J0cywgX193ZWJwYWNrX3JlcXVpcmVfXyk7XG5cblx0Ly8gUmV0dXJuIHRoZSBleHBvcnRzIG9mIHRoZSBtb2R1bGVcblx0cmV0dXJuIG1vZHVsZS5leHBvcnRzO1xufVxuXG4iLCIvLyBnZXREZWZhdWx0RXhwb3J0IGZ1bmN0aW9uIGZvciBjb21wYXRpYmlsaXR5IHdpdGggbm9uLWhhcm1vbnkgbW9kdWxlc1xuX193ZWJwYWNrX3JlcXVpcmVfXy5uID0gKG1vZHVsZSkgPT4ge1xuXHR2YXIgZ2V0dGVyID0gbW9kdWxlICYmIG1vZHVsZS5fX2VzTW9kdWxlID9cblx0XHQoKSA9PiAobW9kdWxlWydkZWZhdWx0J10pIDpcblx0XHQoKSA9PiAobW9kdWxlKTtcblx0X193ZWJwYWNrX3JlcXVpcmVfXy5kKGdldHRlciwgeyBhOiBnZXR0ZXIgfSk7XG5cdHJldHVybiBnZXR0ZXI7XG59OyIsInZhciBnZXRQcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZiA/IChvYmopID0+IChPYmplY3QuZ2V0UHJvdG90eXBlT2Yob2JqKSkgOiAob2JqKSA9PiAob2JqLl9fcHJvdG9fXyk7XG52YXIgbGVhZlByb3RvdHlwZXM7XG4vLyBjcmVhdGUgYSBmYWtlIG5hbWVzcGFjZSBvYmplY3Rcbi8vIG1vZGUgJiAxOiB2YWx1ZSBpcyBhIG1vZHVsZSBpZCwgcmVxdWlyZSBpdFxuLy8gbW9kZSAmIDI6IG1lcmdlIGFsbCBwcm9wZXJ0aWVzIG9mIHZhbHVlIGludG8gdGhlIG5zXG4vLyBtb2RlICYgNDogcmV0dXJuIHZhbHVlIHdoZW4gYWxyZWFkeSBucyBvYmplY3Rcbi8vIG1vZGUgJiAxNjogcmV0dXJuIHZhbHVlIHdoZW4gaXQncyBQcm9taXNlLWxpa2Vcbi8vIG1vZGUgJiA4fDE6IGJlaGF2ZSBsaWtlIHJlcXVpcmVcbl9fd2VicGFja19yZXF1aXJlX18udCA9IGZ1bmN0aW9uKHZhbHVlLCBtb2RlKSB7XG5cdGlmKG1vZGUgJiAxKSB2YWx1ZSA9IHRoaXModmFsdWUpO1xuXHRpZihtb2RlICYgOCkgcmV0dXJuIHZhbHVlO1xuXHRpZih0eXBlb2YgdmFsdWUgPT09ICdvYmplY3QnICYmIHZhbHVlKSB7XG5cdFx0aWYoKG1vZGUgJiA0KSAmJiB2YWx1ZS5fX2VzTW9kdWxlKSByZXR1cm4gdmFsdWU7XG5cdFx0aWYoKG1vZGUgJiAxNikgJiYgdHlwZW9mIHZhbHVlLnRoZW4gPT09ICdmdW5jdGlvbicpIHJldHVybiB2YWx1ZTtcblx0fVxuXHR2YXIgbnMgPSBPYmplY3QuY3JlYXRlKG51bGwpO1xuXHRfX3dlYnBhY2tfcmVxdWlyZV9fLnIobnMpO1xuXHR2YXIgZGVmID0ge307XG5cdGxlYWZQcm90b3R5cGVzID0gbGVhZlByb3RvdHlwZXMgfHwgW251bGwsIGdldFByb3RvKHt9KSwgZ2V0UHJvdG8oW10pLCBnZXRQcm90byhnZXRQcm90byldO1xuXHRmb3IodmFyIGN1cnJlbnQgPSBtb2RlICYgMiAmJiB2YWx1ZTsgKHR5cGVvZiBjdXJyZW50ID09ICdvYmplY3QnIHx8IHR5cGVvZiBjdXJyZW50ID09ICdmdW5jdGlvbicpICYmICF+bGVhZlByb3RvdHlwZXMuaW5kZXhPZihjdXJyZW50KTsgY3VycmVudCA9IGdldFByb3RvKGN1cnJlbnQpKSB7XG5cdFx0T2JqZWN0LmdldE93blByb3BlcnR5TmFtZXMoY3VycmVudCkuZm9yRWFjaCgoa2V5KSA9PiAoZGVmW2tleV0gPSAoKSA9PiAodmFsdWVba2V5XSkpKTtcblx0fVxuXHRkZWZbJ2RlZmF1bHQnXSA9ICgpID0+ICh2YWx1ZSk7XG5cdF9fd2VicGFja19yZXF1aXJlX18uZChucywgZGVmKTtcblx0cmV0dXJuIG5zO1xufTsiLCIvLyBkZWZpbmUgZ2V0dGVyIGZ1bmN0aW9ucyBmb3IgaGFybW9ueSBleHBvcnRzXG5fX3dlYnBhY2tfcmVxdWlyZV9fLmQgPSAoZXhwb3J0cywgZGVmaW5pdGlvbikgPT4ge1xuXHRmb3IodmFyIGtleSBpbiBkZWZpbml0aW9uKSB7XG5cdFx0aWYoX193ZWJwYWNrX3JlcXVpcmVfXy5vKGRlZmluaXRpb24sIGtleSkgJiYgIV9fd2VicGFja19yZXF1aXJlX18ubyhleHBvcnRzLCBrZXkpKSB7XG5cdFx0XHRPYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywga2V5LCB7IGVudW1lcmFibGU6IHRydWUsIGdldDogZGVmaW5pdGlvbltrZXldIH0pO1xuXHRcdH1cblx0fVxufTsiLCJfX3dlYnBhY2tfcmVxdWlyZV9fLm8gPSAob2JqLCBwcm9wKSA9PiAoT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG9iaiwgcHJvcCkpIiwiLy8gZGVmaW5lIF9fZXNNb2R1bGUgb24gZXhwb3J0c1xuX193ZWJwYWNrX3JlcXVpcmVfXy5yID0gKGV4cG9ydHMpID0+IHtcblx0aWYodHlwZW9mIFN5bWJvbCAhPT0gJ3VuZGVmaW5lZCcgJiYgU3ltYm9sLnRvU3RyaW5nVGFnKSB7XG5cdFx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsIFN5bWJvbC50b1N0cmluZ1RhZywgeyB2YWx1ZTogJ01vZHVsZScgfSk7XG5cdH1cblx0T2JqZWN0LmRlZmluZVByb3BlcnR5KGV4cG9ydHMsICdfX2VzTW9kdWxlJywgeyB2YWx1ZTogdHJ1ZSB9KTtcbn07IiwiY29uc3QgX19XRUJQQUNLX05BTUVTUEFDRV9PQkpFQ1RfXyA9IHJlcXVpcmUoXCJjcnlwdG9cIik7IiwiY29uc3QgX19XRUJQQUNLX05BTUVTUEFDRV9PQkpFQ1RfXyA9IHJlcXVpcmUoXCJyZWFjdC1kb20vc2VydmVyXCIpOyIsIi8qKlxuICogVXRpbGl0aWVzIGZvciBoYW5kbGluZyBTU1IgZXJyb3JzIGdyYWNlZnVsbHlcbiAqL1xuXG4vKipcbiAqIEV4dHJhY3QgSFRUUCBzdGF0dXMgY29kZSBmcm9tIGFuIGVycm9yIG9iamVjdC5cbiAqIExvb2tzIGZvciBhIGBzdGF0dXNgIHByb3BlcnR5IHRoYXQgaXMgYSBudW1iZXIgb3IgcGFyc2VhYmxlIHN0cmluZy5cbiAqIFJldHVybnMgNTAwIGlmIG5vIHZhbGlkIHN0YXR1cyBmb3VuZC5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEVycm9yU3RhdHVzKGVycm9yOiB1bmtub3duKTogbnVtYmVyIHtcbiAgaWYgKGVycm9yICYmIHR5cGVvZiBlcnJvciA9PT0gJ29iamVjdCcgJiYgJ3N0YXR1cycgaW4gZXJyb3IpIHtcbiAgICBjb25zdCBzdGF0dXMgPSAoZXJyb3IgYXMgeyBzdGF0dXM6IHVua25vd24gfSkuc3RhdHVzO1xuICAgIGlmICh0eXBlb2Ygc3RhdHVzID09PSAnbnVtYmVyJyAmJiBzdGF0dXMgPj0gMTAwICYmIHN0YXR1cyA8IDYwMCkge1xuICAgICAgcmV0dXJuIHN0YXR1cztcbiAgICB9XG4gICAgaWYgKHR5cGVvZiBzdGF0dXMgPT09ICdzdHJpbmcnKSB7XG4gICAgICBjb25zdCBwYXJzZWQgPSBwYXJzZUludChzdGF0dXMsIDEwKTtcbiAgICAgIGlmICghaXNOYU4ocGFyc2VkKSAmJiBwYXJzZWQgPj0gMTAwICYmIHBhcnNlZCA8IDYwMCkge1xuICAgICAgICByZXR1cm4gcGFyc2VkO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gNTAwO1xufVxuXG4vKipcbiAqIEVzY2FwZSBIVE1MIHNwZWNpYWwgY2hhcmFjdGVycyB0byBwcmV2ZW50IFhTU1xuICovXG5leHBvcnQgZnVuY3Rpb24gZXNjYXBlSHRtbChzdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiBzdHJcbiAgICAucmVwbGFjZSgvJi9nLCAnJmFtcDsnKVxuICAgIC5yZXBsYWNlKC88L2csICcmbHQ7JylcbiAgICAucmVwbGFjZSgvPi9nLCAnJmd0OycpXG4gICAgLnJlcGxhY2UoL1wiL2csICcmcXVvdDsnKVxuICAgIC5yZXBsYWNlKC8nL2csICcmIzAzOTsnKTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZW5kZXJFcnJvclBhZ2VPcHRpb25zIHtcbiAgLyoqIFNob3cgc3RhY2sgdHJhY2UgaW4gb3V0cHV0ICovXG4gIHNob3dTdGFjaz86IGJvb2xlYW47XG4gIC8qKiBBZGRpdGlvbmFsIGhpbnQgbWVzc2FnZSB0byBkaXNwbGF5ICovXG4gIGhpbnQ/OiBzdHJpbmc7XG4gIC8qKiBCYWRnZSB0ZXh0IHRvIGRpc3BsYXkgKGUuZy4sIFwiREVWIE1PREVcIikgKi9cbiAgYmFkZ2U/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVuZGVyIGFuIEhUTUwgZXJyb3IgcGFnZSBmb3IgU1NSIGZhaWx1cmVzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiByZW5kZXJFcnJvclBhZ2UoXG4gIGVycm9yOiB1bmtub3duLFxuICB1cmw6IHN0cmluZyxcbiAgc3RhdHVzQ29kZTogbnVtYmVyLFxuICBvcHRpb25zOiBSZW5kZXJFcnJvclBhZ2VPcHRpb25zID0ge30sXG4pOiBzdHJpbmcge1xuICBjb25zdCBlcnJvck1lc3NhZ2UgPSBlcnJvciBpbnN0YW5jZW9mIEVycm9yID8gZXJyb3IubWVzc2FnZSA6IFN0cmluZyhlcnJvcik7XG4gIGNvbnN0IHN0YWNrID0gZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLnN0YWNrIDogdW5kZWZpbmVkO1xuICBjb25zdCB7IHNob3dTdGFjayA9IGZhbHNlLCBoaW50LCBiYWRnZSB9ID0gb3B0aW9ucztcblxuICByZXR1cm4gYDwhRE9DVFlQRSBodG1sPlxuPGh0bWwgbGFuZz1cImVuXCI+XG48aGVhZD5cbiAgPG1ldGEgY2hhcnNldD1cIlVURi04XCI+XG4gIDxtZXRhIG5hbWU9XCJ2aWV3cG9ydFwiIGNvbnRlbnQ9XCJ3aWR0aD1kZXZpY2Utd2lkdGgsIGluaXRpYWwtc2NhbGU9MS4wXCI+XG4gIDx0aXRsZT4ke3N0YXR1c0NvZGV9IC0gU2VydmVyIEVycm9yPC90aXRsZT5cbiAgPHN0eWxlPlxuICAgICogeyBib3gtc2l6aW5nOiBib3JkZXItYm94OyBtYXJnaW46IDA7IHBhZGRpbmc6IDA7IH1cbiAgICBib2R5IHsgZm9udC1mYW1pbHk6IC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgJ1NlZ29lIFVJJywgUm9ib3RvLCBzYW5zLXNlcmlmOyBiYWNrZ3JvdW5kOiAjMWExYTJlOyBjb2xvcjogI2VlZTsgbWluLWhlaWdodDogMTAwdmg7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBwYWRkaW5nOiAycmVtOyB9XG4gICAgLmNvbnRhaW5lciB7IG1heC13aWR0aDogODAwcHg7IHdpZHRoOiAxMDAlOyB9XG4gICAgaDEgeyBjb2xvcjogI2ZmNmI2YjsgZm9udC1zaXplOiAyLjVyZW07IG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAuYmFkZ2UgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJhY2tncm91bmQ6ICM0ZWNkYzQ7IGNvbG9yOiAjMWExYTJlOyBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTsgYm9yZGVyLXJhZGl1czogNHB4OyBmb250LXNpemU6IDAuNzVyZW07IGZvbnQtd2VpZ2h0OiA2MDA7IG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAudXJsIHsgY29sb3I6ICM4ODg7IGZvbnQtc2l6ZTogMC45cmVtOyBtYXJnaW4tYm90dG9tOiAxLjVyZW07IHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsgfVxuICAgIC5tZXNzYWdlIHsgYmFja2dyb3VuZDogIzE2MjEzZTsgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjZmY2YjZiOyBwYWRkaW5nOiAxcmVtIDEuNXJlbTsgYm9yZGVyLXJhZGl1czogMCA4cHggOHB4IDA7IG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuICAgIC5tZXNzYWdlIGNvZGUgeyBjb2xvcjogI2ZmNmI2YjsgZm9udC1zaXplOiAxLjFyZW07IH1cbiAgICAuc3RhY2sgeyBiYWNrZ3JvdW5kOiAjMGYwZjIzOyBib3JkZXItcmFkaXVzOiA4cHg7IHBhZGRpbmc6IDEuNXJlbTsgb3ZlcmZsb3cteDogYXV0bzsgZm9udC1mYW1pbHk6ICdNb25hY28nLCAnTWVubG8nLCBtb25vc3BhY2U7IGZvbnQtc2l6ZTogMC44NXJlbTsgbGluZS1oZWlnaHQ6IDEuNjsgY29sb3I6ICNhYWE7IHdoaXRlLXNwYWNlOiBwcmUtd3JhcDsgd29yZC1icmVhazogYnJlYWstd29yZDsgfVxuICAgIC5yZXRyeSB7IG1hcmdpbi10b3A6IDJyZW07IH1cbiAgICAucmV0cnkgYSB7IGNvbG9yOiAjNGVjZGM0OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtOyBib3JkZXI6IDJweCBzb2xpZCAjNGVjZGM0OyBib3JkZXItcmFkaXVzOiA2cHg7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgdHJhbnNpdGlvbjogYWxsIDAuMnM7IH1cbiAgICAucmV0cnkgYTpob3ZlciB7IGJhY2tncm91bmQ6ICM0ZWNkYzQ7IGNvbG9yOiAjMWExYTJlOyB9XG4gICAgLmhpbnQgeyBtYXJnaW4tdG9wOiAxLjVyZW07IGNvbG9yOiAjODg4OyBmb250LXNpemU6IDAuOXJlbTsgfVxuICA8L3N0eWxlPlxuPC9oZWFkPlxuPGJvZHk+XG4gIDxkaXYgY2xhc3M9XCJjb250YWluZXJcIj5cbiAgICAke2JhZGdlID8gYDxzcGFuIGNsYXNzPVwiYmFkZ2VcIj4ke2VzY2FwZUh0bWwoYmFkZ2UpfTwvc3Bhbj5gIDogJyd9XG4gICAgPGgxPiR7c3RhdHVzQ29kZX0gLSBTZXJ2ZXIgRXJyb3I8L2gxPlxuICAgIDxwIGNsYXNzPVwidXJsXCI+RXJyb3IgcmVuZGVyaW5nOiAke2VzY2FwZUh0bWwodXJsKX08L3A+XG4gICAgPGRpdiBjbGFzcz1cIm1lc3NhZ2VcIj5cbiAgICAgIDxjb2RlPiR7ZXNjYXBlSHRtbChlcnJvck1lc3NhZ2UpfTwvY29kZT5cbiAgICA8L2Rpdj5cbiAgICAke3Nob3dTdGFjayAmJiBzdGFjayA/IGA8cHJlIGNsYXNzPVwic3RhY2tcIj4ke2VzY2FwZUh0bWwoc3RhY2spfTwvcHJlPmAgOiAnJ31cbiAgICA8ZGl2IGNsYXNzPVwicmV0cnlcIj5cbiAgICAgIDxhIGhyZWY9XCIke2VzY2FwZUh0bWwodXJsKX1cIj5SZXRyeTwvYT5cbiAgICA8L2Rpdj5cbiAgICAke2hpbnQgPyBgPHAgY2xhc3M9XCJoaW50XCI+JHtlc2NhcGVIdG1sKGhpbnQpfTwvcD5gIDogJyd9XG4gIDwvZGl2PlxuPC9ib2R5PlxuPC9odG1sPmA7XG59XG4iLCJpbXBvcnQgY3J5cHRvIGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgdHlwZSB7IEpTWCB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHJlbmRlclRvUGlwZWFibGVTdHJlYW0gYXMgcmVhY3RSZW5kZXIgfSBmcm9tICdyZWFjdC1kb20vc2VydmVyJztcblxuaW1wb3J0IHsgZ2V0RXJyb3JTdGF0dXMgfSBmcm9tICcuL3NjcmlwdHMvc3NyRXJyb3JIYW5kbGVyLmpzJztcbmltcG9ydCB0eXBlIHsgUmVuZGVyIH0gZnJvbSAnLi9zY3JpcHRzL3R5cGVzLmpzJztcbmltcG9ydCB0eXBlIHsgU2VydmVyUHJvcHMgfSBmcm9tICcuL3Nwb3V0cy90eXBlcy5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGxheVNwb3V0cyhcbiAgc3BvdXRzOiAocHJvcHM6IFNlcnZlclByb3BzKSA9PiBQcm9taXNlPHtcbiAgICBhcHA6IEpTWC5FbGVtZW50O1xuICB9PixcbiAge1xuICAgIHRpbWVvdXRNUyA9IDEwMDAwLFxuICAgIG9uRXJyb3IsXG4gIH06IHsgdGltZW91dE1TPzogbnVtYmVyOyBvbkVycm9yPzogKGVycm9yOiB1bmtub3duKSA9PiB2b2lkIH0gPSB7fSxcbikge1xuICBjb25zdCByZW5kZXI6IFJlbmRlciA9IGFzeW5jIChjbGllbnRNYW5pZmVzdCwgcmVxLCByZXMpID0+IHtcbiAgICBjb25zdCBub25jZSA9IGNyeXB0by5yYW5kb21CeXRlcygxNikudG9TdHJpbmcoJ2Jhc2U2NCcpO1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHsgYXBwIH0gPSBhd2FpdCBzcG91dHMoeyBjbGllbnRNYW5pZmVzdCwgcmVxLCByZXMsIG5vbmNlIH0pO1xuXG4gICAgICBsZXQgZGlkRXJyb3IgPSBmYWxzZTtcbiAgICAgIGxldCBsYXN0RXJyb3I6IHVua25vd247XG4gICAgICBjb25zdCB7IHBpcGUsIGFib3J0IH0gPSByZWFjdFJlbmRlcihhcHAsIHtcbiAgICAgICAgbm9uY2UsXG4gICAgICAgIC8vYm9vdHN0cmFwU2NyaXB0czogYXNzZXRzLmZpbHRlcihhc3NldCA9PiBhc3NldC5lbmRzV2l0aCgnLmpzJykpLFxuICAgICAgICBvblNoZWxsUmVhZHkoKSB7XG4gICAgICAgICAgLy9tYW5hZ2Vycy5mb3JFYWNoKG1hbmFnZXIgPT4gbWFuYWdlci5jbGVhbnVwKCkpO1xuICAgICAgICAgIC8vIElmIHNvbWV0aGluZyBlcnJvcmVkIGJlZm9yZSB3ZSBzdGFydGVkIHN0cmVhbWluZywgd2Ugc2V0IHRoZSBlcnJvciBjb2RlIGFwcHJvcHJpYXRlbHkuXG4gICAgICAgICAgcmVzLnN0YXR1c0NvZGUgPSBkaWRFcnJvciA/IGdldEVycm9yU3RhdHVzKGxhc3RFcnJvcikgOiAyMDA7XG4gICAgICAgICAgcmVzLnNldEhlYWRlcignQ29udGVudC10eXBlJywgJ3RleHQvaHRtbCcpO1xuICAgICAgICAgIHBpcGUocmVzKTtcbiAgICAgICAgfSxcbiAgICAgICAgb25TaGVsbEVycm9yKGU6IHVua25vd24pIHtcbiAgICAgICAgICBkaWRFcnJvciA9IHRydWU7XG4gICAgICAgICAgbGFzdEVycm9yID0gZTtcbiAgICAgICAgICByZXMuc3RhdHVzQ29kZSA9IGdldEVycm9yU3RhdHVzKGUpO1xuICAgICAgICAgIHBpcGUocmVzKTtcbiAgICAgICAgfSxcbiAgICAgICAgb25FcnJvcihlOiB1bmtub3duKSB7XG4gICAgICAgICAgZGlkRXJyb3IgPSB0cnVlO1xuICAgICAgICAgIGxhc3RFcnJvciA9IGU7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihlKTtcbiAgICAgICAgICByZXMuc3RhdHVzQ29kZSA9IGdldEVycm9yU3RhdHVzKGUpO1xuICAgICAgICAgIC8vcGlwZShyZXMpOyBSZW1vdmluZyB0aGlzIGF2b2lkcywgXCJSZWFjdCBjdXJyZW50bHkgb25seSBzdXBwb3J0cyBwaXBpbmcgdG8gb25lIHdyaXRhYmxlIHN0cmVhbS5cIlxuICAgICAgICAgIGlmIChvbkVycm9yKSBvbkVycm9yKGUpO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICAvLyBBYmFuZG9uIGFuZCBzd2l0Y2ggdG8gY2xpZW50IHJlbmRlcmluZyBpZiBlbm91Z2ggdGltZSBwYXNzZXMuXG4gICAgICAvLyBUcnkgbG93ZXJpbmcgdGhpcyB0byBzZWUgdGhlIGNsaWVudCByZWNvdmVyLlxuICAgICAgc2V0VGltZW91dChcbiAgICAgICAgKCkgPT4gKGFib3J0IGFzIGFueSkoYFRpbWVvdXQgb2YgJHt0aW1lb3V0TVN9bXMgZXhjZWVkZWRgKSxcbiAgICAgICAgdGltZW91dE1TLFxuICAgICAgKTtcbiAgICB9IGNhdGNoIChlOiB1bmtub3duKSB7XG4gICAgICBpZiAob25FcnJvcikgb25FcnJvcihlKTtcbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9O1xuICByZXR1cm4gcmVuZGVyO1xufVxuIiwiY29uc3QgX19XRUJQQUNLX05BTUVTUEFDRV9PQkpFQ1RfXyA9IHJlcXVpcmUoXCJyZWFjdFwiKTsiLCJleHBvcnQgaW50ZXJmYWNlIENTUG9saWN5IHtcbiAgW2RpcmVjdGl2ZTogc3RyaW5nXTogc3RyaW5nIHwgc3RyaW5nW107XG59XG5cbi8vIFRPRE86IG1lbW9pemUgdGhpc1xuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkUG9saWN5KHBvbGljeU9iajogQ1NQb2xpY3kpIHtcbiAgcmV0dXJuIE9iamVjdC5rZXlzKHBvbGljeU9iailcbiAgICAubWFwKGtleSA9PiB7XG4gICAgICBjb25zdCB2YWwgPVxuICAgICAgICBBcnJheS5pc0FycmF5KHBvbGljeU9ialtrZXldKSA/XG4gICAgICAgICAgWy4uLm5ldyBTZXQocG9saWN5T2JqW2tleV0pLnZhbHVlcygpXS5maWx0ZXIodiA9PiB2KS5qb2luKCcgJylcbiAgICAgICAgOiBwb2xpY3lPYmpba2V5XTtcblxuICAgICAgLy8gbW92ZSBzdHJpY3QgZHluYW1pYyB0byB0aGUgZW5kIG9mIHRoZSBwb2xpY3kgaWYgaXQgZXhpc3RzIHRvIGJlIGJhY2t3YXJkcyBjb21wYXRpYmxlIHdpdGggY3NwMlxuICAgICAgLy8gaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvSFRUUC9IZWFkZXJzL0NvbnRlbnQtU2VjdXJpdHktUG9saWN5L3NjcmlwdC1zcmMjc3RyaWN0LWR5bmFtaWNcbiAgICAgIGlmICh0eXBlb2YgdmFsID09PSAnc3RyaW5nJyAmJiB2YWwuaW5jbHVkZXMoXCInc3RyaWN0LWR5bmFtaWMnXCIpKSB7XG4gICAgICAgIGNvbnN0IG5ld1ZhbCA9IGAke3ZhbFxuICAgICAgICAgIC5yZXBsYWNlKC9cXHM/J3N0cmljdC1keW5hbWljJ1xccz8vZ2ksICcgJylcbiAgICAgICAgICAudHJpbSgpfSAnc3RyaWN0LWR5bmFtaWMnYDtcbiAgICAgICAgcmV0dXJuIGAke2tleX0gJHtuZXdWYWx9YDtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGAke2tleX0gJHt2YWx9YDtcbiAgICB9KVxuICAgIC5qb2luKCc7ICcpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gam9pbk5vbmNlKHBvbGljeU9iajogQ1NQb2xpY3ksIG5vbmNlPzogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gIGlmICghbm9uY2UpIHJldHVybiBwb2xpY3lPYmo7XG4gIGNvbnN0IHBvbGljeSA9IHtcbiAgICAuLi5wb2xpY3lPYmosXG4gIH07XG4gIGlmICh0eXBlb2YgcG9saWN5WydzY3JpcHQtc3JjJ10gPT09ICdzdHJpbmcnKSB7XG4gICAgcG9saWN5WydzY3JpcHQtc3JjJ10gPSBbcG9saWN5WydzY3JpcHQtc3JjJ10sIGAnbm9uY2UtJHtub25jZX0nYF07XG4gIH0gZWxzZSB7XG4gICAgcG9saWN5WydzY3JpcHQtc3JjJ10gPSBbLi4ucG9saWN5WydzY3JpcHQtc3JjJ10sIGAnbm9uY2UtJHtub25jZX0nYF07XG4gIH1cbiAgcmV0dXJuIHBvbGljeTtcbn1cbiIsImNvbnN0IF9fV0VCUEFDS19OQU1FU1BBQ0VfT0JKRUNUX18gPSByZXF1aXJlKFwicmVhY3QvanN4LXJ1bnRpbWVcIik7IiwidHlwZSBQcm9wcyA9IHtcbiAgY2hpbGRyZW46IFJlYWN0LlJlYWN0Tm9kZTtcbiAgYXNzZXRzOiB7IGhyZWY6IHN0cmluZzsgYXM/OiBzdHJpbmc7IHJlbD86IHN0cmluZyB9W107XG4gIGhlYWQ/OiBSZWFjdC5SZWFjdE5vZGU7XG4gIGV4dHJhU3R5bGU6IFJlYWN0LlJlYWN0Tm9kZTtcbiAgc2NyaXB0cz86IFJlYWN0LlJlYWN0Tm9kZTtcbiAgdGl0bGU6IHN0cmluZztcbiAgcm9vdElkPzogc3RyaW5nO1xuICBjaGFyU2V0Pzogc3RyaW5nO1xuICBsYW5nPzogc3RyaW5nO1xufTtcbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIERvY3VtZW50KHtcbiAgYXNzZXRzLFxuICBoZWFkID0gZGVmYXVsdEhlYWQsXG4gIGNoaWxkcmVuLFxuICB0aXRsZSxcbiAgcm9vdElkID0gJ2FuYW5zaS1yb290JyxcbiAgY2hhclNldCA9ICd1dGYtOCcsXG4gIHNjcmlwdHMgPSBudWxsLFxuICBleHRyYVN0eWxlLFxuICBsYW5nLFxufTogUHJvcHMpIHtcbiAgcmV0dXJuIChcbiAgICA8aHRtbCBsYW5nPXtsYW5nfT5cbiAgICAgIDxoZWFkPlxuICAgICAgICA8bWV0YSBjaGFyU2V0PXtjaGFyU2V0fSAvPlxuICAgICAgICB7aGVhZH1cbiAgICAgICAge2V4dHJhU3R5bGV9XG4gICAgICAgIHthc3NldHMubWFwKChhc3NldCwgaSkgPT4gKFxuICAgICAgICAgIDxsaW5rIGtleT17aX0gcmVsPVwicHJlbG9hZFwiIHsuLi5hc3NldH0gLz5cbiAgICAgICAgKSl9XG4gICAgICAgIDx0aXRsZT57dGl0bGV9PC90aXRsZT5cbiAgICAgIDwvaGVhZD5cbiAgICAgIDxib2R5PlxuICAgICAgICA8ZGl2IGlkPXtyb290SWR9PntjaGlsZHJlbn08L2Rpdj5cbiAgICAgICAge3NjcmlwdHN9XG4gICAgICAgIHthc3NldHNcbiAgICAgICAgICAuZmlsdGVyKCh7IGhyZWYgfSkgPT4gaHJlZi5lbmRzV2l0aCgnLmpzJykpXG4gICAgICAgICAgLm1hcCgoeyBocmVmIH0sIGkpID0+IChcbiAgICAgICAgICAgIDxzY3JpcHQga2V5PXtpfSBzcmM9e2hyZWZ9IGFzeW5jIC8+XG4gICAgICAgICAgKSl9XG4gICAgICA8L2JvZHk+XG4gICAgPC9odG1sPlxuICApO1xufVxuY29uc3QgZGVmYXVsdEhlYWQgPSAoXG4gIDw+XG4gICAgPG1ldGEgbmFtZT1cInZpZXdwb3J0XCIgY29udGVudD1cIndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xXCIgLz5cbiAgICA8bGlua1xuICAgICAgcmVsPVwic2hvcnRjdXQgaWNvblwiXG4gICAgICBocmVmPXtgJHtwcm9jZXNzLmVudi5XRUJQQUNLX1BVQkxJQ19QQVRIID8/ICcvJ31mYXZpY29uLmljb2B9XG4gICAgLz5cbiAgPC8+XG4pO1xuIiwiaW1wb3J0IHR5cGUgeyBSb3V0ZSB9IGZyb20gJ0BhbmFuc2kvcm91dGVyJztcbmltcG9ydCB7IFJlcXVlc3QgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBTdGF0c0NodW5rR3JvdXAgfSBmcm9tICd3ZWJwYWNrJztcblxuaW1wb3J0IHsgYnVpbGRQb2xpY3ksIGpvaW5Ob25jZSwgdHlwZSBDU1BvbGljeSB9IGZyb20gJy4vY3NwLmpzJztcbmltcG9ydCBEb2N1bWVudCBmcm9tICcuL0RvY3VtZW50Q29tcG9uZW50LmpzJztcbmltcG9ydCB0eXBlIHsgU2VydmVyU3BvdXQgfSBmcm9tICcuL3R5cGVzLmpzJztcblxudHlwZSBOZWVkZWROZXh0ID0ge1xuICBtYXRjaGVkUm91dGVzOiBSb3V0ZTxhbnk+W107XG4gIHRpdGxlPzogc3RyaW5nO1xuICBzY3JpcHRzPzogUmVhY3QuUmVhY3ROb2RlW107XG4gIGV4dHJhU3R5bGU/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbn07XG5cbmV4cG9ydCB7IHR5cGUgQ1NQb2xpY3kgfTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRG9jdW1lbnRTcG91dChvcHRpb25zOiB7XG4gIGhlYWQ/OiBSZWFjdC5SZWFjdE5vZGU7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGxhbmc/OiBzdHJpbmc7XG4gIHJvb3RJZD86IHN0cmluZztcbiAgY2hhclNldD86IHN0cmluZztcbiAgY3NQb2xpY3k/OiBDU1BvbGljeTtcbn0pOiBTZXJ2ZXJTcG91dDxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sIE5lZWRlZE5leHQ+IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgY29uc3QgcHVibGljUGF0aCA9IHByb3BzLmNsaWVudE1hbmlmZXN0LnB1YmxpY1BhdGg7XG5cbiAgICBpZiAoXG4gICAgICBPYmplY3Qua2V5cyhwcm9wcy5jbGllbnRNYW5pZmVzdD8uZW50cnlwb2ludHMgPz8ge30pLmxlbmd0aCA8IDEgfHxcbiAgICAgIHB1YmxpY1BhdGggPT09IHVuZGVmaW5lZFxuICAgIClcbiAgICAgIHRocm93IG5ldyBFcnJvcignTWFuaWZlc3QgbWlzc2luZyBlbnRyaWVzIG5lZWRlZCcpO1xuXG4gICAgLy8gVE9ETzogY29uc2lkZXIgdXNpbmcgdGhpcyBwYWNrYWdlIGZvciBidWlsZCBzdGF0cyBpbiBmdXR1cmU6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlYWN0L3RyZWUvbWFpbi9wYWNrYWdlcy9yZWFjdC1zZXJ2ZXItZG9tLXdlYnBhY2tcbiAgICBjb25zdCBhc3NldE1hcCA9IChhc3NldHM6IHsgbmFtZTogc3RyaW5nOyBzaXplPzogbnVtYmVyIH1bXSkgPT5cbiAgICAgIGFzc2V0cy5tYXAoKHsgbmFtZSB9KSA9PiBgJHtwdWJsaWNQYXRofSR7bmFtZX1gKTtcblxuICAgIGNvbnN0IGFzc2V0TGlzdDogc3RyaW5nW10gPSBbXTtcbiAgICBPYmplY3QudmFsdWVzKHByb3BzLmNsaWVudE1hbmlmZXN0Py5lbnRyeXBvaW50cyA/PyB7fSkuZm9yRWFjaChcbiAgICAgIGVudHJ5cG9pbnQgPT4ge1xuICAgICAgICBhc3NldExpc3QucHVzaCguLi5hc3NldE1hcChlbnRyeXBvaW50LmFzc2V0cyA/PyBbXSkpO1xuICAgICAgfSxcbiAgICApO1xuICAgIG5ldyBTZXQoXG4gICAgICBhc3NldE1hcChcbiAgICAgICAgT2JqZWN0LnZhbHVlcyhwcm9wcy5jbGllbnRNYW5pZmVzdC5uYW1lZENodW5rR3JvdXBzID8/IHt9KVxuICAgICAgICAgIC5maWx0ZXIoKHsgbmFtZSB9KSA9PlxuICAgICAgICAgICAgbmV4dFByb3BzLm1hdGNoZWRSb3V0ZXMuc29tZShyb3V0ZSA9PiBuYW1lPy5pbmNsdWRlcyhyb3V0ZS5uYW1lKSksXG4gICAgICAgICAgKVxuICAgICAgICAgIC5mbGF0TWFwKGNodW5rID0+IFtcbiAgICAgICAgICAgIC4uLihjaHVuay5hc3NldHMgPz8gW10pLFxuICAgICAgICAgICAgLy8gYW55IGNodW5rIHByZWxvYWRzXG4gICAgICAgICAgICAuLi5jaGlsZHJlbkFzc2V0cyhjaHVuayksXG4gICAgICAgICAgXSksXG4gICAgICApLFxuICAgICkuZm9yRWFjaChhc3NldCA9PiBhc3NldExpc3QucHVzaChhc3NldCkpO1xuXG4gICAgLy8gZmluZCBhZGRpdGlvbmFsIGFzc2V0cyB0byBwcmVsb2FkIGJhc2VkIG9uIG1hdGNoZWQgcm91dGVcbiAgICBjb25zdCBhc3NldHM6IHtcbiAgICAgIGhyZWY6IHN0cmluZztcbiAgICAgIGFzPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgICAgcmVsPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIH1bXSA9IGFzc2V0TGlzdFxuICAgICAgLmZpbHRlcihhc3NldCA9PiAhYXNzZXQuZW5kc1dpdGgoJy5ob3QtdXBkYXRlLmpzJykpXG4gICAgICAubWFwKGFzc2V0ID0+XG4gICAgICAgIGFzc2V0LmVuZHNXaXRoKCcuY3NzJykgPyB7IGhyZWY6IGFzc2V0LCByZWw6ICdzdHlsZXNoZWV0JyB9XG4gICAgICAgIDogYXNzZXQuZW5kc1dpdGgoJy5qcycpID8geyBocmVmOiBhc3NldCwgYXM6ICdzY3JpcHQnIH1cbiAgICAgICAgOiB7IGhyZWY6IGFzc2V0IH0sXG4gICAgICApO1xuXG4gICAgaWYgKG9wdGlvbnMuY3NQb2xpY3kpIHtcbiAgICAgIGNvbnN0IGh0dHBFcXVpdiA9XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbicgP1xuICAgICAgICAgICdDb250ZW50LVNlY3VyaXR5LVBvbGljeSdcbiAgICAgICAgOiAnQ29udGVudC1TZWN1cml0eS1Qb2xpY3ktUmVwb3J0LU9ubHknO1xuXG4gICAgICBwcm9wcy5yZXMuc2V0SGVhZGVyKFxuICAgICAgICBodHRwRXF1aXYsXG4gICAgICAgIGJ1aWxkUG9saWN5KGpvaW5Ob25jZShvcHRpb25zLmNzUG9saWN5LCBwcm9wcy5ub25jZSkpLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4ubmV4dFByb3BzLFxuICAgICAgYXBwOiAoXG4gICAgICAgIDxEb2N1bWVudFxuICAgICAgICAgIHsuLi5vcHRpb25zfVxuICAgICAgICAgIGV4dHJhU3R5bGU9e25leHRQcm9wcy5leHRyYVN0eWxlfVxuICAgICAgICAgIHRpdGxlPXtuZXh0UHJvcHMudGl0bGUgPz8gb3B0aW9ucy50aXRsZX1cbiAgICAgICAgICBhc3NldHM9e2Fzc2V0c31cbiAgICAgICAgICByb290SWQ9e29wdGlvbnMucm9vdElkfVxuICAgICAgICAgIHNjcmlwdHM9e25leHRQcm9wcy5zY3JpcHRzfVxuICAgICAgICA+XG4gICAgICAgICAge25leHRQcm9wcy5hcHB9XG4gICAgICAgIDwvRG9jdW1lbnQ+XG4gICAgICApLFxuICAgIH07XG4gIH07XG59XG5cbmZ1bmN0aW9uIGNoaWxkcmVuQXNzZXRzKGNodW5rOiBTdGF0c0NodW5rR3JvdXApIHtcbiAgcmV0dXJuIGNodW5rLmNoaWxkcmVuID9cbiAgICAgIE9iamVjdC52YWx1ZXMoY2h1bmsuY2hpbGRyZW4pLmZsYXRNYXAocHJlbG9hZCA9PlxuICAgICAgICBwcmVsb2FkLmZsYXRNYXAoYyA9PiBjLmFzc2V0cyA/PyBbXSksXG4gICAgICApXG4gICAgOiBbXTtcbn1cbiIsImltcG9ydCB7XG4gIHR5cGUgQ29udHJvbGxlcixcbiAgdHlwZSBNYW5hZ2VyLFxuICB0eXBlIFN0YXRlLFxuICB0eXBlIFN0b3JlLFxufSBmcm9tICdAZGF0YS1jbGllbnQvcmVhY3QnO1xuXG5pbXBvcnQgdHlwZSB7IFNlcnZlclNwb3V0IH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGRhdGFDbGllbnRTcG91dChcbiAgb3B0aW9uczoge1xuICAgIGdldE1hbmFnZXJzPzogKCkgPT4gTWFuYWdlcltdO1xuICB9ID0ge30sXG4pOiBTZXJ2ZXJTcG91dDxcbiAgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIHsgY29udHJvbGxlcjogQ29udHJvbGxlciB9ICYgeyBzdG9yZTogU3RvcmU8U3RhdGU8dW5rbm93bj4+IH0sXG4gIHsgaW5pdERhdGE/OiBSZWNvcmQ8c3RyaW5nLCAoKSA9PiB1bmtub3duPjsgc2NyaXB0cz86IFJlYWN0LlJlYWN0Tm9kZVtdIH1cbj4ge1xuICByZXR1cm4gbmV4dCA9PiBhc3luYyBwcm9wcyA9PiB7XG4gICAgY29uc3QgbWFuYWdlcnMgPSBvcHRpb25zPy5nZXRNYW5hZ2Vycz8uKCkgPz8gW1xuICAgICAgbmV3IChhd2FpdCBpbXBvcnQoJ0BkYXRhLWNsaWVudC9yZWFjdCcpKS5OZXR3b3JrTWFuYWdlcigpLFxuICAgIF07XG4gICAgY29uc3QgeyBjcmVhdGVQZXJzaXN0ZWRTdG9yZSB9ID0gYXdhaXQgaW1wb3J0KCdAZGF0YS1jbGllbnQvcmVhY3Qvc3NyJyk7XG4gICAgY29uc3QgW1NlcnZlckRhdGFQcm92aWRlciwgdXNlUmVhZHlDYWNoZVN0YXRlLCBjb250cm9sbGVyLCBzdG9yZV0gPVxuICAgICAgY3JlYXRlUGVyc2lzdGVkU3RvcmUobWFuYWdlcnMpO1xuXG4gICAgY29uc3QgbmV4dFByb3BzID0gYXdhaXQgbmV4dCh7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGNvbnRyb2xsZXIsXG4gICAgICBzdG9yZSxcbiAgICB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgLi4ubmV4dFByb3BzLFxuICAgICAgaW5pdERhdGE6IHtcbiAgICAgICAgLi4ubmV4dFByb3BzLmluaXREYXRhLFxuICAgICAgICBkYXRhY2xpZW50OiB1c2VSZWFkeUNhY2hlU3RhdGUsXG4gICAgICB9LFxuICAgICAgYXBwOiA8U2VydmVyRGF0YVByb3ZpZGVyPntuZXh0UHJvcHMuYXBwfTwvU2VydmVyRGF0YVByb3ZpZGVyPixcbiAgICAgIC8vIFRPRE86IGZpZ3VyZSBvdXQgaG93IHRvIG9ubHkgaW5qZWN0IGluIG5leHQgYW5kIG5vdCBoYXZlIHRvIGFsc28gcHV0IGhlcmVcbiAgICAgIGNvbnRyb2xsZXIsXG4gICAgICBzdG9yZSxcbiAgICB9O1xuICB9O1xufVxuIiwiY29uc3QgX19XRUJQQUNLX05BTUVTUEFDRV9PQkpFQ1RfXyA9IHJlcXVpcmUoXCJAYW5hbnNpL3JvdXRlclwiKTsiLCJjb25zdCBfX1dFQlBBQ0tfTkFNRVNQQUNFX09CSkVDVF9fID0gcmVxdWlyZShcImhpc3RvcnlcIik7IiwiaW1wb3J0IHsgUm91dGUsIFJvdXRlUHJvdmlkZXIsIFJvdXRlQ29udHJvbGxlciB9IGZyb20gJ0BhbmFuc2kvcm91dGVyJztcbmltcG9ydCB7IGNyZWF0ZU1lbW9yeUhpc3RvcnkgfSBmcm9tICdoaXN0b3J5JztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgQ3JlYXRlUm91dGVyLCBTZXJ2ZXJTcG91dCB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiByb3V0ZXJTcG91dDxSZXNvbHZlV2l0aD4ob3B0aW9uczoge1xuICByZXNvbHZlV2l0aD86IGFueTtcbiAgdXNlUmVzb2x2ZVdpdGg6ICgpID0+IFJlc29sdmVXaXRoO1xuICBjcmVhdGVSb3V0ZXI6IENyZWF0ZVJvdXRlcjxSZXNvbHZlV2l0aD47XG59KTogU2VydmVyU3BvdXQ8XG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICB7XG4gICAgbWF0Y2hlZFJvdXRlczogUm91dGU8UmVzb2x2ZVdpdGg+W107XG4gICAgc2VhcmNoUGFyYW1zOiBVUkxTZWFyY2hQYXJhbXM7XG4gIH0gJiB7XG4gICAgcm91dGVyOiBSb3V0ZUNvbnRyb2xsZXI8Um91dGU8UmVzb2x2ZVdpdGgsIGFueT4+O1xuICB9XG4+IHtcbiAgY29uc3QgY3JlYXRlUm91dGVDb21wb25lbnQgPSAoXG4gICAgcm91dGVyOiBSb3V0ZUNvbnRyb2xsZXI8Um91dGU8UmVzb2x2ZVdpdGgsIGFueT4+LFxuICApID0+XG4gICAgZnVuY3Rpb24gUm91dGVyKHsgY2hpbGRyZW4gfTogeyBjaGlsZHJlbjogUmVhY3QuUmVhY3ROb2RlIH0pIHtcbiAgICAgIGNvbnN0IHJlc29sdmVXaXRoID0gb3B0aW9ucy51c2VSZXNvbHZlV2l0aCgpO1xuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8Um91dGVQcm92aWRlciByb3V0ZXI9e3JvdXRlcn0gcmVzb2x2ZVdpdGg9e3Jlc29sdmVXaXRofT5cbiAgICAgICAgICB7Y2hpbGRyZW59XG4gICAgICAgIDwvUm91dGVQcm92aWRlcj5cbiAgICAgICk7XG4gICAgfTtcblxuICByZXR1cm4gbmV4dCA9PiBhc3luYyBwcm9wcyA9PiB7XG4gICAgY29uc3QgdXJsID0gcHJvcHMucmVxLnVybCB8fCAnJztcbiAgICBjb25zdCBwYXJ0cyA9IHVybC5zcGxpdCgnPycsIDIpO1xuICAgIGNvbnN0IHNlYXJjaFBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMocGFydHMubGVuZ3RoIDwgMiA/ICcnIDogcGFydHNbMV0pO1xuICAgIGNvbnN0IHJvdXRlciA9IG9wdGlvbnMuY3JlYXRlUm91dGVyKFxuICAgICAgY3JlYXRlTWVtb3J5SGlzdG9yeSh7IGluaXRpYWxFbnRyaWVzOiBbdXJsXSB9KSxcbiAgICApO1xuICAgIGNvbnN0IG1hdGNoZWRSb3V0ZXM6IFJvdXRlPFJlc29sdmVXaXRoPltdID0gcm91dGVyLmdldE1hdGNoZWRSb3V0ZXModXJsKTtcblxuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQoe1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBtYXRjaGVkUm91dGVzLFxuICAgICAgcm91dGVyLFxuICAgICAgc2VhcmNoUGFyYW1zLFxuICAgIH0pO1xuXG4gICAgY29uc3QgUm91dGVyID0gY3JlYXRlUm91dGVDb21wb25lbnQocm91dGVyKTtcblxuICAgIHJldHVybiB7XG4gICAgICAuLi5uZXh0UHJvcHMsXG4gICAgICBhcHA6IDxSb3V0ZXI+e25leHRQcm9wcy5hcHB9PC9Sb3V0ZXI+LFxuICAgICAgLy8gVE9ETzogZmlndXJlIG91dCBob3cgdG8gb25seSBpbmplY3QgaW4gbmV4dCBhbmQgbm90IGhhdmUgdG8gYWxzbyBwdXQgaGVyZVxuICAgICAgbWF0Y2hlZFJvdXRlcyxcbiAgICAgIHJvdXRlcixcbiAgICAgIHNlYXJjaFBhcmFtcyxcbiAgICB9O1xuICB9O1xufVxuIiwiaW1wb3J0IHsgUm91dGUgfSBmcm9tICdAYW5hbnNpL3JvdXRlcic7XG5cbmltcG9ydCB0eXBlIHsgUmVzb2x2ZVByb3BzLCBTZXJ2ZXJQcm9wcyB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG50eXBlIE5lZWRlZFByb3BzPFJvdXRlV2l0aD4gPSB7XG4gIG1hdGNoZWRSb3V0ZXM6IFJvdXRlPFJvdXRlV2l0aD5bXTtcbiAgc2VhcmNoUGFyYW1zOiBVUkxTZWFyY2hQYXJhbXM7XG59ICYgUmVzb2x2ZVByb3BzO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBwcmVmZXRjaFNwb3V0PEYgZXh0ZW5kcyBzdHJpbmc+KGZpZWxkOiBGKSB7XG4gIHJldHVybiBmdW5jdGlvbiA8XG4gICAgUm91dGVXaXRoLFxuICAgIE4gZXh0ZW5kcyBOZWVkZWRQcm9wczxSb3V0ZVdpdGg+LFxuICAgIEkgZXh0ZW5kcyBTZXJ2ZXJQcm9wcyxcbiAgPihcbiAgICBuZXh0OiAocHJvcHM6IEkpID0+IFByb21pc2U8XG4gICAgICB7XG4gICAgICAgIFtLIGluIEZdOiBSb3V0ZVdpdGg7XG4gICAgICB9ICYgTlxuICAgID4sXG4gICkge1xuICAgIHJldHVybiBhc3luYyAocHJvcHM6IEkpID0+IHtcbiAgICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgICB0cnkge1xuICAgICAgICBjb25zdCB0b0ZldGNoOiBQcm9taXNlPHVua25vd24+W10gPSBbXTtcbiAgICAgICAgbmV4dFByb3BzLm1hdGNoZWRSb3V0ZXMuZm9yRWFjaChyb3V0ZSA9PiB7XG4gICAgICAgICAgLy8gUHJlbG9hZCBsYXp5IGNvbXBvbmVudCBzbyBpdCdzIHJlYWR5IGZvciBTU1IgcmVuZGVyXG4gICAgICAgICAgaWYgKHR5cGVvZiByb3V0ZS5jb21wb25lbnQ/LnByZWxvYWQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHRvRmV0Y2gucHVzaChyb3V0ZS5jb21wb25lbnQucHJlbG9hZCgpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaWYgKHR5cGVvZiByb3V0ZS5yZXNvbHZlRGF0YSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgdG9GZXRjaC5wdXNoKFxuICAgICAgICAgICAgICByb3V0ZS5yZXNvbHZlRGF0YShcbiAgICAgICAgICAgICAgICBuZXh0UHJvcHNbZmllbGRdLFxuICAgICAgICAgICAgICAgIHJvdXRlLFxuICAgICAgICAgICAgICAgIG5leHRQcm9wcy5zZWFyY2hQYXJhbXMsXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIGF3YWl0IFByb21pc2UuYWxsKHRvRmV0Y2gpO1xuICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIG5leHRQcm9wcztcbiAgICB9O1xuICB9O1xufVxuIiwiaW1wb3J0IFJlYWN0LCB7IFN1c3BlbnNlIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgdHlwZSB7IFNlcnZlclNwb3V0IH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbnR5cGUgTmVlZGVkTmV4dCA9IHtcbiAgaW5pdERhdGE/OiBSZWNvcmQ8c3RyaW5nLCAoKSA9PiB1bmtub3duPjtcbiAgc2NyaXB0cz86IFJlYWN0LlJlYWN0Tm9kZVtdO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gSlNPTlNwb3V0KHtcbiAgaWQgPSAnYW5hbnNpLWpzb24nLFxufTogeyBpZD86IHN0cmluZyB9ID0ge30pOiBTZXJ2ZXJTcG91dDxcbiAgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBOZWVkZWROZXh0XG4+IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgY29uc3Qgc2NyaXB0czogUmVhY3QuUmVhY3ROb2RlW10gPSBuZXh0UHJvcHMuc2NyaXB0cyA/PyBbXTtcblxuICAgIE9iamVjdC5lbnRyaWVzKG5leHRQcm9wcy5pbml0RGF0YSA/PyB7fSkuZm9yRWFjaCgoW2tleSwgdXNlRGF0YV0pID0+IHtcbiAgICAgIGNvbnN0IGdsb2JhbElkID0gYCR7aWR9LiR7a2V5fWA7XG4gICAgICBjb25zdCBTY3JpcHQgPSAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGRhdGE6IGFueSA9IHVzZURhdGEoKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICBjb25zdCBlbmNvZGVkID0gSlNPTi5zdHJpbmdpZnkoZGF0YSk7XG4gICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgIDxzY3JpcHRcbiAgICAgICAgICAgICAgaWQ9e2dsb2JhbElkfVxuICAgICAgICAgICAgICB0eXBlPVwiYXBwbGljYXRpb24vanNvblwiXG4gICAgICAgICAgICAgIGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MPXt7XG4gICAgICAgICAgICAgICAgX19odG1sOiBlbmNvZGVkLFxuICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICBub25jZT17cHJvcHMubm9uY2V9XG4gICAgICAgICAgICAvPlxuICAgICAgICAgICk7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAvLyBUT0RPOiBVc2UgdW5pZmllZCBsb2dnaW5nXG4gICAgICAgICAgY29uc29sZS5lcnJvcihgRXJyb3Igc2VyaWFsaXppbmcganNvbiBmb3IgJHtrZXl9YCk7XG4gICAgICAgICAgY29uc29sZS5lcnJvcihlKTtcbiAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgfTtcbiAgICAgIHNjcmlwdHMucHVzaChcbiAgICAgICAgPFN1c3BlbnNlIGtleT17Z2xvYmFsSWR9PlxuICAgICAgICAgIDxTY3JpcHQgLz5cbiAgICAgICAgPC9TdXNwZW5zZT4sXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5leHRQcm9wcyxcbiAgICAgIHNjcmlwdHMsXG4gICAgfTtcbiAgfTtcbn1cbiIsImltcG9ydCB0eXBlIHsgSlNYIH0gZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBTZXJ2ZXJQcm9wcyB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG5jb25zdCBhcHBTcG91dCA9XG4gIChhcHA6IEpTWC5FbGVtZW50KSA9PlxuICA8UCBleHRlbmRzIFNlcnZlclByb3BzPihwcm9wczogUCkgPT5cbiAgICBQcm9taXNlLnJlc29sdmUoeyAuLi5wcm9wcywgYXBwIH0pO1xuXG5leHBvcnQgZGVmYXVsdCBhcHBTcG91dDtcbiIsImltcG9ydCB7IGNyZWF0ZUNvbnRleHQsIHVzZUNvbnRleHQgfSBmcm9tICdyZWFjdCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmF2aWdhdG9yUHJvcGVydGllcyB7XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG4gIGxhbmd1YWdlczogcmVhZG9ubHkgc3RyaW5nW107XG59XG5cbmV4cG9ydCBjb25zdCBOYXZpZ2F0b3JDb250ZXh0ID0gY3JlYXRlQ29udGV4dDxOYXZpZ2F0b3JQcm9wZXJ0aWVzIHwgdW5kZWZpbmVkPihcbiAgdW5kZWZpbmVkLFxuKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZU5hdmlnYXRvcigpOiBOYXZpZ2F0b3JQcm9wZXJ0aWVzIHtcbiAgY29uc3QgY29udGV4dCA9IHVzZUNvbnRleHQoTmF2aWdhdG9yQ29udGV4dCk7XG4gIGlmIChjb250ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ3VzZU5hdmlnYXRvciBtdXN0IGJlIHVzZWQgd2l0aGluIGEgTmF2aWdhdG9yUHJvdmlkZXInKTtcbiAgfVxuICByZXR1cm4gY29udGV4dDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlQWNjZXB0TGFuZ3VhZ2UoaGVhZGVyOiBzdHJpbmcgfCB1bmRlZmluZWQpOiB7XG4gIGxhbmd1YWdlOiBzdHJpbmc7XG4gIGxhbmd1YWdlczogcmVhZG9ubHkgc3RyaW5nW107XG59IHtcbiAgaWYgKCFoZWFkZXIpIHtcbiAgICByZXR1cm4geyBsYW5ndWFnZTogJ2VuJywgbGFuZ3VhZ2VzOiBbJ2VuJ10gfTtcbiAgfVxuXG4gIGNvbnN0IHBhcnNlZCA9IGhlYWRlclxuICAgIC5zcGxpdCgnLCcpXG4gICAgLm1hcChwYXJ0ID0+IHtcbiAgICAgIGNvbnN0IFtsYW5nLCBxUGFydF0gPSBwYXJ0LnRyaW0oKS5zcGxpdCgnOycpO1xuICAgICAgY29uc3QgcSA9IHFQYXJ0ID8gcGFyc2VGbG9hdChxUGFydC5yZXBsYWNlKCdxPScsICcnKSkgOiAxO1xuICAgICAgcmV0dXJuIHsgbGFuZzogbGFuZy50cmltKCksIHEgfTtcbiAgICB9KVxuICAgIC5zb3J0KChhLCBiKSA9PiBiLnEgLSBhLnEpXG4gICAgLm1hcCgoeyBsYW5nIH0pID0+IGxhbmcpO1xuXG4gIHJldHVybiB7XG4gICAgbGFuZ3VhZ2U6IHBhcnNlZFswXSA/PyAnZW4nLFxuICAgIGxhbmd1YWdlczogcGFyc2VkLmxlbmd0aCA+IDAgPyBwYXJzZWQgOiBbJ2VuJ10sXG4gIH07XG59XG4iLCJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuXG5pbXBvcnQgeyBOYXZpZ2F0b3JDb250ZXh0LCBwYXJzZUFjY2VwdExhbmd1YWdlIH0gZnJvbSAnLi9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5pbXBvcnQgdHlwZSB7IFNlcnZlclNwb3V0IH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbnR5cGUgTmVlZGVkTmV4dCA9IHtcbiAgaW5pdERhdGE/OiBSZWNvcmQ8c3RyaW5nLCAoKSA9PiB1bmtub3duPjtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIG5hdmlnYXRvclNwb3V0KCk6IFNlcnZlclNwb3V0PFxuICBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgeyBsYW5ndWFnZTogc3RyaW5nOyBsYW5ndWFnZXM6IHJlYWRvbmx5IHN0cmluZ1tdIH0sXG4gIE5lZWRlZE5leHRcbj4ge1xuICByZXR1cm4gbmV4dCA9PiBhc3luYyBwcm9wcyA9PiB7XG4gICAgY29uc3QgYWNjZXB0TGFuZ3VhZ2UgPSBwcm9wcy5yZXEuaGVhZGVyc1snYWNjZXB0LWxhbmd1YWdlJ107XG4gICAgY29uc3QgaGVhZGVyID1cbiAgICAgIHR5cGVvZiBhY2NlcHRMYW5ndWFnZSA9PT0gJ3N0cmluZycgPyBhY2NlcHRMYW5ndWFnZSA6IGFjY2VwdExhbmd1YWdlPy5bMF07XG4gICAgY29uc3QgbmF2aWdhdG9yUHJvcHMgPSBwYXJzZUFjY2VwdExhbmd1YWdlKGhlYWRlcik7XG5cbiAgICBjb25zdCBuZXh0UHJvcHMgPSBhd2FpdCBuZXh0KHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgLi4ubmF2aWdhdG9yUHJvcHMsXG4gICAgfSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4ubmV4dFByb3BzLFxuICAgICAgLi4ubmF2aWdhdG9yUHJvcHMsXG4gICAgICBpbml0RGF0YToge1xuICAgICAgICAuLi5uZXh0UHJvcHMuaW5pdERhdGEsXG4gICAgICAgIG5hdmlnYXRvcjogKCkgPT4gbmF2aWdhdG9yUHJvcHMsXG4gICAgICB9LFxuICAgICAgYXBwOiAoXG4gICAgICAgIDxOYXZpZ2F0b3JDb250ZXh0IHZhbHVlPXtuYXZpZ2F0b3JQcm9wc30+XG4gICAgICAgICAge25leHRQcm9wcy5hcHB9XG4gICAgICAgIDwvTmF2aWdhdG9yQ29udGV4dD5cbiAgICAgICksXG4gICAgfTtcbiAgfTtcbn1cbiIsImV4cG9ydCB7IGRlZmF1bHQgYXMgbGF5U3BvdXRzIH0gZnJvbSAnLi9sYXlTcG91dHMuanMnO1xuZXhwb3J0IHtcbiAgZGVmYXVsdCBhcyBkb2N1bWVudFNwb3V0LFxuICB0eXBlIENTUG9saWN5LFxufSBmcm9tICcuL3Nwb3V0cy9kb2N1bWVudC5zZXJ2ZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBkYXRhQ2xpZW50U3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9kYXRhQ2xpZW50LnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHJvdXRlclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvcm91dGVyLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHByZWZldGNoU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9wcmVmZXRjaC5zZXJ2ZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBKU09OU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9qc29uLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGFwcFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvYXBwLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIG5hdmlnYXRvclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvbmF2aWdhdG9yLnNlcnZlci5qcyc7XG5leHBvcnQgeyB1c2VOYXZpZ2F0b3IgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5leHBvcnQgdHlwZSB7IE5hdmlnYXRvclByb3BlcnRpZXMgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5leHBvcnQgdHlwZSB7IFNlcnZlclByb3BzIH0gZnJvbSAnLi9zcG91dHMvdHlwZXMuanMnO1xuZXhwb3J0IHR5cGUgeyBTZXJ2ZXJTcG91dCBhcyBTcG91dCB9IGZyb20gJy4vc3BvdXRzL3R5cGVzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2NyaXB0cy90eXBlcy5qcyc7XG4iXSwibmFtZXMiOlsiZ2V0RXJyb3JTdGF0dXMiLCJlcnJvciIsInN0YXR1cyIsInBhcnNlZCIsInBhcnNlSW50IiwiaXNOYU4iLCJlc2NhcGVIdG1sIiwic3RyIiwicmVwbGFjZSIsInJlbmRlckVycm9yUGFnZSIsInVybCIsInN0YXR1c0NvZGUiLCJvcHRpb25zIiwiZXJyb3JNZXNzYWdlIiwiRXJyb3IiLCJtZXNzYWdlIiwiU3RyaW5nIiwic3RhY2siLCJ1bmRlZmluZWQiLCJzaG93U3RhY2siLCJoaW50IiwiYmFkZ2UiLCJjcnlwdG8iLCJyZW5kZXJUb1BpcGVhYmxlU3RyZWFtIiwicmVhY3RSZW5kZXIiLCJsYXlTcG91dHMiLCJzcG91dHMiLCJ0aW1lb3V0TVMiLCJvbkVycm9yIiwicmVuZGVyIiwiY2xpZW50TWFuaWZlc3QiLCJyZXEiLCJyZXMiLCJub25jZSIsInJhbmRvbUJ5dGVzIiwidG9TdHJpbmciLCJhcHAiLCJkaWRFcnJvciIsImxhc3RFcnJvciIsInBpcGUiLCJhYm9ydCIsIm9uU2hlbGxSZWFkeSIsInNldEhlYWRlciIsIm9uU2hlbGxFcnJvciIsImUiLCJjb25zb2xlIiwic2V0VGltZW91dCIsImJ1aWxkUG9saWN5IiwicG9saWN5T2JqIiwiT2JqZWN0Iiwia2V5cyIsIm1hcCIsImtleSIsInZhbCIsIkFycmF5IiwiaXNBcnJheSIsIlNldCIsInZhbHVlcyIsImZpbHRlciIsInYiLCJqb2luIiwiaW5jbHVkZXMiLCJuZXdWYWwiLCJ0cmltIiwiam9pbk5vbmNlIiwicG9saWN5IiwiRG9jdW1lbnQiLCJhc3NldHMiLCJoZWFkIiwiZGVmYXVsdEhlYWQiLCJjaGlsZHJlbiIsInRpdGxlIiwicm9vdElkIiwiY2hhclNldCIsInNjcmlwdHMiLCJleHRyYVN0eWxlIiwibGFuZyIsIl9qc3hzIiwiX2pzeCIsImFzc2V0IiwiaSIsInJlbCIsImlkIiwiaHJlZiIsImVuZHNXaXRoIiwic3JjIiwiYXN5bmMiLCJfRnJhZ21lbnQiLCJuYW1lIiwiY29udGVudCIsInByb2Nlc3MiLCJlbnYiLCJXRUJQQUNLX1BVQkxJQ19QQVRIIiwiUmVhY3QiLCJqc3giLCJEb2N1bWVudFNwb3V0IiwibmV4dCIsInByb3BzIiwibmV4dFByb3BzIiwicHVibGljUGF0aCIsImVudHJ5cG9pbnRzIiwibGVuZ3RoIiwiYXNzZXRNYXAiLCJhc3NldExpc3QiLCJmb3JFYWNoIiwiZW50cnlwb2ludCIsInB1c2giLCJuYW1lZENodW5rR3JvdXBzIiwibWF0Y2hlZFJvdXRlcyIsInNvbWUiLCJyb3V0ZSIsImZsYXRNYXAiLCJjaHVuayIsImNoaWxkcmVuQXNzZXRzIiwiYXMiLCJjc1BvbGljeSIsImh0dHBFcXVpdiIsIk5PREVfRU5WIiwicHJlbG9hZCIsImMiLCJkYXRhQ2xpZW50U3BvdXQiLCJtYW5hZ2VycyIsImdldE1hbmFnZXJzIiwiTmV0d29ya01hbmFnZXIiLCJjcmVhdGVQZXJzaXN0ZWRTdG9yZSIsIlNlcnZlckRhdGFQcm92aWRlciIsInVzZVJlYWR5Q2FjaGVTdGF0ZSIsImNvbnRyb2xsZXIiLCJzdG9yZSIsImluaXREYXRhIiwiZGF0YWNsaWVudCIsIlJvdXRlUHJvdmlkZXIiLCJjcmVhdGVNZW1vcnlIaXN0b3J5Iiwicm91dGVyU3BvdXQiLCJjcmVhdGVSb3V0ZUNvbXBvbmVudCIsInJvdXRlciIsIlJvdXRlciIsInJlc29sdmVXaXRoIiwidXNlUmVzb2x2ZVdpdGgiLCJwYXJ0cyIsInNwbGl0Iiwic2VhcmNoUGFyYW1zIiwiVVJMU2VhcmNoUGFyYW1zIiwiY3JlYXRlUm91dGVyIiwiaW5pdGlhbEVudHJpZXMiLCJnZXRNYXRjaGVkUm91dGVzIiwicHJlZmV0Y2hTcG91dCIsImZpZWxkIiwidG9GZXRjaCIsImNvbXBvbmVudCIsInJlc29sdmVEYXRhIiwiUHJvbWlzZSIsImFsbCIsIlN1c3BlbnNlIiwiSlNPTlNwb3V0IiwiZW50cmllcyIsInVzZURhdGEiLCJnbG9iYWxJZCIsIlNjcmlwdCIsImRhdGEiLCJlbmNvZGVkIiwiSlNPTiIsInN0cmluZ2lmeSIsInR5cGUiLCJkYW5nZXJvdXNseVNldElubmVySFRNTCIsIl9faHRtbCIsImFwcFNwb3V0IiwicmVzb2x2ZSIsImNyZWF0ZUNvbnRleHQiLCJ1c2VDb250ZXh0IiwiTmF2aWdhdG9yQ29udGV4dCIsInVzZU5hdmlnYXRvciIsImNvbnRleHQiLCJwYXJzZUFjY2VwdExhbmd1YWdlIiwiaGVhZGVyIiwibGFuZ3VhZ2UiLCJsYW5ndWFnZXMiLCJwYXJ0IiwicVBhcnQiLCJxIiwicGFyc2VGbG9hdCIsInNvcnQiLCJhIiwiYiIsIm5hdmlnYXRvclNwb3V0IiwiYWNjZXB0TGFuZ3VhZ2UiLCJoZWFkZXJzIiwibmF2aWdhdG9yUHJvcHMiLCJuYXZpZ2F0b3IiLCJ2YWx1ZSIsImRlZmF1bHQiLCJkb2N1bWVudFNwb3V0Il0sImlnbm9yZUxpc3QiOltdLCJzb3VyY2VSb290IjoiIn0=
package/lib/index.d.ts CHANGED
@@ -5,7 +5,6 @@ export { default as routerSpout } from './spouts/router.js';
5
5
  export { default as JSONSpout } from './spouts/json.js';
6
6
  export { default as appSpout } from './spouts/app.js';
7
7
  export { default as navigatorSpout } from './spouts/navigator.js';
8
- export { default as antdSpout } from './spouts/antd.js';
9
8
  export { useNavigator } from './spouts/navigator.context.js';
10
9
  export type { NavigatorProperties } from './spouts/navigator.context.js';
11
10
  export type { ServerProps } from './spouts/types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,YAAY,EAAE,WAAW,IAAI,KAAK,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACpE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,YAAY,EAAE,WAAW,IAAI,KAAK,EAAE,MAAM,mBAAmB,CAAC"}
package/lib/index.js CHANGED
@@ -5,6 +5,5 @@ export { default as routerSpout } from './spouts/router.js';
5
5
  export { default as JSONSpout } from './spouts/json.js';
6
6
  export { default as appSpout } from './spouts/app.js';
7
7
  export { default as navigatorSpout } from './spouts/navigator.js';
8
- export { default as antdSpout } from './spouts/antd.js';
9
8
  export { useNavigator } from './spouts/navigator.context.js';
10
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZWZhdWx0IiwiZmxvb2RTcG91dHMiLCJkb2N1bWVudFNwb3V0IiwiZGF0YUNsaWVudFNwb3V0Iiwicm91dGVyU3BvdXQiLCJKU09OU3BvdXQiLCJhcHBTcG91dCIsIm5hdmlnYXRvclNwb3V0IiwiYW50ZFNwb3V0IiwidXNlTmF2aWdhdG9yIl0sInNvdXJjZXMiOlsiLi4vc3JjL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGRlZmF1bHQgYXMgZmxvb2RTcG91dHMgfSBmcm9tICcuL2Zsb29kU3BvdXRzLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZG9jdW1lbnRTcG91dCB9IGZyb20gJy4vc3BvdXRzL2RvY3VtZW50LmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZGF0YUNsaWVudFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvZGF0YUNsaWVudC5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHJvdXRlclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvcm91dGVyLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgSlNPTlNwb3V0IH0gZnJvbSAnLi9zcG91dHMvanNvbi5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGFwcFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvYXBwLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgbmF2aWdhdG9yU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBhbnRkU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9hbnRkLmpzJztcbmV4cG9ydCB7IHVzZU5hdmlnYXRvciB9IGZyb20gJy4vc3BvdXRzL25hdmlnYXRvci5jb250ZXh0LmpzJztcbmV4cG9ydCB0eXBlIHsgTmF2aWdhdG9yUHJvcGVydGllcyB9IGZyb20gJy4vc3BvdXRzL25hdmlnYXRvci5jb250ZXh0LmpzJztcbmV4cG9ydCB0eXBlIHsgU2VydmVyUHJvcHMgfSBmcm9tICcuL3Nwb3V0cy90eXBlcy5qcyc7XG5leHBvcnQgdHlwZSB7IENsaWVudFNwb3V0IGFzIFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvdHlwZXMuanMnO1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxPQUFPLElBQUlDLFdBQVcsUUFBUSxrQkFBa0I7QUFDekQsU0FBU0QsT0FBTyxJQUFJRSxhQUFhLFFBQVEsc0JBQXNCO0FBQy9ELFNBQVNGLE9BQU8sSUFBSUcsZUFBZSxRQUFRLHdCQUF3QjtBQUNuRSxTQUFTSCxPQUFPLElBQUlJLFdBQVcsUUFBUSxvQkFBb0I7QUFDM0QsU0FBU0osT0FBTyxJQUFJSyxTQUFTLFFBQVEsa0JBQWtCO0FBQ3ZELFNBQVNMLE9BQU8sSUFBSU0sUUFBUSxRQUFRLGlCQUFpQjtBQUNyRCxTQUFTTixPQUFPLElBQUlPLGNBQWMsUUFBUSx1QkFBdUI7QUFDakUsU0FBU1AsT0FBTyxJQUFJUSxTQUFTLFFBQVEsa0JBQWtCO0FBQ3ZELFNBQVNDLFlBQVksUUFBUSwrQkFBK0IiLCJpZ25vcmVMaXN0IjpbXX0=
9
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZWZhdWx0IiwiZmxvb2RTcG91dHMiLCJkb2N1bWVudFNwb3V0IiwiZGF0YUNsaWVudFNwb3V0Iiwicm91dGVyU3BvdXQiLCJKU09OU3BvdXQiLCJhcHBTcG91dCIsIm5hdmlnYXRvclNwb3V0IiwidXNlTmF2aWdhdG9yIl0sInNvdXJjZXMiOlsiLi4vc3JjL2luZGV4LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGRlZmF1bHQgYXMgZmxvb2RTcG91dHMgfSBmcm9tICcuL2Zsb29kU3BvdXRzLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZG9jdW1lbnRTcG91dCB9IGZyb20gJy4vc3BvdXRzL2RvY3VtZW50LmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZGF0YUNsaWVudFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvZGF0YUNsaWVudC5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHJvdXRlclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvcm91dGVyLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgSlNPTlNwb3V0IH0gZnJvbSAnLi9zcG91dHMvanNvbi5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGFwcFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvYXBwLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgbmF2aWdhdG9yU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuanMnO1xuZXhwb3J0IHsgdXNlTmF2aWdhdG9yIH0gZnJvbSAnLi9zcG91dHMvbmF2aWdhdG9yLmNvbnRleHQuanMnO1xuZXhwb3J0IHR5cGUgeyBOYXZpZ2F0b3JQcm9wZXJ0aWVzIH0gZnJvbSAnLi9zcG91dHMvbmF2aWdhdG9yLmNvbnRleHQuanMnO1xuZXhwb3J0IHR5cGUgeyBTZXJ2ZXJQcm9wcyB9IGZyb20gJy4vc3BvdXRzL3R5cGVzLmpzJztcbmV4cG9ydCB0eXBlIHsgQ2xpZW50U3BvdXQgYXMgU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy90eXBlcy5qcyc7XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLE9BQU8sSUFBSUMsV0FBVyxRQUFRLGtCQUFrQjtBQUN6RCxTQUFTRCxPQUFPLElBQUlFLGFBQWEsUUFBUSxzQkFBc0I7QUFDL0QsU0FBU0YsT0FBTyxJQUFJRyxlQUFlLFFBQVEsd0JBQXdCO0FBQ25FLFNBQVNILE9BQU8sSUFBSUksV0FBVyxRQUFRLG9CQUFvQjtBQUMzRCxTQUFTSixPQUFPLElBQUlLLFNBQVMsUUFBUSxrQkFBa0I7QUFDdkQsU0FBU0wsT0FBTyxJQUFJTSxRQUFRLFFBQVEsaUJBQWlCO0FBQ3JELFNBQVNOLE9BQU8sSUFBSU8sY0FBYyxRQUFRLHVCQUF1QjtBQUNqRSxTQUFTQyxZQUFZLFFBQVEsK0JBQStCIiwiaWdub3JlTGlzdCI6W119
@@ -1,7 +1,6 @@
1
1
  export { default as laySpouts } from './laySpouts.js';
2
- export { default as documentSpout } from './spouts/document.server.js';
2
+ export { default as documentSpout, type CSPolicy, } from './spouts/document.server.js';
3
3
  export { default as dataClientSpout } from './spouts/dataClient.server.js';
4
- export { default as antdSpout } from './spouts/antd.server.js';
5
4
  export { default as routerSpout } from './spouts/router.server.js';
6
5
  export { default as prefetchSpout } from './spouts/prefetch.server.js';
7
6
  export { default as JSONSpout } from './spouts/json.server.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.server.d.ts","sourceRoot":"","sources":["../src/index.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,YAAY,EAAE,WAAW,IAAI,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC9D,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.server.d.ts","sourceRoot":"","sources":["../src/index.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EACL,OAAO,IAAI,aAAa,EACxB,KAAK,QAAQ,GACd,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,YAAY,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACzE,YAAY,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,YAAY,EAAE,WAAW,IAAI,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC9D,cAAc,oBAAoB,CAAC"}
@@ -1,7 +1,6 @@
1
1
  export { default as laySpouts } from './laySpouts.js';
2
2
  export { default as documentSpout } from './spouts/document.server.js';
3
3
  export { default as dataClientSpout } from './spouts/dataClient.server.js';
4
- export { default as antdSpout } from './spouts/antd.server.js';
5
4
  export { default as routerSpout } from './spouts/router.server.js';
6
5
  export { default as prefetchSpout } from './spouts/prefetch.server.js';
7
6
  export { default as JSONSpout } from './spouts/json.server.js';
@@ -9,4 +8,4 @@ export { default as appSpout } from './spouts/app.server.js';
9
8
  export { default as navigatorSpout } from './spouts/navigator.server.js';
10
9
  export { useNavigator } from './spouts/navigator.context.js';
11
10
  export * from './scripts/types.js';
12
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZWZhdWx0IiwibGF5U3BvdXRzIiwiZG9jdW1lbnRTcG91dCIsImRhdGFDbGllbnRTcG91dCIsImFudGRTcG91dCIsInJvdXRlclNwb3V0IiwicHJlZmV0Y2hTcG91dCIsIkpTT05TcG91dCIsImFwcFNwb3V0IiwibmF2aWdhdG9yU3BvdXQiLCJ1c2VOYXZpZ2F0b3IiXSwic291cmNlcyI6WyIuLi9zcmMvaW5kZXguc2VydmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGRlZmF1bHQgYXMgbGF5U3BvdXRzIH0gZnJvbSAnLi9sYXlTcG91dHMuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBkb2N1bWVudFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvZG9jdW1lbnQuc2VydmVyLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZGF0YUNsaWVudFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvZGF0YUNsaWVudC5zZXJ2ZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBhbnRkU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9hbnRkLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHJvdXRlclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvcm91dGVyLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHByZWZldGNoU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9wcmVmZXRjaC5zZXJ2ZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBKU09OU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9qc29uLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGFwcFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvYXBwLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIG5hdmlnYXRvclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvbmF2aWdhdG9yLnNlcnZlci5qcyc7XG5leHBvcnQgeyB1c2VOYXZpZ2F0b3IgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5leHBvcnQgdHlwZSB7IE5hdmlnYXRvclByb3BlcnRpZXMgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5leHBvcnQgdHlwZSB7IFNlcnZlclByb3BzIH0gZnJvbSAnLi9zcG91dHMvdHlwZXMuanMnO1xuZXhwb3J0IHR5cGUgeyBTZXJ2ZXJTcG91dCBhcyBTcG91dCB9IGZyb20gJy4vc3BvdXRzL3R5cGVzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2NyaXB0cy90eXBlcy5qcyc7XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLE9BQU8sSUFBSUMsU0FBUyxRQUFRLGdCQUFnQjtBQUNyRCxTQUFTRCxPQUFPLElBQUlFLGFBQWEsUUFBUSw2QkFBNkI7QUFDdEUsU0FBU0YsT0FBTyxJQUFJRyxlQUFlLFFBQVEsK0JBQStCO0FBQzFFLFNBQVNILE9BQU8sSUFBSUksU0FBUyxRQUFRLHlCQUF5QjtBQUM5RCxTQUFTSixPQUFPLElBQUlLLFdBQVcsUUFBUSwyQkFBMkI7QUFDbEUsU0FBU0wsT0FBTyxJQUFJTSxhQUFhLFFBQVEsNkJBQTZCO0FBQ3RFLFNBQVNOLE9BQU8sSUFBSU8sU0FBUyxRQUFRLHlCQUF5QjtBQUM5RCxTQUFTUCxPQUFPLElBQUlRLFFBQVEsUUFBUSx3QkFBd0I7QUFDNUQsU0FBU1IsT0FBTyxJQUFJUyxjQUFjLFFBQVEsOEJBQThCO0FBQ3hFLFNBQVNDLFlBQVksUUFBUSwrQkFBK0I7QUFJNUQsY0FBYyxvQkFBb0IiLCJpZ25vcmVMaXN0IjpbXX0=
11
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZWZhdWx0IiwibGF5U3BvdXRzIiwiZG9jdW1lbnRTcG91dCIsImRhdGFDbGllbnRTcG91dCIsInJvdXRlclNwb3V0IiwicHJlZmV0Y2hTcG91dCIsIkpTT05TcG91dCIsImFwcFNwb3V0IiwibmF2aWdhdG9yU3BvdXQiLCJ1c2VOYXZpZ2F0b3IiXSwic291cmNlcyI6WyIuLi9zcmMvaW5kZXguc2VydmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGRlZmF1bHQgYXMgbGF5U3BvdXRzIH0gZnJvbSAnLi9sYXlTcG91dHMuanMnO1xuZXhwb3J0IHtcbiAgZGVmYXVsdCBhcyBkb2N1bWVudFNwb3V0LFxuICB0eXBlIENTUG9saWN5LFxufSBmcm9tICcuL3Nwb3V0cy9kb2N1bWVudC5zZXJ2ZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBkYXRhQ2xpZW50U3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9kYXRhQ2xpZW50LnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHJvdXRlclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvcm91dGVyLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHByZWZldGNoU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9wcmVmZXRjaC5zZXJ2ZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBKU09OU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9qc29uLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGFwcFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvYXBwLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIG5hdmlnYXRvclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvbmF2aWdhdG9yLnNlcnZlci5qcyc7XG5leHBvcnQgeyB1c2VOYXZpZ2F0b3IgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5leHBvcnQgdHlwZSB7IE5hdmlnYXRvclByb3BlcnRpZXMgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5leHBvcnQgdHlwZSB7IFNlcnZlclByb3BzIH0gZnJvbSAnLi9zcG91dHMvdHlwZXMuanMnO1xuZXhwb3J0IHR5cGUgeyBTZXJ2ZXJTcG91dCBhcyBTcG91dCB9IGZyb20gJy4vc3BvdXRzL3R5cGVzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2NyaXB0cy90eXBlcy5qcyc7XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLE9BQU8sSUFBSUMsU0FBUyxRQUFRLGdCQUFnQjtBQUNyRCxTQUNFRCxPQUFPLElBQUlFLGFBQWEsUUFFbkIsNkJBQTZCO0FBQ3BDLFNBQVNGLE9BQU8sSUFBSUcsZUFBZSxRQUFRLCtCQUErQjtBQUMxRSxTQUFTSCxPQUFPLElBQUlJLFdBQVcsUUFBUSwyQkFBMkI7QUFDbEUsU0FBU0osT0FBTyxJQUFJSyxhQUFhLFFBQVEsNkJBQTZCO0FBQ3RFLFNBQVNMLE9BQU8sSUFBSU0sU0FBUyxRQUFRLHlCQUF5QjtBQUM5RCxTQUFTTixPQUFPLElBQUlPLFFBQVEsUUFBUSx3QkFBd0I7QUFDNUQsU0FBU1AsT0FBTyxJQUFJUSxjQUFjLFFBQVEsOEJBQThCO0FBQ3hFLFNBQVNDLFlBQVksUUFBUSwrQkFBK0I7QUFJNUQsY0FBYyxvQkFBb0IiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -1,7 +1,6 @@
1
1
  export { default as laySpouts } from './laySpouts.js';
2
2
  export { default as documentSpout } from './spouts/document.server.js';
3
3
  export { default as dataClientSpout } from './spouts/dataClient.server.js';
4
- export { default as antdSpout } from './spouts/antd.server.js';
5
4
  export { default as routerSpout } from './spouts/router.server.js';
6
5
  export { default as prefetchSpout } from './spouts/prefetch.server.js';
7
6
  export { default as JSONSpout } from './spouts/json.server.js';
@@ -9,4 +8,4 @@ export { default as appSpout } from './spouts/app.server.js';
9
8
  export { default as navigatorSpout } from './spouts/navigator.server.js';
10
9
  export { useNavigator } from './spouts/navigator.context.js';
11
10
  export * from './scripts/types.js';
12
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZWZhdWx0IiwibGF5U3BvdXRzIiwiZG9jdW1lbnRTcG91dCIsImRhdGFDbGllbnRTcG91dCIsImFudGRTcG91dCIsInJvdXRlclNwb3V0IiwicHJlZmV0Y2hTcG91dCIsIkpTT05TcG91dCIsImFwcFNwb3V0IiwibmF2aWdhdG9yU3BvdXQiLCJ1c2VOYXZpZ2F0b3IiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXguc2VydmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGRlZmF1bHQgYXMgbGF5U3BvdXRzIH0gZnJvbSAnLi9sYXlTcG91dHMuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBkb2N1bWVudFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvZG9jdW1lbnQuc2VydmVyLmpzJztcbmV4cG9ydCB7IGRlZmF1bHQgYXMgZGF0YUNsaWVudFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvZGF0YUNsaWVudC5zZXJ2ZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBhbnRkU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9hbnRkLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHJvdXRlclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvcm91dGVyLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHByZWZldGNoU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9wcmVmZXRjaC5zZXJ2ZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBKU09OU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9qc29uLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGFwcFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvYXBwLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIG5hdmlnYXRvclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvbmF2aWdhdG9yLnNlcnZlci5qcyc7XG5leHBvcnQgeyB1c2VOYXZpZ2F0b3IgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5leHBvcnQgdHlwZSB7IE5hdmlnYXRvclByb3BlcnRpZXMgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5leHBvcnQgdHlwZSB7IFNlcnZlclByb3BzIH0gZnJvbSAnLi9zcG91dHMvdHlwZXMuanMnO1xuZXhwb3J0IHR5cGUgeyBTZXJ2ZXJTcG91dCBhcyBTcG91dCB9IGZyb20gJy4vc3BvdXRzL3R5cGVzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2NyaXB0cy90eXBlcy5qcyc7XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLE9BQU8sSUFBSUMsU0FBUyxRQUFRLGdCQUFnQjtBQUNyRCxTQUFTRCxPQUFPLElBQUlFLGFBQWEsUUFBUSw2QkFBNkI7QUFDdEUsU0FBU0YsT0FBTyxJQUFJRyxlQUFlLFFBQVEsK0JBQStCO0FBQzFFLFNBQVNILE9BQU8sSUFBSUksU0FBUyxRQUFRLHlCQUF5QjtBQUM5RCxTQUFTSixPQUFPLElBQUlLLFdBQVcsUUFBUSwyQkFBMkI7QUFDbEUsU0FBU0wsT0FBTyxJQUFJTSxhQUFhLFFBQVEsNkJBQTZCO0FBQ3RFLFNBQVNOLE9BQU8sSUFBSU8sU0FBUyxRQUFRLHlCQUF5QjtBQUM5RCxTQUFTUCxPQUFPLElBQUlRLFFBQVEsUUFBUSx3QkFBd0I7QUFDNUQsU0FBU1IsT0FBTyxJQUFJUyxjQUFjLFFBQVEsOEJBQThCO0FBQ3hFLFNBQVNDLFlBQVksUUFBUSwrQkFBK0I7QUFJNUQsY0FBYyxvQkFBb0IiLCJpZ25vcmVMaXN0IjpbXX0=
11
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJkZWZhdWx0IiwibGF5U3BvdXRzIiwiZG9jdW1lbnRTcG91dCIsImRhdGFDbGllbnRTcG91dCIsInJvdXRlclNwb3V0IiwicHJlZmV0Y2hTcG91dCIsIkpTT05TcG91dCIsImFwcFNwb3V0IiwibmF2aWdhdG9yU3BvdXQiLCJ1c2VOYXZpZ2F0b3IiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXguc2VydmVyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGRlZmF1bHQgYXMgbGF5U3BvdXRzIH0gZnJvbSAnLi9sYXlTcG91dHMuanMnO1xuZXhwb3J0IHtcbiAgZGVmYXVsdCBhcyBkb2N1bWVudFNwb3V0LFxuICB0eXBlIENTUG9saWN5LFxufSBmcm9tICcuL3Nwb3V0cy9kb2N1bWVudC5zZXJ2ZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBkYXRhQ2xpZW50U3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9kYXRhQ2xpZW50LnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHJvdXRlclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvcm91dGVyLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIHByZWZldGNoU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9wcmVmZXRjaC5zZXJ2ZXIuanMnO1xuZXhwb3J0IHsgZGVmYXVsdCBhcyBKU09OU3BvdXQgfSBmcm9tICcuL3Nwb3V0cy9qc29uLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIGFwcFNwb3V0IH0gZnJvbSAnLi9zcG91dHMvYXBwLnNlcnZlci5qcyc7XG5leHBvcnQgeyBkZWZhdWx0IGFzIG5hdmlnYXRvclNwb3V0IH0gZnJvbSAnLi9zcG91dHMvbmF2aWdhdG9yLnNlcnZlci5qcyc7XG5leHBvcnQgeyB1c2VOYXZpZ2F0b3IgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5leHBvcnQgdHlwZSB7IE5hdmlnYXRvclByb3BlcnRpZXMgfSBmcm9tICcuL3Nwb3V0cy9uYXZpZ2F0b3IuY29udGV4dC5qcyc7XG5leHBvcnQgdHlwZSB7IFNlcnZlclByb3BzIH0gZnJvbSAnLi9zcG91dHMvdHlwZXMuanMnO1xuZXhwb3J0IHR5cGUgeyBTZXJ2ZXJTcG91dCBhcyBTcG91dCB9IGZyb20gJy4vc3BvdXRzL3R5cGVzLmpzJztcbmV4cG9ydCAqIGZyb20gJy4vc2NyaXB0cy90eXBlcy5qcyc7XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLE9BQU8sSUFBSUMsU0FBUyxRQUFRLGdCQUFnQjtBQUNyRCxTQUNFRCxPQUFPLElBQUlFLGFBQWEsUUFFbkIsNkJBQTZCO0FBQ3BDLFNBQVNGLE9BQU8sSUFBSUcsZUFBZSxRQUFRLCtCQUErQjtBQUMxRSxTQUFTSCxPQUFPLElBQUlJLFdBQVcsUUFBUSwyQkFBMkI7QUFDbEUsU0FBU0osT0FBTyxJQUFJSyxhQUFhLFFBQVEsNkJBQTZCO0FBQ3RFLFNBQVNMLE9BQU8sSUFBSU0sU0FBUyxRQUFRLHlCQUF5QjtBQUM5RCxTQUFTTixPQUFPLElBQUlPLFFBQVEsUUFBUSx3QkFBd0I7QUFDNUQsU0FBU1AsT0FBTyxJQUFJUSxjQUFjLFFBQVEsOEJBQThCO0FBQ3hFLFNBQVNDLFlBQVksUUFBUSwrQkFBK0I7QUFJNUQsY0FBYyxvQkFBb0IiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -1,10 +1,7 @@
1
+ import { createCache, StyleProvider } from '@ant-design/cssinjs';
1
2
  import { jsx as _jsx } from "react/jsx-runtime";
2
- export default function antdSpout() {
3
+ export function antdSpout() {
3
4
  return next => async props => {
4
- const {
5
- createCache,
6
- StyleProvider
7
- } = await import(/* webpackIgnore: true */'@ant-design/cssinjs');
8
5
  const cache = createCache();
9
6
  const nextProps = await next(props);
10
7
  return {
@@ -16,4 +13,4 @@ export default function antdSpout() {
16
13
  };
17
14
  };
18
15
  }
19
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhbnRkU3BvdXQiLCJuZXh0IiwicHJvcHMiLCJjcmVhdGVDYWNoZSIsIlN0eWxlUHJvdmlkZXIiLCJjYWNoZSIsIm5leHRQcm9wcyIsImFwcCIsIl9qc3giLCJjaGlsZHJlbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zcG91dHMvYW50ZC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDbGllbnRTcG91dCB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBhbnRkU3BvdXQoKTogQ2xpZW50U3BvdXQge1xuICByZXR1cm4gbmV4dCA9PiBhc3luYyBwcm9wcyA9PiB7XG4gICAgY29uc3QgeyBjcmVhdGVDYWNoZSwgU3R5bGVQcm92aWRlciB9ID0gYXdhaXQgaW1wb3J0KFxuICAgICAgLyogd2VicGFja0lnbm9yZTogdHJ1ZSAqLyAnQGFudC1kZXNpZ24vY3NzaW5qcydcbiAgICApO1xuICAgIGNvbnN0IGNhY2hlID0gY3JlYXRlQ2FjaGUoKTtcblxuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5leHRQcm9wcyxcbiAgICAgIGFwcDogPFN0eWxlUHJvdmlkZXIgY2FjaGU9e2NhY2hlfT57bmV4dFByb3BzLmFwcH08L1N0eWxlUHJvdmlkZXI+LFxuICAgIH07XG4gIH07XG59XG4iXSwibWFwcGluZ3MiOiI7QUFFQSxlQUFlLFNBQVNBLFNBQVNBLENBQUEsRUFBZ0I7RUFDL0MsT0FBT0MsSUFBSSxJQUFJLE1BQU1DLEtBQUssSUFBSTtJQUM1QixNQUFNO01BQUVDLFdBQVc7TUFBRUM7SUFBYyxDQUFDLEdBQUcsTUFBTSxNQUFNLENBQ2pELHlCQUEwQixxQkFDNUIsQ0FBQztJQUNELE1BQU1DLEtBQUssR0FBR0YsV0FBVyxDQUFDLENBQUM7SUFFM0IsTUFBTUcsU0FBUyxHQUFHLE1BQU1MLElBQUksQ0FBQ0MsS0FBSyxDQUFDO0lBRW5DLE9BQU87TUFDTCxHQUFHSSxTQUFTO01BQ1pDLEdBQUcsZUFBRUMsSUFBQSxDQUFDSixhQUFhO1FBQUNDLEtBQUssRUFBRUEsS0FBTTtRQUFBSSxRQUFBLEVBQUVILFNBQVMsQ0FBQ0M7TUFBRyxDQUFnQjtJQUNsRSxDQUFDO0VBQ0gsQ0FBQztBQUNIIiwiaWdub3JlTGlzdCI6W119
16
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVDYWNoZSIsIlN0eWxlUHJvdmlkZXIiLCJqc3giLCJfanN4IiwiYW50ZFNwb3V0IiwibmV4dCIsInByb3BzIiwiY2FjaGUiLCJuZXh0UHJvcHMiLCJhcHAiLCJjaGlsZHJlbiJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zcG91dHMvYW50ZC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQ2FjaGUsIFN0eWxlUHJvdmlkZXIgfSBmcm9tICdAYW50LWRlc2lnbi9jc3NpbmpzJztcblxuaW1wb3J0IHR5cGUgeyBDbGllbnRTcG91dCB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gYW50ZFNwb3V0KCk6IENsaWVudFNwb3V0IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IGNhY2hlID0gY3JlYXRlQ2FjaGUoKTtcblxuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5leHRQcm9wcyxcbiAgICAgIGFwcDogPFN0eWxlUHJvdmlkZXIgY2FjaGU9e2NhY2hlfT57bmV4dFByb3BzLmFwcH08L1N0eWxlUHJvdmlkZXI+LFxuICAgIH07XG4gIH07XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLFdBQVcsRUFBRUMsYUFBYSxRQUFRLHFCQUFxQjtBQUFDLFNBQUFDLEdBQUEsSUFBQUMsSUFBQTtBQUlqRSxPQUFPLFNBQVNDLFNBQVNBLENBQUEsRUFBZ0I7RUFDdkMsT0FBT0MsSUFBSSxJQUFJLE1BQU1DLEtBQUssSUFBSTtJQUM1QixNQUFNQyxLQUFLLEdBQUdQLFdBQVcsQ0FBQyxDQUFDO0lBRTNCLE1BQU1RLFNBQVMsR0FBRyxNQUFNSCxJQUFJLENBQUNDLEtBQUssQ0FBQztJQUVuQyxPQUFPO01BQ0wsR0FBR0UsU0FBUztNQUNaQyxHQUFHLGVBQUVOLElBQUEsQ0FBQ0YsYUFBYTtRQUFDTSxLQUFLLEVBQUVBLEtBQU07UUFBQUcsUUFBQSxFQUFFRixTQUFTLENBQUNDO01BQUcsQ0FBZ0I7SUFDbEUsQ0FBQztFQUNILENBQUM7QUFDSCIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
- export default function antdSpout() {
3
+ export function antdSpout() {
4
4
  return next => async props => {
5
5
  const {
6
6
  createCache,
@@ -31,4 +31,4 @@ export default function antdSpout() {
31
31
  };
32
32
  };
33
33
  }
34
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsImpzeCIsIl9qc3giLCJhbnRkU3BvdXQiLCJuZXh0IiwicHJvcHMiLCJjcmVhdGVDYWNoZSIsImV4dHJhY3RTdHlsZSIsIlN0eWxlUHJvdmlkZXIiLCJjYWNoZSIsIkFudGRTaGVldHMiLCJkYW5nZXJvdXNseVNldElubmVySFRNTCIsIl9faHRtbCIsIm5leHRQcm9wcyIsInNjcmlwdHMiLCJwdXNoIiwiYXBwIiwiY2hpbGRyZW4iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3BvdXRzL2FudGQuc2VydmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdHlwZSBKU1ggfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgU2VydmVyU3BvdXQgfSBmcm9tICcuL3R5cGVzLmpzJztcblxudHlwZSBOZWVkZWROZXh0ID0ge1xuICBpbml0RGF0YT86IFJlY29yZDxzdHJpbmcsICgpID0+IHVua25vd24+O1xuICBzY3JpcHRzPzogUmVhY3QuUmVhY3ROb2RlW107XG4gIGV4dHJhU3R5bGU/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGFudGRTcG91dCgpOiBTZXJ2ZXJTcG91dDxcbiAgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBOZWVkZWROZXh0XG4+IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IHsgY3JlYXRlQ2FjaGUsIGV4dHJhY3RTdHlsZSwgU3R5bGVQcm92aWRlciB9ID0gYXdhaXQgaW1wb3J0KFxuICAgICAgLyogd2VicGFja0lnbm9yZTogdHJ1ZSAqLyAnQGFudC1kZXNpZ24vY3NzaW5qcydcbiAgICApO1xuICAgIGNvbnN0IGNhY2hlID0gY3JlYXRlQ2FjaGUoKTtcbiAgICBjb25zdCBBbnRkU2hlZXRzID0gKCk6IEpTWC5FbGVtZW50ID0+IHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxzY3JpcHRcbiAgICAgICAgICBkYW5nZXJvdXNseVNldElubmVySFRNTD17e1xuICAgICAgICAgICAgX19odG1sOiBgPC9zY3JpcHQ+JHtleHRyYWN0U3R5bGUoY2FjaGUpfTxzY3JpcHQ+YCxcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgY29uc3QgbmV4dFByb3BzID0gYXdhaXQgbmV4dChwcm9wcyk7XG5cbiAgICBjb25zdCBzY3JpcHRzOiBSZWFjdC5SZWFjdE5vZGVbXSA9IG5leHRQcm9wcy5zY3JpcHRzID8/IFtdO1xuXG4gICAgLy8gdW5mb3J0dW5hdGVseSB3ZSBoYXZlIHRvIGluamVjdCB0aGlzIGFmdGVyIHRoZSBlbnRpcmUgY29udGVudCBoYXMgc3RyZWFtZWQgaW4gb3IgaXQgZG9lc24ndCBjb3JyZWN0bHkgcG9wdWxhdGVcbiAgICAvLyBzZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbnQtZGVzaWduL2Nzc2luanMvaXNzdWVzLzc5XG4gICAgc2NyaXB0cy5wdXNoKDxBbnRkU2hlZXRzIGtleT1cImFudGQtc2hlZXRzXCIgLz4pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5leHRQcm9wcyxcbiAgICAgIGFwcDogPFN0eWxlUHJvdmlkZXIgY2FjaGU9e2NhY2hlfT57bmV4dFByb3BzLmFwcH08L1N0eWxlUHJvdmlkZXI+LFxuICAgICAgc2NyaXB0cyxcbiAgICB9O1xuICB9O1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxLQUFLLE1BQW9CLE9BQU87QUFBQyxTQUFBQyxHQUFBLElBQUFDLElBQUE7QUFVeEMsZUFBZSxTQUFTQyxTQUFTQSxDQUFBLEVBSS9CO0VBQ0EsT0FBT0MsSUFBSSxJQUFJLE1BQU1DLEtBQUssSUFBSTtJQUM1QixNQUFNO01BQUVDLFdBQVc7TUFBRUMsWUFBWTtNQUFFQztJQUFjLENBQUMsR0FBRyxNQUFNLE1BQU0sQ0FDL0QseUJBQTBCLHFCQUM1QixDQUFDO0lBQ0QsTUFBTUMsS0FBSyxHQUFHSCxXQUFXLENBQUMsQ0FBQztJQUMzQixNQUFNSSxVQUFVLEdBQUdBLENBQUEsS0FBbUI7TUFDcEMsb0JBQ0VSLElBQUE7UUFDRVMsdUJBQXVCLEVBQUU7VUFDdkJDLE1BQU0sRUFBRSxZQUFZTCxZQUFZLENBQUNFLEtBQUssQ0FBQztRQUN6QztNQUFFLENBQ0gsQ0FBQztJQUVOLENBQUM7SUFFRCxNQUFNSSxTQUFTLEdBQUcsTUFBTVQsSUFBSSxDQUFDQyxLQUFLLENBQUM7SUFFbkMsTUFBTVMsT0FBMEIsR0FBR0QsU0FBUyxDQUFDQyxPQUFPLElBQUksRUFBRTs7SUFFMUQ7SUFDQTtJQUNBQSxPQUFPLENBQUNDLElBQUksY0FBQ2IsSUFBQSxDQUFDUSxVQUFVLE1BQUssYUFBZSxDQUFDLENBQUM7SUFFOUMsT0FBTztNQUNMLEdBQUdHLFNBQVM7TUFDWkcsR0FBRyxlQUFFZCxJQUFBLENBQUNNLGFBQWE7UUFBQ0MsS0FBSyxFQUFFQSxLQUFNO1FBQUFRLFFBQUEsRUFBRUosU0FBUyxDQUFDRztNQUFHLENBQWdCLENBQUM7TUFDakVGO0lBQ0YsQ0FBQztFQUNILENBQUM7QUFDSCIsImlnbm9yZUxpc3QiOltdfQ==
34
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsImpzeCIsIl9qc3giLCJhbnRkU3BvdXQiLCJuZXh0IiwicHJvcHMiLCJjcmVhdGVDYWNoZSIsImV4dHJhY3RTdHlsZSIsIlN0eWxlUHJvdmlkZXIiLCJjYWNoZSIsIkFudGRTaGVldHMiLCJkYW5nZXJvdXNseVNldElubmVySFRNTCIsIl9faHRtbCIsIm5leHRQcm9wcyIsInNjcmlwdHMiLCJwdXNoIiwiYXBwIiwiY2hpbGRyZW4iXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3BvdXRzL2FudGQuc2VydmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdHlwZSBKU1ggfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgU2VydmVyU3BvdXQgfSBmcm9tICcuL3R5cGVzLmpzJztcblxudHlwZSBOZWVkZWROZXh0ID0ge1xuICBpbml0RGF0YT86IFJlY29yZDxzdHJpbmcsICgpID0+IHVua25vd24+O1xuICBzY3JpcHRzPzogUmVhY3QuUmVhY3ROb2RlW107XG4gIGV4dHJhU3R5bGU/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBhbnRkU3BvdXQoKTogU2VydmVyU3BvdXQ8XG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgTmVlZGVkTmV4dFxuPiB7XG4gIHJldHVybiBuZXh0ID0+IGFzeW5jIHByb3BzID0+IHtcbiAgICBjb25zdCB7IGNyZWF0ZUNhY2hlLCBleHRyYWN0U3R5bGUsIFN0eWxlUHJvdmlkZXIgfSA9IGF3YWl0IGltcG9ydChcbiAgICAgIC8qIHdlYnBhY2tJZ25vcmU6IHRydWUgKi8gJ0BhbnQtZGVzaWduL2Nzc2luanMnXG4gICAgKTtcbiAgICBjb25zdCBjYWNoZSA9IGNyZWF0ZUNhY2hlKCk7XG4gICAgY29uc3QgQW50ZFNoZWV0cyA9ICgpOiBKU1guRWxlbWVudCA9PiB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8c2NyaXB0XG4gICAgICAgICAgZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw9e3tcbiAgICAgICAgICAgIF9faHRtbDogYDwvc2NyaXB0PiR7ZXh0cmFjdFN0eWxlKGNhY2hlKX08c2NyaXB0PmAsXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgY29uc3Qgc2NyaXB0czogUmVhY3QuUmVhY3ROb2RlW10gPSBuZXh0UHJvcHMuc2NyaXB0cyA/PyBbXTtcblxuICAgIC8vIHVuZm9ydHVuYXRlbHkgd2UgaGF2ZSB0byBpbmplY3QgdGhpcyBhZnRlciB0aGUgZW50aXJlIGNvbnRlbnQgaGFzIHN0cmVhbWVkIGluIG9yIGl0IGRvZXNuJ3QgY29ycmVjdGx5IHBvcHVsYXRlXG4gICAgLy8gc2VlOiBodHRwczovL2dpdGh1Yi5jb20vYW50LWRlc2lnbi9jc3NpbmpzL2lzc3Vlcy83OVxuICAgIHNjcmlwdHMucHVzaCg8QW50ZFNoZWV0cyBrZXk9XCJhbnRkLXNoZWV0c1wiIC8+KTtcblxuICAgIHJldHVybiB7XG4gICAgICAuLi5uZXh0UHJvcHMsXG4gICAgICBhcHA6IDxTdHlsZVByb3ZpZGVyIGNhY2hlPXtjYWNoZX0+e25leHRQcm9wcy5hcHB9PC9TdHlsZVByb3ZpZGVyPixcbiAgICAgIHNjcmlwdHMsXG4gICAgfTtcbiAgfTtcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsS0FBSyxNQUFvQixPQUFPO0FBQUMsU0FBQUMsR0FBQSxJQUFBQyxJQUFBO0FBVXhDLE9BQU8sU0FBU0MsU0FBU0EsQ0FBQSxFQUl2QjtFQUNBLE9BQU9DLElBQUksSUFBSSxNQUFNQyxLQUFLLElBQUk7SUFDNUIsTUFBTTtNQUFFQyxXQUFXO01BQUVDLFlBQVk7TUFBRUM7SUFBYyxDQUFDLEdBQUcsTUFBTSxNQUFNLENBQy9ELHlCQUEwQixxQkFDNUIsQ0FBQztJQUNELE1BQU1DLEtBQUssR0FBR0gsV0FBVyxDQUFDLENBQUM7SUFDM0IsTUFBTUksVUFBVSxHQUFHQSxDQUFBLEtBQW1CO01BQ3BDLG9CQUNFUixJQUFBO1FBQ0VTLHVCQUF1QixFQUFFO1VBQ3ZCQyxNQUFNLEVBQUUsWUFBWUwsWUFBWSxDQUFDRSxLQUFLLENBQUM7UUFDekM7TUFBRSxDQUNILENBQUM7SUFFTixDQUFDO0lBRUQsTUFBTUksU0FBUyxHQUFHLE1BQU1ULElBQUksQ0FBQ0MsS0FBSyxDQUFDO0lBRW5DLE1BQU1TLE9BQTBCLEdBQUdELFNBQVMsQ0FBQ0MsT0FBTyxJQUFJLEVBQUU7O0lBRTFEO0lBQ0E7SUFDQUEsT0FBTyxDQUFDQyxJQUFJLGNBQUNiLElBQUEsQ0FBQ1EsVUFBVSxNQUFLLGFBQWUsQ0FBQyxDQUFDO0lBRTlDLE9BQU87TUFDTCxHQUFHRyxTQUFTO01BQ1pHLEdBQUcsZUFBRWQsSUFBQSxDQUFDTSxhQUFhO1FBQUNDLEtBQUssRUFBRUEsS0FBTTtRQUFBUSxRQUFBLEVBQUVKLFNBQVMsQ0FBQ0c7TUFBRyxDQUFnQixDQUFDO01BQ2pFRjtJQUNGLENBQUM7RUFDSCxDQUFDO0FBQ0giLCJpZ25vcmVMaXN0IjpbXX0=
@@ -24,4 +24,4 @@ export function joinNonce(policyObj, nonce) {
24
24
  }
25
25
  return policy;
26
26
  }
27
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZFBvbGljeSIsInBvbGljeU9iaiIsIk9iamVjdCIsImtleXMiLCJtYXAiLCJrZXkiLCJ2YWwiLCJBcnJheSIsImlzQXJyYXkiLCJTZXQiLCJ2YWx1ZXMiLCJmaWx0ZXIiLCJ2Iiwiam9pbiIsImluY2x1ZGVzIiwibmV3VmFsIiwicmVwbGFjZSIsInRyaW0iLCJqb2luTm9uY2UiLCJub25jZSIsInBvbGljeSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zcG91dHMvY3NwLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgUG9saWN5IHtcbiAgW2RpcmVjdGl2ZTogc3RyaW5nXTogc3RyaW5nIHwgc3RyaW5nW107XG59XG5cbi8vIFRPRE86IG1lbW9pemUgdGhpc1xuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkUG9saWN5KHBvbGljeU9iajogUG9saWN5KSB7XG4gIHJldHVybiBPYmplY3Qua2V5cyhwb2xpY3lPYmopXG4gICAgLm1hcChrZXkgPT4ge1xuICAgICAgY29uc3QgdmFsID1cbiAgICAgICAgQXJyYXkuaXNBcnJheShwb2xpY3lPYmpba2V5XSkgP1xuICAgICAgICAgIFsuLi5uZXcgU2V0KHBvbGljeU9ialtrZXldKS52YWx1ZXMoKV0uZmlsdGVyKHYgPT4gdikuam9pbignICcpXG4gICAgICAgIDogcG9saWN5T2JqW2tleV07XG5cbiAgICAgIC8vIG1vdmUgc3RyaWN0IGR5bmFtaWMgdG8gdGhlIGVuZCBvZiB0aGUgcG9saWN5IGlmIGl0IGV4aXN0cyB0byBiZSBiYWNrd2FyZHMgY29tcGF0aWJsZSB3aXRoIGNzcDJcbiAgICAgIC8vIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUVFAvSGVhZGVycy9Db250ZW50LVNlY3VyaXR5LVBvbGljeS9zY3JpcHQtc3JjI3N0cmljdC1keW5hbWljXG4gICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycgJiYgdmFsLmluY2x1ZGVzKFwiJ3N0cmljdC1keW5hbWljJ1wiKSkge1xuICAgICAgICBjb25zdCBuZXdWYWwgPSBgJHt2YWxcbiAgICAgICAgICAucmVwbGFjZSgvXFxzPydzdHJpY3QtZHluYW1pYydcXHM/L2dpLCAnICcpXG4gICAgICAgICAgLnRyaW0oKX0gJ3N0cmljdC1keW5hbWljJ2A7XG4gICAgICAgIHJldHVybiBgJHtrZXl9ICR7bmV3VmFsfWA7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBgJHtrZXl9ICR7dmFsfWA7XG4gICAgfSlcbiAgICAuam9pbignOyAnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGpvaW5Ob25jZShwb2xpY3lPYmo6IFBvbGljeSwgbm9uY2U/OiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgaWYgKCFub25jZSkgcmV0dXJuIHBvbGljeU9iajtcbiAgY29uc3QgcG9saWN5ID0ge1xuICAgIC4uLnBvbGljeU9iaixcbiAgfTtcbiAgaWYgKHR5cGVvZiBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9PT0gJ3N0cmluZycpIHtcbiAgICBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9IFtwb2xpY3lbJ3NjcmlwdC1zcmMnXSwgYCdub25jZS0ke25vbmNlfSdgXTtcbiAgfSBlbHNlIHtcbiAgICBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9IFsuLi5wb2xpY3lbJ3NjcmlwdC1zcmMnXSwgYCdub25jZS0ke25vbmNlfSdgXTtcbiAgfVxuICByZXR1cm4gcG9saWN5O1xufVxuIl0sIm1hcHBpbmdzIjoiQUFJQTtBQUNBLE9BQU8sU0FBU0EsV0FBV0EsQ0FBQ0MsU0FBaUIsRUFBRTtFQUM3QyxPQUFPQyxNQUFNLENBQUNDLElBQUksQ0FBQ0YsU0FBUyxDQUFDLENBQzFCRyxHQUFHLENBQUNDLEdBQUcsSUFBSTtJQUNWLE1BQU1DLEdBQUcsR0FDUEMsS0FBSyxDQUFDQyxPQUFPLENBQUNQLFNBQVMsQ0FBQ0ksR0FBRyxDQUFDLENBQUMsR0FDM0IsQ0FBQyxHQUFHLElBQUlJLEdBQUcsQ0FBQ1IsU0FBUyxDQUFDSSxHQUFHLENBQUMsQ0FBQyxDQUFDSyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUNDLE1BQU0sQ0FBQ0MsQ0FBQyxJQUFJQSxDQUFDLENBQUMsQ0FBQ0MsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUM5RFosU0FBUyxDQUFDSSxHQUFHLENBQUM7O0lBRWxCO0lBQ0E7SUFDQSxJQUFJLE9BQU9DLEdBQUcsS0FBSyxRQUFRLElBQUlBLEdBQUcsQ0FBQ1EsUUFBUSxDQUFDLGtCQUFrQixDQUFDLEVBQUU7TUFDL0QsTUFBTUMsTUFBTSxHQUFHLEdBQUdULEdBQUcsQ0FDbEJVLE9BQU8sQ0FBQywwQkFBMEIsRUFBRSxHQUFHLENBQUMsQ0FDeENDLElBQUksQ0FBQyxDQUFDLG1CQUFtQjtNQUM1QixPQUFPLEdBQUdaLEdBQUcsSUFBSVUsTUFBTSxFQUFFO0lBQzNCO0lBRUEsT0FBTyxHQUFHVixHQUFHLElBQUlDLEdBQUcsRUFBRTtFQUN4QixDQUFDLENBQUMsQ0FDRE8sSUFBSSxDQUFDLElBQUksQ0FBQztBQUNmO0FBRUEsT0FBTyxTQUFTSyxTQUFTQSxDQUFDakIsU0FBaUIsRUFBRWtCLEtBQTBCLEVBQUU7RUFDdkUsSUFBSSxDQUFDQSxLQUFLLEVBQUUsT0FBT2xCLFNBQVM7RUFDNUIsTUFBTW1CLE1BQU0sR0FBRztJQUNiLEdBQUduQjtFQUNMLENBQUM7RUFDRCxJQUFJLE9BQU9tQixNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssUUFBUSxFQUFFO0lBQzVDQSxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQ0EsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVVELEtBQUssR0FBRyxDQUFDO0VBQ25FLENBQUMsTUFBTTtJQUNMQyxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHQSxNQUFNLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVUQsS0FBSyxHQUFHLENBQUM7RUFDdEU7RUFDQSxPQUFPQyxNQUFNO0FBQ2YiLCJpZ25vcmVMaXN0IjpbXX0=
27
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZFBvbGljeSIsInBvbGljeU9iaiIsIk9iamVjdCIsImtleXMiLCJtYXAiLCJrZXkiLCJ2YWwiLCJBcnJheSIsImlzQXJyYXkiLCJTZXQiLCJ2YWx1ZXMiLCJmaWx0ZXIiLCJ2Iiwiam9pbiIsImluY2x1ZGVzIiwibmV3VmFsIiwicmVwbGFjZSIsInRyaW0iLCJqb2luTm9uY2UiLCJub25jZSIsInBvbGljeSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9zcG91dHMvY3NwLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ1NQb2xpY3kge1xuICBbZGlyZWN0aXZlOiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXTtcbn1cblxuLy8gVE9ETzogbWVtb2l6ZSB0aGlzXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRQb2xpY3kocG9saWN5T2JqOiBDU1BvbGljeSkge1xuICByZXR1cm4gT2JqZWN0LmtleXMocG9saWN5T2JqKVxuICAgIC5tYXAoa2V5ID0+IHtcbiAgICAgIGNvbnN0IHZhbCA9XG4gICAgICAgIEFycmF5LmlzQXJyYXkocG9saWN5T2JqW2tleV0pID9cbiAgICAgICAgICBbLi4ubmV3IFNldChwb2xpY3lPYmpba2V5XSkudmFsdWVzKCldLmZpbHRlcih2ID0+IHYpLmpvaW4oJyAnKVxuICAgICAgICA6IHBvbGljeU9ialtrZXldO1xuXG4gICAgICAvLyBtb3ZlIHN0cmljdCBkeW5hbWljIHRvIHRoZSBlbmQgb2YgdGhlIHBvbGljeSBpZiBpdCBleGlzdHMgdG8gYmUgYmFja3dhcmRzIGNvbXBhdGlibGUgd2l0aCBjc3AyXG4gICAgICAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVFRQL0hlYWRlcnMvQ29udGVudC1TZWN1cml0eS1Qb2xpY3kvc2NyaXB0LXNyYyNzdHJpY3QtZHluYW1pY1xuICAgICAgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnICYmIHZhbC5pbmNsdWRlcyhcIidzdHJpY3QtZHluYW1pYydcIikpIHtcbiAgICAgICAgY29uc3QgbmV3VmFsID0gYCR7dmFsXG4gICAgICAgICAgLnJlcGxhY2UoL1xccz8nc3RyaWN0LWR5bmFtaWMnXFxzPy9naSwgJyAnKVxuICAgICAgICAgIC50cmltKCl9ICdzdHJpY3QtZHluYW1pYydgO1xuICAgICAgICByZXR1cm4gYCR7a2V5fSAke25ld1ZhbH1gO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYCR7a2V5fSAke3ZhbH1gO1xuICAgIH0pXG4gICAgLmpvaW4oJzsgJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBqb2luTm9uY2UocG9saWN5T2JqOiBDU1BvbGljeSwgbm9uY2U/OiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgaWYgKCFub25jZSkgcmV0dXJuIHBvbGljeU9iajtcbiAgY29uc3QgcG9saWN5ID0ge1xuICAgIC4uLnBvbGljeU9iaixcbiAgfTtcbiAgaWYgKHR5cGVvZiBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9PT0gJ3N0cmluZycpIHtcbiAgICBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9IFtwb2xpY3lbJ3NjcmlwdC1zcmMnXSwgYCdub25jZS0ke25vbmNlfSdgXTtcbiAgfSBlbHNlIHtcbiAgICBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9IFsuLi5wb2xpY3lbJ3NjcmlwdC1zcmMnXSwgYCdub25jZS0ke25vbmNlfSdgXTtcbiAgfVxuICByZXR1cm4gcG9saWN5O1xufVxuIl0sIm1hcHBpbmdzIjoiQUFJQTtBQUNBLE9BQU8sU0FBU0EsV0FBV0EsQ0FBQ0MsU0FBbUIsRUFBRTtFQUMvQyxPQUFPQyxNQUFNLENBQUNDLElBQUksQ0FBQ0YsU0FBUyxDQUFDLENBQzFCRyxHQUFHLENBQUNDLEdBQUcsSUFBSTtJQUNWLE1BQU1DLEdBQUcsR0FDUEMsS0FBSyxDQUFDQyxPQUFPLENBQUNQLFNBQVMsQ0FBQ0ksR0FBRyxDQUFDLENBQUMsR0FDM0IsQ0FBQyxHQUFHLElBQUlJLEdBQUcsQ0FBQ1IsU0FBUyxDQUFDSSxHQUFHLENBQUMsQ0FBQyxDQUFDSyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUNDLE1BQU0sQ0FBQ0MsQ0FBQyxJQUFJQSxDQUFDLENBQUMsQ0FBQ0MsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUM5RFosU0FBUyxDQUFDSSxHQUFHLENBQUM7O0lBRWxCO0lBQ0E7SUFDQSxJQUFJLE9BQU9DLEdBQUcsS0FBSyxRQUFRLElBQUlBLEdBQUcsQ0FBQ1EsUUFBUSxDQUFDLGtCQUFrQixDQUFDLEVBQUU7TUFDL0QsTUFBTUMsTUFBTSxHQUFHLEdBQUdULEdBQUcsQ0FDbEJVLE9BQU8sQ0FBQywwQkFBMEIsRUFBRSxHQUFHLENBQUMsQ0FDeENDLElBQUksQ0FBQyxDQUFDLG1CQUFtQjtNQUM1QixPQUFPLEdBQUdaLEdBQUcsSUFBSVUsTUFBTSxFQUFFO0lBQzNCO0lBRUEsT0FBTyxHQUFHVixHQUFHLElBQUlDLEdBQUcsRUFBRTtFQUN4QixDQUFDLENBQUMsQ0FDRE8sSUFBSSxDQUFDLElBQUksQ0FBQztBQUNmO0FBRUEsT0FBTyxTQUFTSyxTQUFTQSxDQUFDakIsU0FBbUIsRUFBRWtCLEtBQTBCLEVBQUU7RUFDekUsSUFBSSxDQUFDQSxLQUFLLEVBQUUsT0FBT2xCLFNBQVM7RUFDNUIsTUFBTW1CLE1BQU0sR0FBRztJQUNiLEdBQUduQjtFQUNMLENBQUM7RUFDRCxJQUFJLE9BQU9tQixNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssUUFBUSxFQUFFO0lBQzVDQSxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQ0EsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVVELEtBQUssR0FBRyxDQUFDO0VBQ25FLENBQUMsTUFBTTtJQUNMQyxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHQSxNQUFNLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVUQsS0FBSyxHQUFHLENBQUM7RUFDdEU7RUFDQSxPQUFPQyxNQUFNO0FBQ2YiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -54,4 +54,4 @@ export default function DocumentSpout(options) {
54
54
  function childrenAssets(chunk) {
55
55
  return chunk.children ? Object.values(chunk.children).flatMap(preload => preload.flatMap(c => c.assets ?? [])) : [];
56
56
  }
57
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsImJ1aWxkUG9saWN5Iiwiam9pbk5vbmNlIiwiRG9jdW1lbnQiLCJqc3giLCJfanN4IiwiRG9jdW1lbnRTcG91dCIsIm9wdGlvbnMiLCJuZXh0IiwicHJvcHMiLCJuZXh0UHJvcHMiLCJwdWJsaWNQYXRoIiwiY2xpZW50TWFuaWZlc3QiLCJPYmplY3QiLCJrZXlzIiwiZW50cnlwb2ludHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJFcnJvciIsImFzc2V0TWFwIiwiYXNzZXRzIiwibWFwIiwibmFtZSIsImFzc2V0TGlzdCIsInZhbHVlcyIsImZvckVhY2giLCJlbnRyeXBvaW50IiwicHVzaCIsIlNldCIsIm5hbWVkQ2h1bmtHcm91cHMiLCJmaWx0ZXIiLCJtYXRjaGVkUm91dGVzIiwic29tZSIsInJvdXRlIiwiaW5jbHVkZXMiLCJmbGF0TWFwIiwiY2h1bmsiLCJjaGlsZHJlbkFzc2V0cyIsImFzc2V0IiwiZW5kc1dpdGgiLCJocmVmIiwicmVsIiwiYXMiLCJjc1BvbGljeSIsImh0dHBFcXVpdiIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsInJlcyIsInNldEhlYWRlciIsIm5vbmNlIiwiYXBwIiwiZXh0cmFTdHlsZSIsInRpdGxlIiwicm9vdElkIiwic2NyaXB0cyIsImNoaWxkcmVuIiwicHJlbG9hZCIsImMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3BvdXRzL2RvY3VtZW50LnNlcnZlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBSb3V0ZSB9IGZyb20gJ0BhbmFuc2kvcm91dGVyJztcbmltcG9ydCB7IFJlcXVlc3QgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBTdGF0c0NodW5rR3JvdXAgfSBmcm9tICd3ZWJwYWNrJztcblxuaW1wb3J0IHsgYnVpbGRQb2xpY3ksIGpvaW5Ob25jZSwgUG9saWN5IH0gZnJvbSAnLi9jc3AuanMnO1xuaW1wb3J0IERvY3VtZW50IGZyb20gJy4vRG9jdW1lbnRDb21wb25lbnQuanMnO1xuaW1wb3J0IHR5cGUgeyBTZXJ2ZXJTcG91dCB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG50eXBlIE5lZWRlZE5leHQgPSB7XG4gIG1hdGNoZWRSb3V0ZXM6IFJvdXRlPGFueT5bXTtcbiAgdGl0bGU/OiBzdHJpbmc7XG4gIHNjcmlwdHM/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbiAgZXh0cmFTdHlsZT86IFJlYWN0LlJlYWN0Tm9kZVtdO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRG9jdW1lbnRTcG91dChvcHRpb25zOiB7XG4gIGhlYWQ/OiBSZWFjdC5SZWFjdE5vZGU7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGxhbmc/OiBzdHJpbmc7XG4gIHJvb3RJZD86IHN0cmluZztcbiAgY2hhclNldD86IHN0cmluZztcbiAgY3NQb2xpY3k/OiBQb2xpY3k7XG59KTogU2VydmVyU3BvdXQ8UmVjb3JkPHN0cmluZywgdW5rbm93bj4sIFJlY29yZDxzdHJpbmcsIHVua25vd24+LCBOZWVkZWROZXh0PiB7XG4gIHJldHVybiBuZXh0ID0+IGFzeW5jIHByb3BzID0+IHtcbiAgICBjb25zdCBuZXh0UHJvcHMgPSBhd2FpdCBuZXh0KHByb3BzKTtcblxuICAgIGNvbnN0IHB1YmxpY1BhdGggPSBwcm9wcy5jbGllbnRNYW5pZmVzdC5wdWJsaWNQYXRoO1xuXG4gICAgaWYgKFxuICAgICAgT2JqZWN0LmtleXMocHJvcHMuY2xpZW50TWFuaWZlc3Q/LmVudHJ5cG9pbnRzID8/IHt9KS5sZW5ndGggPCAxIHx8XG4gICAgICBwdWJsaWNQYXRoID09PSB1bmRlZmluZWRcbiAgICApXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01hbmlmZXN0IG1pc3NpbmcgZW50cmllcyBuZWVkZWQnKTtcblxuICAgIC8vIFRPRE86IGNvbnNpZGVyIHVzaW5nIHRoaXMgcGFja2FnZSBmb3IgYnVpbGQgc3RhdHMgaW4gZnV0dXJlOlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC90cmVlL21haW4vcGFja2FnZXMvcmVhY3Qtc2VydmVyLWRvbS13ZWJwYWNrXG4gICAgY29uc3QgYXNzZXRNYXAgPSAoYXNzZXRzOiB7IG5hbWU6IHN0cmluZzsgc2l6ZT86IG51bWJlciB9W10pID0+XG4gICAgICBhc3NldHMubWFwKCh7IG5hbWUgfSkgPT4gYCR7cHVibGljUGF0aH0ke25hbWV9YCk7XG5cbiAgICBjb25zdCBhc3NldExpc3Q6IHN0cmluZ1tdID0gW107XG4gICAgT2JqZWN0LnZhbHVlcyhwcm9wcy5jbGllbnRNYW5pZmVzdD8uZW50cnlwb2ludHMgPz8ge30pLmZvckVhY2goXG4gICAgICBlbnRyeXBvaW50ID0+IHtcbiAgICAgICAgYXNzZXRMaXN0LnB1c2goLi4uYXNzZXRNYXAoZW50cnlwb2ludC5hc3NldHMgPz8gW10pKTtcbiAgICAgIH0sXG4gICAgKTtcbiAgICBuZXcgU2V0KFxuICAgICAgYXNzZXRNYXAoXG4gICAgICAgIE9iamVjdC52YWx1ZXMocHJvcHMuY2xpZW50TWFuaWZlc3QubmFtZWRDaHVua0dyb3VwcyA/PyB7fSlcbiAgICAgICAgICAuZmlsdGVyKCh7IG5hbWUgfSkgPT5cbiAgICAgICAgICAgIG5leHRQcm9wcy5tYXRjaGVkUm91dGVzLnNvbWUocm91dGUgPT4gbmFtZT8uaW5jbHVkZXMocm91dGUubmFtZSkpLFxuICAgICAgICAgIClcbiAgICAgICAgICAuZmxhdE1hcChjaHVuayA9PiBbXG4gICAgICAgICAgICAuLi4oY2h1bmsuYXNzZXRzID8/IFtdKSxcbiAgICAgICAgICAgIC8vIGFueSBjaHVuayBwcmVsb2Fkc1xuICAgICAgICAgICAgLi4uY2hpbGRyZW5Bc3NldHMoY2h1bmspLFxuICAgICAgICAgIF0pLFxuICAgICAgKSxcbiAgICApLmZvckVhY2goYXNzZXQgPT4gYXNzZXRMaXN0LnB1c2goYXNzZXQpKTtcblxuICAgIC8vIGZpbmQgYWRkaXRpb25hbCBhc3NldHMgdG8gcHJlbG9hZCBiYXNlZCBvbiBtYXRjaGVkIHJvdXRlXG4gICAgY29uc3QgYXNzZXRzOiB7XG4gICAgICBocmVmOiBzdHJpbmc7XG4gICAgICBhcz86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAgIHJlbD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICB9W10gPSBhc3NldExpc3RcbiAgICAgIC5maWx0ZXIoYXNzZXQgPT4gIWFzc2V0LmVuZHNXaXRoKCcuaG90LXVwZGF0ZS5qcycpKVxuICAgICAgLm1hcChhc3NldCA9PlxuICAgICAgICBhc3NldC5lbmRzV2l0aCgnLmNzcycpID8geyBocmVmOiBhc3NldCwgcmVsOiAnc3R5bGVzaGVldCcgfVxuICAgICAgICA6IGFzc2V0LmVuZHNXaXRoKCcuanMnKSA/IHsgaHJlZjogYXNzZXQsIGFzOiAnc2NyaXB0JyB9XG4gICAgICAgIDogeyBocmVmOiBhc3NldCB9LFxuICAgICAgKTtcblxuICAgIGlmIChvcHRpb25zLmNzUG9saWN5KSB7XG4gICAgICBjb25zdCBodHRwRXF1aXYgPVxuICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ3Byb2R1Y3Rpb24nID9cbiAgICAgICAgICAnQ29udGVudC1TZWN1cml0eS1Qb2xpY3knXG4gICAgICAgIDogJ0NvbnRlbnQtU2VjdXJpdHktUG9saWN5LVJlcG9ydC1Pbmx5JztcblxuICAgICAgcHJvcHMucmVzLnNldEhlYWRlcihcbiAgICAgICAgaHR0cEVxdWl2LFxuICAgICAgICBidWlsZFBvbGljeShqb2luTm9uY2Uob3B0aW9ucy5jc1BvbGljeSwgcHJvcHMubm9uY2UpKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5leHRQcm9wcyxcbiAgICAgIGFwcDogKFxuICAgICAgICA8RG9jdW1lbnRcbiAgICAgICAgICB7Li4ub3B0aW9uc31cbiAgICAgICAgICBleHRyYVN0eWxlPXtuZXh0UHJvcHMuZXh0cmFTdHlsZX1cbiAgICAgICAgICB0aXRsZT17bmV4dFByb3BzLnRpdGxlID8/IG9wdGlvbnMudGl0bGV9XG4gICAgICAgICAgYXNzZXRzPXthc3NldHN9XG4gICAgICAgICAgcm9vdElkPXtvcHRpb25zLnJvb3RJZH1cbiAgICAgICAgICBzY3JpcHRzPXtuZXh0UHJvcHMuc2NyaXB0c31cbiAgICAgICAgPlxuICAgICAgICAgIHtuZXh0UHJvcHMuYXBwfVxuICAgICAgICA8L0RvY3VtZW50PlxuICAgICAgKSxcbiAgICB9O1xuICB9O1xufVxuXG5mdW5jdGlvbiBjaGlsZHJlbkFzc2V0cyhjaHVuazogU3RhdHNDaHVua0dyb3VwKSB7XG4gIHJldHVybiBjaHVuay5jaGlsZHJlbiA/XG4gICAgICBPYmplY3QudmFsdWVzKGNodW5rLmNoaWxkcmVuKS5mbGF0TWFwKHByZWxvYWQgPT5cbiAgICAgICAgcHJlbG9hZC5mbGF0TWFwKGMgPT4gYy5hc3NldHMgPz8gW10pLFxuICAgICAgKVxuICAgIDogW107XG59XG4iXSwibWFwcGluZ3MiOiJBQUVBLE9BQU9BLEtBQUssTUFBTSxPQUFPO0FBR3pCLFNBQVNDLFdBQVcsRUFBRUMsU0FBUyxRQUFnQixVQUFVO0FBQ3pELE9BQU9DLFFBQVEsTUFBTSx3QkFBd0I7QUFBQyxTQUFBQyxHQUFBLElBQUFDLElBQUE7QUFVOUMsZUFBZSxTQUFTQyxhQUFhQSxDQUFDQyxPQU9yQyxFQUE2RTtFQUM1RSxPQUFPQyxJQUFJLElBQUksTUFBTUMsS0FBSyxJQUFJO0lBQzVCLE1BQU1DLFNBQVMsR0FBRyxNQUFNRixJQUFJLENBQUNDLEtBQUssQ0FBQztJQUVuQyxNQUFNRSxVQUFVLEdBQUdGLEtBQUssQ0FBQ0csY0FBYyxDQUFDRCxVQUFVO0lBRWxELElBQ0VFLE1BQU0sQ0FBQ0MsSUFBSSxDQUFDTCxLQUFLLENBQUNHLGNBQWMsRUFBRUcsV0FBVyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUNDLE1BQU0sR0FBRyxDQUFDLElBQy9ETCxVQUFVLEtBQUtNLFNBQVMsRUFFeEIsTUFBTSxJQUFJQyxLQUFLLENBQUMsaUNBQWlDLENBQUM7O0lBRXBEO0lBQ0E7SUFDQSxNQUFNQyxRQUFRLEdBQUlDLE1BQXlDLElBQ3pEQSxNQUFNLENBQUNDLEdBQUcsQ0FBQyxDQUFDO01BQUVDO0lBQUssQ0FBQyxLQUFLLEdBQUdYLFVBQVUsR0FBR1csSUFBSSxFQUFFLENBQUM7SUFFbEQsTUFBTUMsU0FBbUIsR0FBRyxFQUFFO0lBQzlCVixNQUFNLENBQUNXLE1BQU0sQ0FBQ2YsS0FBSyxDQUFDRyxjQUFjLEVBQUVHLFdBQVcsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDVSxPQUFPLENBQzVEQyxVQUFVLElBQUk7TUFDWkgsU0FBUyxDQUFDSSxJQUFJLENBQUMsR0FBR1IsUUFBUSxDQUFDTyxVQUFVLENBQUNOLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN0RCxDQUNGLENBQUM7SUFDRCxJQUFJUSxHQUFHLENBQ0xULFFBQVEsQ0FDTk4sTUFBTSxDQUFDVyxNQUFNLENBQUNmLEtBQUssQ0FBQ0csY0FBYyxDQUFDaUIsZ0JBQWdCLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FDdkRDLE1BQU0sQ0FBQyxDQUFDO01BQUVSO0lBQUssQ0FBQyxLQUNmWixTQUFTLENBQUNxQixhQUFhLENBQUNDLElBQUksQ0FBQ0MsS0FBSyxJQUFJWCxJQUFJLEVBQUVZLFFBQVEsQ0FBQ0QsS0FBSyxDQUFDWCxJQUFJLENBQUMsQ0FDbEUsQ0FBQyxDQUNBYSxPQUFPLENBQUNDLEtBQUssSUFBSSxDQUNoQixJQUFJQSxLQUFLLENBQUNoQixNQUFNLElBQUksRUFBRSxDQUFDO0lBQ3ZCO0lBQ0EsR0FBR2lCLGNBQWMsQ0FBQ0QsS0FBSyxDQUFDLENBQ3pCLENBQ0wsQ0FDRixDQUFDLENBQUNYLE9BQU8sQ0FBQ2EsS0FBSyxJQUFJZixTQUFTLENBQUNJLElBQUksQ0FBQ1csS0FBSyxDQUFDLENBQUM7O0lBRXpDO0lBQ0EsTUFBTWxCLE1BSUgsR0FBR0csU0FBUyxDQUNaTyxNQUFNLENBQUNRLEtBQUssSUFBSSxDQUFDQSxLQUFLLENBQUNDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQ2xEbEIsR0FBRyxDQUFDaUIsS0FBSyxJQUNSQSxLQUFLLENBQUNDLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRztNQUFFQyxJQUFJLEVBQUVGLEtBQUs7TUFBRUcsR0FBRyxFQUFFO0lBQWEsQ0FBQyxHQUN6REgsS0FBSyxDQUFDQyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUc7TUFBRUMsSUFBSSxFQUFFRixLQUFLO01BQUVJLEVBQUUsRUFBRTtJQUFTLENBQUMsR0FDckQ7TUFBRUYsSUFBSSxFQUFFRjtJQUFNLENBQ2xCLENBQUM7SUFFSCxJQUFJL0IsT0FBTyxDQUFDb0MsUUFBUSxFQUFFO01BQ3BCLE1BQU1DLFNBQVMsR0FDYkMsT0FBTyxDQUFDQyxHQUFHLENBQUNDLFFBQVEsS0FBSyxZQUFZLEdBQ25DLHlCQUF5QixHQUN6QixxQ0FBcUM7TUFFekN0QyxLQUFLLENBQUN1QyxHQUFHLENBQUNDLFNBQVMsQ0FDakJMLFNBQVMsRUFDVDNDLFdBQVcsQ0FBQ0MsU0FBUyxDQUFDSyxPQUFPLENBQUNvQyxRQUFRLEVBQUVsQyxLQUFLLENBQUN5QyxLQUFLLENBQUMsQ0FDdEQsQ0FBQztJQUNIO0lBRUEsT0FBTztNQUNMLEdBQUd4QyxTQUFTO01BQ1p5QyxHQUFHLGVBQ0Q5QyxJQUFBLENBQUNGLFFBQVE7UUFBQSxHQUNISSxPQUFPO1FBQ1g2QyxVQUFVLEVBQUUxQyxTQUFTLENBQUMwQyxVQUFXO1FBQ2pDQyxLQUFLLEVBQUUzQyxTQUFTLENBQUMyQyxLQUFLLElBQUk5QyxPQUFPLENBQUM4QyxLQUFNO1FBQ3hDakMsTUFBTSxFQUFFQSxNQUFPO1FBQ2ZrQyxNQUFNLEVBQUUvQyxPQUFPLENBQUMrQyxNQUFPO1FBQ3ZCQyxPQUFPLEVBQUU3QyxTQUFTLENBQUM2QyxPQUFRO1FBQUFDLFFBQUEsRUFFMUI5QyxTQUFTLENBQUN5QztNQUFHLENBQ047SUFFZCxDQUFDO0VBQ0gsQ0FBQztBQUNIO0FBRUEsU0FBU2QsY0FBY0EsQ0FBQ0QsS0FBc0IsRUFBRTtFQUM5QyxPQUFPQSxLQUFLLENBQUNvQixRQUFRLEdBQ2pCM0MsTUFBTSxDQUFDVyxNQUFNLENBQUNZLEtBQUssQ0FBQ29CLFFBQVEsQ0FBQyxDQUFDckIsT0FBTyxDQUFDc0IsT0FBTyxJQUMzQ0EsT0FBTyxDQUFDdEIsT0FBTyxDQUFDdUIsQ0FBQyxJQUFJQSxDQUFDLENBQUN0QyxNQUFNLElBQUksRUFBRSxDQUNyQyxDQUFDLEdBQ0QsRUFBRTtBQUNSIiwiaWdub3JlTGlzdCI6W119
57
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsImJ1aWxkUG9saWN5Iiwiam9pbk5vbmNlIiwiRG9jdW1lbnQiLCJqc3giLCJfanN4IiwiRG9jdW1lbnRTcG91dCIsIm9wdGlvbnMiLCJuZXh0IiwicHJvcHMiLCJuZXh0UHJvcHMiLCJwdWJsaWNQYXRoIiwiY2xpZW50TWFuaWZlc3QiLCJPYmplY3QiLCJrZXlzIiwiZW50cnlwb2ludHMiLCJsZW5ndGgiLCJ1bmRlZmluZWQiLCJFcnJvciIsImFzc2V0TWFwIiwiYXNzZXRzIiwibWFwIiwibmFtZSIsImFzc2V0TGlzdCIsInZhbHVlcyIsImZvckVhY2giLCJlbnRyeXBvaW50IiwicHVzaCIsIlNldCIsIm5hbWVkQ2h1bmtHcm91cHMiLCJmaWx0ZXIiLCJtYXRjaGVkUm91dGVzIiwic29tZSIsInJvdXRlIiwiaW5jbHVkZXMiLCJmbGF0TWFwIiwiY2h1bmsiLCJjaGlsZHJlbkFzc2V0cyIsImFzc2V0IiwiZW5kc1dpdGgiLCJocmVmIiwicmVsIiwiYXMiLCJjc1BvbGljeSIsImh0dHBFcXVpdiIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsInJlcyIsInNldEhlYWRlciIsIm5vbmNlIiwiYXBwIiwiZXh0cmFTdHlsZSIsInRpdGxlIiwicm9vdElkIiwic2NyaXB0cyIsImNoaWxkcmVuIiwicHJlbG9hZCIsImMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc3BvdXRzL2RvY3VtZW50LnNlcnZlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBSb3V0ZSB9IGZyb20gJ0BhbmFuc2kvcm91dGVyJztcbmltcG9ydCB7IFJlcXVlc3QgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBTdGF0c0NodW5rR3JvdXAgfSBmcm9tICd3ZWJwYWNrJztcblxuaW1wb3J0IHsgYnVpbGRQb2xpY3ksIGpvaW5Ob25jZSwgdHlwZSBDU1BvbGljeSB9IGZyb20gJy4vY3NwLmpzJztcbmltcG9ydCBEb2N1bWVudCBmcm9tICcuL0RvY3VtZW50Q29tcG9uZW50LmpzJztcbmltcG9ydCB0eXBlIHsgU2VydmVyU3BvdXQgfSBmcm9tICcuL3R5cGVzLmpzJztcblxudHlwZSBOZWVkZWROZXh0ID0ge1xuICBtYXRjaGVkUm91dGVzOiBSb3V0ZTxhbnk+W107XG4gIHRpdGxlPzogc3RyaW5nO1xuICBzY3JpcHRzPzogUmVhY3QuUmVhY3ROb2RlW107XG4gIGV4dHJhU3R5bGU/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbn07XG5cbmV4cG9ydCB7IHR5cGUgQ1NQb2xpY3kgfTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRG9jdW1lbnRTcG91dChvcHRpb25zOiB7XG4gIGhlYWQ/OiBSZWFjdC5SZWFjdE5vZGU7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGxhbmc/OiBzdHJpbmc7XG4gIHJvb3RJZD86IHN0cmluZztcbiAgY2hhclNldD86IHN0cmluZztcbiAgY3NQb2xpY3k/OiBDU1BvbGljeTtcbn0pOiBTZXJ2ZXJTcG91dDxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sIE5lZWRlZE5leHQ+IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgY29uc3QgcHVibGljUGF0aCA9IHByb3BzLmNsaWVudE1hbmlmZXN0LnB1YmxpY1BhdGg7XG5cbiAgICBpZiAoXG4gICAgICBPYmplY3Qua2V5cyhwcm9wcy5jbGllbnRNYW5pZmVzdD8uZW50cnlwb2ludHMgPz8ge30pLmxlbmd0aCA8IDEgfHxcbiAgICAgIHB1YmxpY1BhdGggPT09IHVuZGVmaW5lZFxuICAgIClcbiAgICAgIHRocm93IG5ldyBFcnJvcignTWFuaWZlc3QgbWlzc2luZyBlbnRyaWVzIG5lZWRlZCcpO1xuXG4gICAgLy8gVE9ETzogY29uc2lkZXIgdXNpbmcgdGhpcyBwYWNrYWdlIGZvciBidWlsZCBzdGF0cyBpbiBmdXR1cmU6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlYWN0L3RyZWUvbWFpbi9wYWNrYWdlcy9yZWFjdC1zZXJ2ZXItZG9tLXdlYnBhY2tcbiAgICBjb25zdCBhc3NldE1hcCA9IChhc3NldHM6IHsgbmFtZTogc3RyaW5nOyBzaXplPzogbnVtYmVyIH1bXSkgPT5cbiAgICAgIGFzc2V0cy5tYXAoKHsgbmFtZSB9KSA9PiBgJHtwdWJsaWNQYXRofSR7bmFtZX1gKTtcblxuICAgIGNvbnN0IGFzc2V0TGlzdDogc3RyaW5nW10gPSBbXTtcbiAgICBPYmplY3QudmFsdWVzKHByb3BzLmNsaWVudE1hbmlmZXN0Py5lbnRyeXBvaW50cyA/PyB7fSkuZm9yRWFjaChcbiAgICAgIGVudHJ5cG9pbnQgPT4ge1xuICAgICAgICBhc3NldExpc3QucHVzaCguLi5hc3NldE1hcChlbnRyeXBvaW50LmFzc2V0cyA/PyBbXSkpO1xuICAgICAgfSxcbiAgICApO1xuICAgIG5ldyBTZXQoXG4gICAgICBhc3NldE1hcChcbiAgICAgICAgT2JqZWN0LnZhbHVlcyhwcm9wcy5jbGllbnRNYW5pZmVzdC5uYW1lZENodW5rR3JvdXBzID8/IHt9KVxuICAgICAgICAgIC5maWx0ZXIoKHsgbmFtZSB9KSA9PlxuICAgICAgICAgICAgbmV4dFByb3BzLm1hdGNoZWRSb3V0ZXMuc29tZShyb3V0ZSA9PiBuYW1lPy5pbmNsdWRlcyhyb3V0ZS5uYW1lKSksXG4gICAgICAgICAgKVxuICAgICAgICAgIC5mbGF0TWFwKGNodW5rID0+IFtcbiAgICAgICAgICAgIC4uLihjaHVuay5hc3NldHMgPz8gW10pLFxuICAgICAgICAgICAgLy8gYW55IGNodW5rIHByZWxvYWRzXG4gICAgICAgICAgICAuLi5jaGlsZHJlbkFzc2V0cyhjaHVuayksXG4gICAgICAgICAgXSksXG4gICAgICApLFxuICAgICkuZm9yRWFjaChhc3NldCA9PiBhc3NldExpc3QucHVzaChhc3NldCkpO1xuXG4gICAgLy8gZmluZCBhZGRpdGlvbmFsIGFzc2V0cyB0byBwcmVsb2FkIGJhc2VkIG9uIG1hdGNoZWQgcm91dGVcbiAgICBjb25zdCBhc3NldHM6IHtcbiAgICAgIGhyZWY6IHN0cmluZztcbiAgICAgIGFzPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgICAgcmVsPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIH1bXSA9IGFzc2V0TGlzdFxuICAgICAgLmZpbHRlcihhc3NldCA9PiAhYXNzZXQuZW5kc1dpdGgoJy5ob3QtdXBkYXRlLmpzJykpXG4gICAgICAubWFwKGFzc2V0ID0+XG4gICAgICAgIGFzc2V0LmVuZHNXaXRoKCcuY3NzJykgPyB7IGhyZWY6IGFzc2V0LCByZWw6ICdzdHlsZXNoZWV0JyB9XG4gICAgICAgIDogYXNzZXQuZW5kc1dpdGgoJy5qcycpID8geyBocmVmOiBhc3NldCwgYXM6ICdzY3JpcHQnIH1cbiAgICAgICAgOiB7IGhyZWY6IGFzc2V0IH0sXG4gICAgICApO1xuXG4gICAgaWYgKG9wdGlvbnMuY3NQb2xpY3kpIHtcbiAgICAgIGNvbnN0IGh0dHBFcXVpdiA9XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbicgP1xuICAgICAgICAgICdDb250ZW50LVNlY3VyaXR5LVBvbGljeSdcbiAgICAgICAgOiAnQ29udGVudC1TZWN1cml0eS1Qb2xpY3ktUmVwb3J0LU9ubHknO1xuXG4gICAgICBwcm9wcy5yZXMuc2V0SGVhZGVyKFxuICAgICAgICBodHRwRXF1aXYsXG4gICAgICAgIGJ1aWxkUG9saWN5KGpvaW5Ob25jZShvcHRpb25zLmNzUG9saWN5LCBwcm9wcy5ub25jZSkpLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4ubmV4dFByb3BzLFxuICAgICAgYXBwOiAoXG4gICAgICAgIDxEb2N1bWVudFxuICAgICAgICAgIHsuLi5vcHRpb25zfVxuICAgICAgICAgIGV4dHJhU3R5bGU9e25leHRQcm9wcy5leHRyYVN0eWxlfVxuICAgICAgICAgIHRpdGxlPXtuZXh0UHJvcHMudGl0bGUgPz8gb3B0aW9ucy50aXRsZX1cbiAgICAgICAgICBhc3NldHM9e2Fzc2V0c31cbiAgICAgICAgICByb290SWQ9e29wdGlvbnMucm9vdElkfVxuICAgICAgICAgIHNjcmlwdHM9e25leHRQcm9wcy5zY3JpcHRzfVxuICAgICAgICA+XG4gICAgICAgICAge25leHRQcm9wcy5hcHB9XG4gICAgICAgIDwvRG9jdW1lbnQ+XG4gICAgICApLFxuICAgIH07XG4gIH07XG59XG5cbmZ1bmN0aW9uIGNoaWxkcmVuQXNzZXRzKGNodW5rOiBTdGF0c0NodW5rR3JvdXApIHtcbiAgcmV0dXJuIGNodW5rLmNoaWxkcmVuID9cbiAgICAgIE9iamVjdC52YWx1ZXMoY2h1bmsuY2hpbGRyZW4pLmZsYXRNYXAocHJlbG9hZCA9PlxuICAgICAgICBwcmVsb2FkLmZsYXRNYXAoYyA9PiBjLmFzc2V0cyA/PyBbXSksXG4gICAgICApXG4gICAgOiBbXTtcbn1cbiJdLCJtYXBwaW5ncyI6IkFBRUEsT0FBT0EsS0FBSyxNQUFNLE9BQU87QUFHekIsU0FBU0MsV0FBVyxFQUFFQyxTQUFTLFFBQXVCLFVBQVU7QUFDaEUsT0FBT0MsUUFBUSxNQUFNLHdCQUF3QjtBQUFDLFNBQUFDLEdBQUEsSUFBQUMsSUFBQTtBQVk5QyxlQUFlLFNBQVNDLGFBQWFBLENBQUNDLE9BT3JDLEVBQTZFO0VBQzVFLE9BQU9DLElBQUksSUFBSSxNQUFNQyxLQUFLLElBQUk7SUFDNUIsTUFBTUMsU0FBUyxHQUFHLE1BQU1GLElBQUksQ0FBQ0MsS0FBSyxDQUFDO0lBRW5DLE1BQU1FLFVBQVUsR0FBR0YsS0FBSyxDQUFDRyxjQUFjLENBQUNELFVBQVU7SUFFbEQsSUFDRUUsTUFBTSxDQUFDQyxJQUFJLENBQUNMLEtBQUssQ0FBQ0csY0FBYyxFQUFFRyxXQUFXLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQ0MsTUFBTSxHQUFHLENBQUMsSUFDL0RMLFVBQVUsS0FBS00sU0FBUyxFQUV4QixNQUFNLElBQUlDLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQzs7SUFFcEQ7SUFDQTtJQUNBLE1BQU1DLFFBQVEsR0FBSUMsTUFBeUMsSUFDekRBLE1BQU0sQ0FBQ0MsR0FBRyxDQUFDLENBQUM7TUFBRUM7SUFBSyxDQUFDLEtBQUssR0FBR1gsVUFBVSxHQUFHVyxJQUFJLEVBQUUsQ0FBQztJQUVsRCxNQUFNQyxTQUFtQixHQUFHLEVBQUU7SUFDOUJWLE1BQU0sQ0FBQ1csTUFBTSxDQUFDZixLQUFLLENBQUNHLGNBQWMsRUFBRUcsV0FBVyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUNVLE9BQU8sQ0FDNURDLFVBQVUsSUFBSTtNQUNaSCxTQUFTLENBQUNJLElBQUksQ0FBQyxHQUFHUixRQUFRLENBQUNPLFVBQVUsQ0FBQ04sTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3RELENBQ0YsQ0FBQztJQUNELElBQUlRLEdBQUcsQ0FDTFQsUUFBUSxDQUNOTixNQUFNLENBQUNXLE1BQU0sQ0FBQ2YsS0FBSyxDQUFDRyxjQUFjLENBQUNpQixnQkFBZ0IsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUN2REMsTUFBTSxDQUFDLENBQUM7TUFBRVI7SUFBSyxDQUFDLEtBQ2ZaLFNBQVMsQ0FBQ3FCLGFBQWEsQ0FBQ0MsSUFBSSxDQUFDQyxLQUFLLElBQUlYLElBQUksRUFBRVksUUFBUSxDQUFDRCxLQUFLLENBQUNYLElBQUksQ0FBQyxDQUNsRSxDQUFDLENBQ0FhLE9BQU8sQ0FBQ0MsS0FBSyxJQUFJLENBQ2hCLElBQUlBLEtBQUssQ0FBQ2hCLE1BQU0sSUFBSSxFQUFFLENBQUM7SUFDdkI7SUFDQSxHQUFHaUIsY0FBYyxDQUFDRCxLQUFLLENBQUMsQ0FDekIsQ0FDTCxDQUNGLENBQUMsQ0FBQ1gsT0FBTyxDQUFDYSxLQUFLLElBQUlmLFNBQVMsQ0FBQ0ksSUFBSSxDQUFDVyxLQUFLLENBQUMsQ0FBQzs7SUFFekM7SUFDQSxNQUFNbEIsTUFJSCxHQUFHRyxTQUFTLENBQ1pPLE1BQU0sQ0FBQ1EsS0FBSyxJQUFJLENBQUNBLEtBQUssQ0FBQ0MsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FDbERsQixHQUFHLENBQUNpQixLQUFLLElBQ1JBLEtBQUssQ0FBQ0MsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHO01BQUVDLElBQUksRUFBRUYsS0FBSztNQUFFRyxHQUFHLEVBQUU7SUFBYSxDQUFDLEdBQ3pESCxLQUFLLENBQUNDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRztNQUFFQyxJQUFJLEVBQUVGLEtBQUs7TUFBRUksRUFBRSxFQUFFO0lBQVMsQ0FBQyxHQUNyRDtNQUFFRixJQUFJLEVBQUVGO0lBQU0sQ0FDbEIsQ0FBQztJQUVILElBQUkvQixPQUFPLENBQUNvQyxRQUFRLEVBQUU7TUFDcEIsTUFBTUMsU0FBUyxHQUNiQyxPQUFPLENBQUNDLEdBQUcsQ0FBQ0MsUUFBUSxLQUFLLFlBQVksR0FDbkMseUJBQXlCLEdBQ3pCLHFDQUFxQztNQUV6Q3RDLEtBQUssQ0FBQ3VDLEdBQUcsQ0FBQ0MsU0FBUyxDQUNqQkwsU0FBUyxFQUNUM0MsV0FBVyxDQUFDQyxTQUFTLENBQUNLLE9BQU8sQ0FBQ29DLFFBQVEsRUFBRWxDLEtBQUssQ0FBQ3lDLEtBQUssQ0FBQyxDQUN0RCxDQUFDO0lBQ0g7SUFFQSxPQUFPO01BQ0wsR0FBR3hDLFNBQVM7TUFDWnlDLEdBQUcsZUFDRDlDLElBQUEsQ0FBQ0YsUUFBUTtRQUFBLEdBQ0hJLE9BQU87UUFDWDZDLFVBQVUsRUFBRTFDLFNBQVMsQ0FBQzBDLFVBQVc7UUFDakNDLEtBQUssRUFBRTNDLFNBQVMsQ0FBQzJDLEtBQUssSUFBSTlDLE9BQU8sQ0FBQzhDLEtBQU07UUFDeENqQyxNQUFNLEVBQUVBLE1BQU87UUFDZmtDLE1BQU0sRUFBRS9DLE9BQU8sQ0FBQytDLE1BQU87UUFDdkJDLE9BQU8sRUFBRTdDLFNBQVMsQ0FBQzZDLE9BQVE7UUFBQUMsUUFBQSxFQUUxQjlDLFNBQVMsQ0FBQ3lDO01BQUcsQ0FDTjtJQUVkLENBQUM7RUFDSCxDQUFDO0FBQ0g7QUFFQSxTQUFTZCxjQUFjQSxDQUFDRCxLQUFzQixFQUFFO0VBQzlDLE9BQU9BLEtBQUssQ0FBQ29CLFFBQVEsR0FDakIzQyxNQUFNLENBQUNXLE1BQU0sQ0FBQ1ksS0FBSyxDQUFDb0IsUUFBUSxDQUFDLENBQUNyQixPQUFPLENBQUNzQixPQUFPLElBQzNDQSxPQUFPLENBQUN0QixPQUFPLENBQUN1QixDQUFDLElBQUlBLENBQUMsQ0FBQ3RDLE1BQU0sSUFBSSxFQUFFLENBQ3JDLENBQUMsR0FDRCxFQUFFO0FBQ1IiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -29,6 +29,13 @@ function getDataFromEl(el, key) {
29
29
  if (el.text === undefined) {
30
30
  console.error(`#${key} is completely empty. This could be due to CSP issues.`);
31
31
  }
32
- return el?.text ? JSON.parse(el?.text) : undefined;
32
+ if (!el?.text) return undefined;
33
+ try {
34
+ return JSON.parse(el.text);
35
+ } catch (error) {
36
+ console.error(`Failed to parse JSON for #${key}:`, error);
37
+ console.error('Text content:', el.text);
38
+ return undefined;
39
+ }
33
40
  }
34
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJKU09OU3BvdXQiLCJpZCIsIm5leHQiLCJwcm9wcyIsImdldEluaXRpYWxEYXRhIiwia2V5IiwiZ2xvYmFsSWQiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsImVsIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsImdldERhdGFGcm9tRWwiLCJhZGRFdmVudExpc3RlbmVyIiwiRXJyb3IiLCJ0ZXh0IiwidW5kZWZpbmVkIiwiY29uc29sZSIsImVycm9yIiwiSlNPTiIsInBhcnNlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Nwb3V0cy9qc29uLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENsaWVudFNwb3V0IH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEpTT05TcG91dCh7XG4gIGlkID0gJ2FuYW5zaS1qc29uJyxcbn06IHsgaWQ/OiBzdHJpbmcgfSA9IHt9KTogQ2xpZW50U3BvdXQ8XG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICB7IGdldEluaXRpYWxEYXRhOiAoa2V5OiBzdHJpbmcpID0+IFByb21pc2U8YW55PiB9XG4+IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IGdldEluaXRpYWxEYXRhID0gKGtleTogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBnbG9iYWxJZCA9IGAke2lkfS4ke2tleX1gO1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPGFueT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICBsZXQgZWw6IEhUTUxTY3JpcHRFbGVtZW50IHwgbnVsbDtcbiAgICAgICAgaWYgKChlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGdsb2JhbElkKSBhcyBhbnkpKSB7XG4gICAgICAgICAgcmVzb2x2ZShnZXREYXRhRnJvbUVsKGVsLCBnbG9iYWxJZCkpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgKCkgPT4ge1xuICAgICAgICAgIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZ2xvYmFsSWQpIGFzIGFueTtcbiAgICAgICAgICBpZiAoZWwpIHJlc29sdmUoZ2V0RGF0YUZyb21FbChlbCwgZ2xvYmFsSWQpKTtcbiAgICAgICAgICBlbHNlIHJlamVjdChuZXcgRXJyb3IoYGZhaWxlZCB0byBmaW5kIERPTSB3aXRoICR7a2V5fSBzdGF0ZWApKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9O1xuICAgIHJldHVybiB7IC4uLihhd2FpdCBuZXh0KHsgLi4ucHJvcHMsIGdldEluaXRpYWxEYXRhIH0pKSwgZ2V0SW5pdGlhbERhdGEgfTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0RGF0YUZyb21FbChlbDogSFRNTFNjcmlwdEVsZW1lbnQsIGtleTogc3RyaW5nKSB7XG4gIGlmIChlbC50ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgYCMke2tleX0gaXMgY29tcGxldGVseSBlbXB0eS4gVGhpcyBjb3VsZCBiZSBkdWUgdG8gQ1NQIGlzc3Vlcy5gLFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIGVsPy50ZXh0ID8gSlNPTi5wYXJzZShlbD8udGV4dCkgOiB1bmRlZmluZWQ7XG59XG4iXSwibWFwcGluZ3MiOiJBQUVBLGVBQWUsU0FBU0EsU0FBU0EsQ0FBQztFQUNoQ0MsRUFBRSxHQUFHO0FBQ1UsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUdyQjtFQUNBLE9BQU9DLElBQUksSUFBSSxNQUFNQyxLQUFLLElBQUk7SUFDNUIsTUFBTUMsY0FBYyxHQUFJQyxHQUFXLElBQUs7TUFDdEMsTUFBTUMsUUFBUSxHQUFHLEdBQUdMLEVBQUUsSUFBSUksR0FBRyxFQUFFO01BQy9CLE9BQU8sSUFBSUUsT0FBTyxDQUFNLENBQUNDLE9BQU8sRUFBRUMsTUFBTSxLQUFLO1FBQzNDLElBQUlDLEVBQTRCO1FBQ2hDLElBQUtBLEVBQUUsR0FBR0MsUUFBUSxDQUFDQyxjQUFjLENBQUNOLFFBQVEsQ0FBUSxFQUFHO1VBQ25ERSxPQUFPLENBQUNLLGFBQWEsQ0FBQ0gsRUFBRSxFQUFFSixRQUFRLENBQUMsQ0FBQztVQUNwQztRQUNGO1FBQ0FLLFFBQVEsQ0FBQ0csZ0JBQWdCLENBQUMsa0JBQWtCLEVBQUUsTUFBTTtVQUNsREosRUFBRSxHQUFHQyxRQUFRLENBQUNDLGNBQWMsQ0FBQ04sUUFBUSxDQUFRO1VBQzdDLElBQUlJLEVBQUUsRUFBRUYsT0FBTyxDQUFDSyxhQUFhLENBQUNILEVBQUUsRUFBRUosUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUN4Q0csTUFBTSxDQUFDLElBQUlNLEtBQUssQ0FBQywyQkFBMkJWLEdBQUcsUUFBUSxDQUFDLENBQUM7UUFDaEUsQ0FBQyxDQUFDO01BQ0osQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUNELE9BQU87TUFBRSxJQUFJLE1BQU1ILElBQUksQ0FBQztRQUFFLEdBQUdDLEtBQUs7UUFBRUM7TUFBZSxDQUFDLENBQUMsQ0FBQztNQUFFQTtJQUFlLENBQUM7RUFDMUUsQ0FBQztBQUNIO0FBRUEsU0FBU1MsYUFBYUEsQ0FBQ0gsRUFBcUIsRUFBRUwsR0FBVyxFQUFFO0VBQ3pELElBQUlLLEVBQUUsQ0FBQ00sSUFBSSxLQUFLQyxTQUFTLEVBQUU7SUFDekJDLE9BQU8sQ0FBQ0MsS0FBSyxDQUNYLElBQUlkLEdBQUcsd0RBQ1QsQ0FBQztFQUNIO0VBQ0EsT0FBT0ssRUFBRSxFQUFFTSxJQUFJLEdBQUdJLElBQUksQ0FBQ0MsS0FBSyxDQUFDWCxFQUFFLEVBQUVNLElBQUksQ0FBQyxHQUFHQyxTQUFTO0FBQ3BEIiwiaWdub3JlTGlzdCI6W119
41
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJKU09OU3BvdXQiLCJpZCIsIm5leHQiLCJwcm9wcyIsImdldEluaXRpYWxEYXRhIiwia2V5IiwiZ2xvYmFsSWQiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsImVsIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsImdldERhdGFGcm9tRWwiLCJhZGRFdmVudExpc3RlbmVyIiwiRXJyb3IiLCJ0ZXh0IiwidW5kZWZpbmVkIiwiY29uc29sZSIsImVycm9yIiwiSlNPTiIsInBhcnNlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Nwb3V0cy9qc29uLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENsaWVudFNwb3V0IH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEpTT05TcG91dCh7XG4gIGlkID0gJ2FuYW5zaS1qc29uJyxcbn06IHsgaWQ/OiBzdHJpbmcgfSA9IHt9KTogQ2xpZW50U3BvdXQ8XG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICB7IGdldEluaXRpYWxEYXRhOiAoa2V5OiBzdHJpbmcpID0+IFByb21pc2U8YW55PiB9XG4+IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IGdldEluaXRpYWxEYXRhID0gKGtleTogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBnbG9iYWxJZCA9IGAke2lkfS4ke2tleX1gO1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPGFueT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICBsZXQgZWw6IEhUTUxTY3JpcHRFbGVtZW50IHwgbnVsbDtcbiAgICAgICAgaWYgKChlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGdsb2JhbElkKSBhcyBhbnkpKSB7XG4gICAgICAgICAgcmVzb2x2ZShnZXREYXRhRnJvbUVsKGVsLCBnbG9iYWxJZCkpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgKCkgPT4ge1xuICAgICAgICAgIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZ2xvYmFsSWQpIGFzIGFueTtcbiAgICAgICAgICBpZiAoZWwpIHJlc29sdmUoZ2V0RGF0YUZyb21FbChlbCwgZ2xvYmFsSWQpKTtcbiAgICAgICAgICBlbHNlIHJlamVjdChuZXcgRXJyb3IoYGZhaWxlZCB0byBmaW5kIERPTSB3aXRoICR7a2V5fSBzdGF0ZWApKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9O1xuICAgIHJldHVybiB7IC4uLihhd2FpdCBuZXh0KHsgLi4ucHJvcHMsIGdldEluaXRpYWxEYXRhIH0pKSwgZ2V0SW5pdGlhbERhdGEgfTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0RGF0YUZyb21FbChlbDogSFRNTFNjcmlwdEVsZW1lbnQsIGtleTogc3RyaW5nKSB7XG4gIGlmIChlbC50ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgYCMke2tleX0gaXMgY29tcGxldGVseSBlbXB0eS4gVGhpcyBjb3VsZCBiZSBkdWUgdG8gQ1NQIGlzc3Vlcy5gLFxuICAgICk7XG4gIH1cbiAgaWYgKCFlbD8udGV4dCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgdHJ5IHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZShlbC50ZXh0KTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gcGFyc2UgSlNPTiBmb3IgIyR7a2V5fTpgLCBlcnJvcik7XG4gICAgY29uc29sZS5lcnJvcignVGV4dCBjb250ZW50OicsIGVsLnRleHQpO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6IkFBRUEsZUFBZSxTQUFTQSxTQUFTQSxDQUFDO0VBQ2hDQyxFQUFFLEdBQUc7QUFDVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBR3JCO0VBQ0EsT0FBT0MsSUFBSSxJQUFJLE1BQU1DLEtBQUssSUFBSTtJQUM1QixNQUFNQyxjQUFjLEdBQUlDLEdBQVcsSUFBSztNQUN0QyxNQUFNQyxRQUFRLEdBQUcsR0FBR0wsRUFBRSxJQUFJSSxHQUFHLEVBQUU7TUFDL0IsT0FBTyxJQUFJRSxPQUFPLENBQU0sQ0FBQ0MsT0FBTyxFQUFFQyxNQUFNLEtBQUs7UUFDM0MsSUFBSUMsRUFBNEI7UUFDaEMsSUFBS0EsRUFBRSxHQUFHQyxRQUFRLENBQUNDLGNBQWMsQ0FBQ04sUUFBUSxDQUFRLEVBQUc7VUFDbkRFLE9BQU8sQ0FBQ0ssYUFBYSxDQUFDSCxFQUFFLEVBQUVKLFFBQVEsQ0FBQyxDQUFDO1VBQ3BDO1FBQ0Y7UUFDQUssUUFBUSxDQUFDRyxnQkFBZ0IsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNO1VBQ2xESixFQUFFLEdBQUdDLFFBQVEsQ0FBQ0MsY0FBYyxDQUFDTixRQUFRLENBQVE7VUFDN0MsSUFBSUksRUFBRSxFQUFFRixPQUFPLENBQUNLLGFBQWEsQ0FBQ0gsRUFBRSxFQUFFSixRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQ3hDRyxNQUFNLENBQUMsSUFBSU0sS0FBSyxDQUFDLDJCQUEyQlYsR0FBRyxRQUFRLENBQUMsQ0FBQztRQUNoRSxDQUFDLENBQUM7TUFDSixDQUFDLENBQUM7SUFDSixDQUFDO0lBQ0QsT0FBTztNQUFFLElBQUksTUFBTUgsSUFBSSxDQUFDO1FBQUUsR0FBR0MsS0FBSztRQUFFQztNQUFlLENBQUMsQ0FBQyxDQUFDO01BQUVBO0lBQWUsQ0FBQztFQUMxRSxDQUFDO0FBQ0g7QUFFQSxTQUFTUyxhQUFhQSxDQUFDSCxFQUFxQixFQUFFTCxHQUFXLEVBQUU7RUFDekQsSUFBSUssRUFBRSxDQUFDTSxJQUFJLEtBQUtDLFNBQVMsRUFBRTtJQUN6QkMsT0FBTyxDQUFDQyxLQUFLLENBQ1gsSUFBSWQsR0FBRyx3REFDVCxDQUFDO0VBQ0g7RUFDQSxJQUFJLENBQUNLLEVBQUUsRUFBRU0sSUFBSSxFQUFFLE9BQU9DLFNBQVM7RUFDL0IsSUFBSTtJQUNGLE9BQU9HLElBQUksQ0FBQ0MsS0FBSyxDQUFDWCxFQUFFLENBQUNNLElBQUksQ0FBQztFQUM1QixDQUFDLENBQUMsT0FBT0csS0FBSyxFQUFFO0lBQ2RELE9BQU8sQ0FBQ0MsS0FBSyxDQUFDLDZCQUE2QmQsR0FBRyxHQUFHLEVBQUVjLEtBQUssQ0FBQztJQUN6REQsT0FBTyxDQUFDQyxLQUFLLENBQUMsZUFBZSxFQUFFVCxFQUFFLENBQUNNLElBQUksQ0FBQztJQUN2QyxPQUFPQyxTQUFTO0VBQ2xCO0FBQ0YiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -1,3 +1,3 @@
1
1
  import type { ClientSpout } from './types.js';
2
- export default function antdSpout(): ClientSpout;
2
+ export declare function antdSpout(): ClientSpout;
3
3
  //# sourceMappingURL=antd.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"antd.d.ts","sourceRoot":"","sources":["../../src/spouts/antd.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,CAAC,OAAO,UAAU,SAAS,IAAI,WAAW,CAc/C"}
1
+ {"version":3,"file":"antd.d.ts","sourceRoot":"","sources":["../../src/spouts/antd.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,wBAAgB,SAAS,IAAI,WAAW,CAWvC"}
@@ -1,10 +1,7 @@
1
+ import { createCache, StyleProvider } from '@ant-design/cssinjs';
1
2
  import { jsx as _jsx } from "react/jsx-runtime";
2
- export default function antdSpout() {
3
+ export function antdSpout() {
3
4
  return next => async props => {
4
- const {
5
- createCache,
6
- StyleProvider
7
- } = await import(/* webpackIgnore: true */'@ant-design/cssinjs');
8
5
  const cache = createCache();
9
6
  const nextProps = await next(props);
10
7
  return {
@@ -16,4 +13,4 @@ export default function antdSpout() {
16
13
  };
17
14
  };
18
15
  }
19
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJhbnRkU3BvdXQiLCJuZXh0IiwicHJvcHMiLCJjcmVhdGVDYWNoZSIsIlN0eWxlUHJvdmlkZXIiLCJjYWNoZSIsIm5leHRQcm9wcyIsImFwcCIsIl9qc3giLCJjaGlsZHJlbiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zcG91dHMvYW50ZC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDbGllbnRTcG91dCB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBhbnRkU3BvdXQoKTogQ2xpZW50U3BvdXQge1xuICByZXR1cm4gbmV4dCA9PiBhc3luYyBwcm9wcyA9PiB7XG4gICAgY29uc3QgeyBjcmVhdGVDYWNoZSwgU3R5bGVQcm92aWRlciB9ID0gYXdhaXQgaW1wb3J0KFxuICAgICAgLyogd2VicGFja0lnbm9yZTogdHJ1ZSAqLyAnQGFudC1kZXNpZ24vY3NzaW5qcydcbiAgICApO1xuICAgIGNvbnN0IGNhY2hlID0gY3JlYXRlQ2FjaGUoKTtcblxuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5leHRQcm9wcyxcbiAgICAgIGFwcDogPFN0eWxlUHJvdmlkZXIgY2FjaGU9e2NhY2hlfT57bmV4dFByb3BzLmFwcH08L1N0eWxlUHJvdmlkZXI+LFxuICAgIH07XG4gIH07XG59XG4iXSwibWFwcGluZ3MiOiI7QUFFQSxlQUFlLFNBQVNBLFNBQVNBLENBQUEsRUFBZ0I7RUFDL0MsT0FBT0MsSUFBSSxJQUFJLE1BQU1DLEtBQUssSUFBSTtJQUM1QixNQUFNO01BQUVDLFdBQVc7TUFBRUM7SUFBYyxDQUFDLEdBQUcsTUFBTSxNQUFNLENBQ2pELHlCQUEwQixxQkFDNUIsQ0FBQztJQUNELE1BQU1DLEtBQUssR0FBR0YsV0FBVyxDQUFDLENBQUM7SUFFM0IsTUFBTUcsU0FBUyxHQUFHLE1BQU1MLElBQUksQ0FBQ0MsS0FBSyxDQUFDO0lBRW5DLE9BQU87TUFDTCxHQUFHSSxTQUFTO01BQ1pDLEdBQUcsZUFBRUMsSUFBQSxDQUFDSixhQUFhO1FBQUNDLEtBQUssRUFBRUEsS0FBTTtRQUFBSSxRQUFBLEVBQUVILFNBQVMsQ0FBQ0M7TUFBRyxDQUFnQjtJQUNsRSxDQUFDO0VBQ0gsQ0FBQztBQUNIIiwiaWdub3JlTGlzdCI6W119
16
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJjcmVhdGVDYWNoZSIsIlN0eWxlUHJvdmlkZXIiLCJqc3giLCJfanN4IiwiYW50ZFNwb3V0IiwibmV4dCIsInByb3BzIiwiY2FjaGUiLCJuZXh0UHJvcHMiLCJhcHAiLCJjaGlsZHJlbiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zcG91dHMvYW50ZC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY3JlYXRlQ2FjaGUsIFN0eWxlUHJvdmlkZXIgfSBmcm9tICdAYW50LWRlc2lnbi9jc3NpbmpzJztcblxuaW1wb3J0IHR5cGUgeyBDbGllbnRTcG91dCB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG5leHBvcnQgZnVuY3Rpb24gYW50ZFNwb3V0KCk6IENsaWVudFNwb3V0IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IGNhY2hlID0gY3JlYXRlQ2FjaGUoKTtcblxuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5leHRQcm9wcyxcbiAgICAgIGFwcDogPFN0eWxlUHJvdmlkZXIgY2FjaGU9e2NhY2hlfT57bmV4dFByb3BzLmFwcH08L1N0eWxlUHJvdmlkZXI+LFxuICAgIH07XG4gIH07XG59XG4iXSwibWFwcGluZ3MiOiJBQUFBLFNBQVNBLFdBQVcsRUFBRUMsYUFBYSxRQUFRLHFCQUFxQjtBQUFDLFNBQUFDLEdBQUEsSUFBQUMsSUFBQTtBQUlqRSxPQUFPLFNBQVNDLFNBQVNBLENBQUEsRUFBZ0I7RUFDdkMsT0FBT0MsSUFBSSxJQUFJLE1BQU1DLEtBQUssSUFBSTtJQUM1QixNQUFNQyxLQUFLLEdBQUdQLFdBQVcsQ0FBQyxDQUFDO0lBRTNCLE1BQU1RLFNBQVMsR0FBRyxNQUFNSCxJQUFJLENBQUNDLEtBQUssQ0FBQztJQUVuQyxPQUFPO01BQ0wsR0FBR0UsU0FBUztNQUNaQyxHQUFHLGVBQUVOLElBQUEsQ0FBQ0YsYUFBYTtRQUFDTSxLQUFLLEVBQUVBLEtBQU07UUFBQUcsUUFBQSxFQUFFRixTQUFTLENBQUNDO01BQUcsQ0FBZ0I7SUFDbEUsQ0FBQztFQUNILENBQUM7QUFDSCIsImlnbm9yZUxpc3QiOltdfQ==
@@ -5,6 +5,6 @@ type NeededNext = {
5
5
  scripts?: React.ReactNode[];
6
6
  extraStyle?: React.ReactNode[];
7
7
  };
8
- export default function antdSpout(): ServerSpout<Record<string, unknown>, Record<string, unknown>, NeededNext>;
8
+ export declare function antdSpout(): ServerSpout<Record<string, unknown>, Record<string, unknown>, NeededNext>;
9
9
  export {};
10
10
  //# sourceMappingURL=antd.server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"antd.server.d.ts","sourceRoot":"","sources":["../../src/spouts/antd.server.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,KAAK,UAAU,GAAG;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;CAChC,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,SAAS,IAAI,WAAW,CAC9C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvB,UAAU,CACX,CA8BA"}
1
+ {"version":3,"file":"antd.server.d.ts","sourceRoot":"","sources":["../../src/spouts/antd.server.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,KAAK,UAAU,GAAG;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC;IACzC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IAC5B,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;CAChC,CAAC;AAEF,wBAAgB,SAAS,IAAI,WAAW,CACtC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvB,UAAU,CACX,CA8BA"}
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
- export default function antdSpout() {
3
+ export function antdSpout() {
4
4
  return next => async props => {
5
5
  var _nextProps$scripts;
6
6
  const {
@@ -32,4 +32,4 @@ export default function antdSpout() {
32
32
  };
33
33
  };
34
34
  }
35
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsImpzeCIsIl9qc3giLCJhbnRkU3BvdXQiLCJuZXh0IiwicHJvcHMiLCJfbmV4dFByb3BzJHNjcmlwdHMiLCJjcmVhdGVDYWNoZSIsImV4dHJhY3RTdHlsZSIsIlN0eWxlUHJvdmlkZXIiLCJjYWNoZSIsIkFudGRTaGVldHMiLCJkYW5nZXJvdXNseVNldElubmVySFRNTCIsIl9faHRtbCIsIm5leHRQcm9wcyIsInNjcmlwdHMiLCJwdXNoIiwiYXBwIiwiY2hpbGRyZW4iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc3BvdXRzL2FudGQuc2VydmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdHlwZSBKU1ggfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgU2VydmVyU3BvdXQgfSBmcm9tICcuL3R5cGVzLmpzJztcblxudHlwZSBOZWVkZWROZXh0ID0ge1xuICBpbml0RGF0YT86IFJlY29yZDxzdHJpbmcsICgpID0+IHVua25vd24+O1xuICBzY3JpcHRzPzogUmVhY3QuUmVhY3ROb2RlW107XG4gIGV4dHJhU3R5bGU/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIGFudGRTcG91dCgpOiBTZXJ2ZXJTcG91dDxcbiAgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sXG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBOZWVkZWROZXh0XG4+IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IHsgY3JlYXRlQ2FjaGUsIGV4dHJhY3RTdHlsZSwgU3R5bGVQcm92aWRlciB9ID0gYXdhaXQgaW1wb3J0KFxuICAgICAgLyogd2VicGFja0lnbm9yZTogdHJ1ZSAqLyAnQGFudC1kZXNpZ24vY3NzaW5qcydcbiAgICApO1xuICAgIGNvbnN0IGNhY2hlID0gY3JlYXRlQ2FjaGUoKTtcbiAgICBjb25zdCBBbnRkU2hlZXRzID0gKCk6IEpTWC5FbGVtZW50ID0+IHtcbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxzY3JpcHRcbiAgICAgICAgICBkYW5nZXJvdXNseVNldElubmVySFRNTD17e1xuICAgICAgICAgICAgX19odG1sOiBgPC9zY3JpcHQ+JHtleHRyYWN0U3R5bGUoY2FjaGUpfTxzY3JpcHQ+YCxcbiAgICAgICAgICB9fVxuICAgICAgICAvPlxuICAgICAgKTtcbiAgICB9O1xuXG4gICAgY29uc3QgbmV4dFByb3BzID0gYXdhaXQgbmV4dChwcm9wcyk7XG5cbiAgICBjb25zdCBzY3JpcHRzOiBSZWFjdC5SZWFjdE5vZGVbXSA9IG5leHRQcm9wcy5zY3JpcHRzID8/IFtdO1xuXG4gICAgLy8gdW5mb3J0dW5hdGVseSB3ZSBoYXZlIHRvIGluamVjdCB0aGlzIGFmdGVyIHRoZSBlbnRpcmUgY29udGVudCBoYXMgc3RyZWFtZWQgaW4gb3IgaXQgZG9lc24ndCBjb3JyZWN0bHkgcG9wdWxhdGVcbiAgICAvLyBzZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbnQtZGVzaWduL2Nzc2luanMvaXNzdWVzLzc5XG4gICAgc2NyaXB0cy5wdXNoKDxBbnRkU2hlZXRzIGtleT1cImFudGQtc2hlZXRzXCIgLz4pO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5leHRQcm9wcyxcbiAgICAgIGFwcDogPFN0eWxlUHJvdmlkZXIgY2FjaGU9e2NhY2hlfT57bmV4dFByb3BzLmFwcH08L1N0eWxlUHJvdmlkZXI+LFxuICAgICAgc2NyaXB0cyxcbiAgICB9O1xuICB9O1xufVxuIl0sIm1hcHBpbmdzIjoiQUFBQSxPQUFPQSxLQUFLLE1BQW9CLE9BQU87QUFBQyxTQUFBQyxHQUFBLElBQUFDLElBQUE7QUFVeEMsZUFBZSxTQUFTQyxTQUFTQSxDQUFBLEVBSS9CO0VBQ0EsT0FBT0MsSUFBSSxJQUFJLE1BQU1DLEtBQUssSUFBSTtJQUFBLElBQUFDLGtCQUFBO0lBQzVCLE1BQU07TUFBRUMsV0FBVztNQUFFQyxZQUFZO01BQUVDO0lBQWMsQ0FBQyxHQUFHLE1BQU0sTUFBTSxDQUMvRCx5QkFBMEIscUJBQzVCLENBQUM7SUFDRCxNQUFNQyxLQUFLLEdBQUdILFdBQVcsQ0FBQyxDQUFDO0lBQzNCLE1BQU1JLFVBQVUsR0FBR0EsQ0FBQSxLQUFtQjtNQUNwQyxvQkFDRVQsSUFBQTtRQUNFVSx1QkFBdUIsRUFBRTtVQUN2QkMsTUFBTSxFQUFFLFlBQVlMLFlBQVksQ0FBQ0UsS0FBSyxDQUFDO1FBQ3pDO01BQUUsQ0FDSCxDQUFDO0lBRU4sQ0FBQztJQUVELE1BQU1JLFNBQVMsR0FBRyxNQUFNVixJQUFJLENBQUNDLEtBQUssQ0FBQztJQUVuQyxNQUFNVSxPQUEwQixJQUFBVCxrQkFBQSxHQUFHUSxTQUFTLENBQUNDLE9BQU8sWUFBQVQsa0JBQUEsR0FBSSxFQUFFOztJQUUxRDtJQUNBO0lBQ0FTLE9BQU8sQ0FBQ0MsSUFBSSxjQUFDZCxJQUFBLENBQUNTLFVBQVUsTUFBSyxhQUFlLENBQUMsQ0FBQztJQUU5QyxPQUFPO01BQ0wsR0FBR0csU0FBUztNQUNaRyxHQUFHLGVBQUVmLElBQUEsQ0FBQ08sYUFBYTtRQUFDQyxLQUFLLEVBQUVBLEtBQU07UUFBQVEsUUFBQSxFQUFFSixTQUFTLENBQUNHO01BQUcsQ0FBZ0IsQ0FBQztNQUNqRUY7SUFDRixDQUFDO0VBQ0gsQ0FBQztBQUNIIiwiaWdub3JlTGlzdCI6W119
35
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsImpzeCIsIl9qc3giLCJhbnRkU3BvdXQiLCJuZXh0IiwicHJvcHMiLCJfbmV4dFByb3BzJHNjcmlwdHMiLCJjcmVhdGVDYWNoZSIsImV4dHJhY3RTdHlsZSIsIlN0eWxlUHJvdmlkZXIiLCJjYWNoZSIsIkFudGRTaGVldHMiLCJkYW5nZXJvdXNseVNldElubmVySFRNTCIsIl9faHRtbCIsIm5leHRQcm9wcyIsInNjcmlwdHMiLCJwdXNoIiwiYXBwIiwiY2hpbGRyZW4iXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc3BvdXRzL2FudGQuc2VydmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdHlwZSBKU1ggfSBmcm9tICdyZWFjdCc7XG5cbmltcG9ydCB0eXBlIHsgU2VydmVyU3BvdXQgfSBmcm9tICcuL3R5cGVzLmpzJztcblxudHlwZSBOZWVkZWROZXh0ID0ge1xuICBpbml0RGF0YT86IFJlY29yZDxzdHJpbmcsICgpID0+IHVua25vd24+O1xuICBzY3JpcHRzPzogUmVhY3QuUmVhY3ROb2RlW107XG4gIGV4dHJhU3R5bGU/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBhbnRkU3BvdXQoKTogU2VydmVyU3BvdXQ8XG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgTmVlZGVkTmV4dFxuPiB7XG4gIHJldHVybiBuZXh0ID0+IGFzeW5jIHByb3BzID0+IHtcbiAgICBjb25zdCB7IGNyZWF0ZUNhY2hlLCBleHRyYWN0U3R5bGUsIFN0eWxlUHJvdmlkZXIgfSA9IGF3YWl0IGltcG9ydChcbiAgICAgIC8qIHdlYnBhY2tJZ25vcmU6IHRydWUgKi8gJ0BhbnQtZGVzaWduL2Nzc2luanMnXG4gICAgKTtcbiAgICBjb25zdCBjYWNoZSA9IGNyZWF0ZUNhY2hlKCk7XG4gICAgY29uc3QgQW50ZFNoZWV0cyA9ICgpOiBKU1guRWxlbWVudCA9PiB7XG4gICAgICByZXR1cm4gKFxuICAgICAgICA8c2NyaXB0XG4gICAgICAgICAgZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw9e3tcbiAgICAgICAgICAgIF9faHRtbDogYDwvc2NyaXB0PiR7ZXh0cmFjdFN0eWxlKGNhY2hlKX08c2NyaXB0PmAsXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICk7XG4gICAgfTtcblxuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgY29uc3Qgc2NyaXB0czogUmVhY3QuUmVhY3ROb2RlW10gPSBuZXh0UHJvcHMuc2NyaXB0cyA/PyBbXTtcblxuICAgIC8vIHVuZm9ydHVuYXRlbHkgd2UgaGF2ZSB0byBpbmplY3QgdGhpcyBhZnRlciB0aGUgZW50aXJlIGNvbnRlbnQgaGFzIHN0cmVhbWVkIGluIG9yIGl0IGRvZXNuJ3QgY29ycmVjdGx5IHBvcHVsYXRlXG4gICAgLy8gc2VlOiBodHRwczovL2dpdGh1Yi5jb20vYW50LWRlc2lnbi9jc3NpbmpzL2lzc3Vlcy83OVxuICAgIHNjcmlwdHMucHVzaCg8QW50ZFNoZWV0cyBrZXk9XCJhbnRkLXNoZWV0c1wiIC8+KTtcblxuICAgIHJldHVybiB7XG4gICAgICAuLi5uZXh0UHJvcHMsXG4gICAgICBhcHA6IDxTdHlsZVByb3ZpZGVyIGNhY2hlPXtjYWNoZX0+e25leHRQcm9wcy5hcHB9PC9TdHlsZVByb3ZpZGVyPixcbiAgICAgIHNjcmlwdHMsXG4gICAgfTtcbiAgfTtcbn1cbiJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsS0FBSyxNQUFvQixPQUFPO0FBQUMsU0FBQUMsR0FBQSxJQUFBQyxJQUFBO0FBVXhDLE9BQU8sU0FBU0MsU0FBU0EsQ0FBQSxFQUl2QjtFQUNBLE9BQU9DLElBQUksSUFBSSxNQUFNQyxLQUFLLElBQUk7SUFBQSxJQUFBQyxrQkFBQTtJQUM1QixNQUFNO01BQUVDLFdBQVc7TUFBRUMsWUFBWTtNQUFFQztJQUFjLENBQUMsR0FBRyxNQUFNLE1BQU0sQ0FDL0QseUJBQTBCLHFCQUM1QixDQUFDO0lBQ0QsTUFBTUMsS0FBSyxHQUFHSCxXQUFXLENBQUMsQ0FBQztJQUMzQixNQUFNSSxVQUFVLEdBQUdBLENBQUEsS0FBbUI7TUFDcEMsb0JBQ0VULElBQUE7UUFDRVUsdUJBQXVCLEVBQUU7VUFDdkJDLE1BQU0sRUFBRSxZQUFZTCxZQUFZLENBQUNFLEtBQUssQ0FBQztRQUN6QztNQUFFLENBQ0gsQ0FBQztJQUVOLENBQUM7SUFFRCxNQUFNSSxTQUFTLEdBQUcsTUFBTVYsSUFBSSxDQUFDQyxLQUFLLENBQUM7SUFFbkMsTUFBTVUsT0FBMEIsSUFBQVQsa0JBQUEsR0FBR1EsU0FBUyxDQUFDQyxPQUFPLFlBQUFULGtCQUFBLEdBQUksRUFBRTs7SUFFMUQ7SUFDQTtJQUNBUyxPQUFPLENBQUNDLElBQUksY0FBQ2QsSUFBQSxDQUFDUyxVQUFVLE1BQUssYUFBZSxDQUFDLENBQUM7SUFFOUMsT0FBTztNQUNMLEdBQUdHLFNBQVM7TUFDWkcsR0FBRyxlQUFFZixJQUFBLENBQUNPLGFBQWE7UUFBQ0MsS0FBSyxFQUFFQSxLQUFNO1FBQUFRLFFBQUEsRUFBRUosU0FBUyxDQUFDRztNQUFHLENBQWdCLENBQUM7TUFDakVGO0lBQ0YsQ0FBQztFQUNILENBQUM7QUFDSCIsImlnbm9yZUxpc3QiOltdfQ==
@@ -1,6 +1,6 @@
1
- export interface Policy {
1
+ export interface CSPolicy {
2
2
  [directive: string]: string | string[];
3
3
  }
4
- export declare function buildPolicy(policyObj: Policy): string;
5
- export declare function joinNonce(policyObj: Policy, nonce?: string | undefined): Policy;
4
+ export declare function buildPolicy(policyObj: CSPolicy): string;
5
+ export declare function joinNonce(policyObj: CSPolicy, nonce?: string | undefined): CSPolicy;
6
6
  //# sourceMappingURL=csp.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"csp.d.ts","sourceRoot":"","sources":["../../src/spouts/csp.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IACrB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;CACxC;AAGD,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,UAoB5C;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,UAWtE"}
1
+ {"version":3,"file":"csp.d.ts","sourceRoot":"","sources":["../../src/spouts/csp.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAC;CACxC;AAGD,wBAAgB,WAAW,CAAC,SAAS,EAAE,QAAQ,UAoB9C;AAED,wBAAgB,SAAS,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,YAWxE"}
package/lib/spouts/csp.js CHANGED
@@ -25,4 +25,4 @@ export function joinNonce(policyObj, nonce) {
25
25
  }
26
26
  return policy;
27
27
  }
28
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZFBvbGljeSIsInBvbGljeU9iaiIsIk9iamVjdCIsImtleXMiLCJtYXAiLCJrZXkiLCJ2YWwiLCJBcnJheSIsImlzQXJyYXkiLCJTZXQiLCJ2YWx1ZXMiLCJmaWx0ZXIiLCJ2Iiwiam9pbiIsIl9pbmNsdWRlc0luc3RhbmNlUHJvcGVydHkiLCJjYWxsIiwibmV3VmFsIiwicmVwbGFjZSIsInRyaW0iLCJqb2luTm9uY2UiLCJub25jZSIsInBvbGljeSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zcG91dHMvY3NwLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgUG9saWN5IHtcbiAgW2RpcmVjdGl2ZTogc3RyaW5nXTogc3RyaW5nIHwgc3RyaW5nW107XG59XG5cbi8vIFRPRE86IG1lbW9pemUgdGhpc1xuZXhwb3J0IGZ1bmN0aW9uIGJ1aWxkUG9saWN5KHBvbGljeU9iajogUG9saWN5KSB7XG4gIHJldHVybiBPYmplY3Qua2V5cyhwb2xpY3lPYmopXG4gICAgLm1hcChrZXkgPT4ge1xuICAgICAgY29uc3QgdmFsID1cbiAgICAgICAgQXJyYXkuaXNBcnJheShwb2xpY3lPYmpba2V5XSkgP1xuICAgICAgICAgIFsuLi5uZXcgU2V0KHBvbGljeU9ialtrZXldKS52YWx1ZXMoKV0uZmlsdGVyKHYgPT4gdikuam9pbignICcpXG4gICAgICAgIDogcG9saWN5T2JqW2tleV07XG5cbiAgICAgIC8vIG1vdmUgc3RyaWN0IGR5bmFtaWMgdG8gdGhlIGVuZCBvZiB0aGUgcG9saWN5IGlmIGl0IGV4aXN0cyB0byBiZSBiYWNrd2FyZHMgY29tcGF0aWJsZSB3aXRoIGNzcDJcbiAgICAgIC8vIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0hUVFAvSGVhZGVycy9Db250ZW50LVNlY3VyaXR5LVBvbGljeS9zY3JpcHQtc3JjI3N0cmljdC1keW5hbWljXG4gICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycgJiYgdmFsLmluY2x1ZGVzKFwiJ3N0cmljdC1keW5hbWljJ1wiKSkge1xuICAgICAgICBjb25zdCBuZXdWYWwgPSBgJHt2YWxcbiAgICAgICAgICAucmVwbGFjZSgvXFxzPydzdHJpY3QtZHluYW1pYydcXHM/L2dpLCAnICcpXG4gICAgICAgICAgLnRyaW0oKX0gJ3N0cmljdC1keW5hbWljJ2A7XG4gICAgICAgIHJldHVybiBgJHtrZXl9ICR7bmV3VmFsfWA7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBgJHtrZXl9ICR7dmFsfWA7XG4gICAgfSlcbiAgICAuam9pbignOyAnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGpvaW5Ob25jZShwb2xpY3lPYmo6IFBvbGljeSwgbm9uY2U/OiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgaWYgKCFub25jZSkgcmV0dXJuIHBvbGljeU9iajtcbiAgY29uc3QgcG9saWN5ID0ge1xuICAgIC4uLnBvbGljeU9iaixcbiAgfTtcbiAgaWYgKHR5cGVvZiBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9PT0gJ3N0cmluZycpIHtcbiAgICBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9IFtwb2xpY3lbJ3NjcmlwdC1zcmMnXSwgYCdub25jZS0ke25vbmNlfSdgXTtcbiAgfSBlbHNlIHtcbiAgICBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9IFsuLi5wb2xpY3lbJ3NjcmlwdC1zcmMnXSwgYCdub25jZS0ke25vbmNlfSdgXTtcbiAgfVxuICByZXR1cm4gcG9saWN5O1xufVxuIl0sIm1hcHBpbmdzIjoiO0FBSUE7QUFDQSxPQUFPLFNBQVNBLFdBQVdBLENBQUNDLFNBQWlCLEVBQUU7RUFDN0MsT0FBT0MsTUFBTSxDQUFDQyxJQUFJLENBQUNGLFNBQVMsQ0FBQyxDQUMxQkcsR0FBRyxDQUFDQyxHQUFHLElBQUk7SUFDVixNQUFNQyxHQUFHLEdBQ1BDLEtBQUssQ0FBQ0MsT0FBTyxDQUFDUCxTQUFTLENBQUNJLEdBQUcsQ0FBQyxDQUFDLEdBQzNCLENBQUMsR0FBRyxJQUFJSSxHQUFHLENBQUNSLFNBQVMsQ0FBQ0ksR0FBRyxDQUFDLENBQUMsQ0FBQ0ssTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDQyxNQUFNLENBQUNDLENBQUMsSUFBSUEsQ0FBQyxDQUFDLENBQUNDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FDOURaLFNBQVMsQ0FBQ0ksR0FBRyxDQUFDOztJQUVsQjtJQUNBO0lBQ0EsSUFBSSxPQUFPQyxHQUFHLEtBQUssUUFBUSxJQUFJUSx5QkFBQSxDQUFBUixHQUFHLEVBQUFTLElBQUEsQ0FBSFQsR0FBRyxFQUFVLGtCQUFrQixDQUFDLEVBQUU7TUFDL0QsTUFBTVUsTUFBTSxHQUFHLEdBQUdWLEdBQUcsQ0FDbEJXLE9BQU8sQ0FBQywwQkFBMEIsRUFBRSxHQUFHLENBQUMsQ0FDeENDLElBQUksQ0FBQyxDQUFDLG1CQUFtQjtNQUM1QixPQUFPLEdBQUdiLEdBQUcsSUFBSVcsTUFBTSxFQUFFO0lBQzNCO0lBRUEsT0FBTyxHQUFHWCxHQUFHLElBQUlDLEdBQUcsRUFBRTtFQUN4QixDQUFDLENBQUMsQ0FDRE8sSUFBSSxDQUFDLElBQUksQ0FBQztBQUNmO0FBRUEsT0FBTyxTQUFTTSxTQUFTQSxDQUFDbEIsU0FBaUIsRUFBRW1CLEtBQTBCLEVBQUU7RUFDdkUsSUFBSSxDQUFDQSxLQUFLLEVBQUUsT0FBT25CLFNBQVM7RUFDNUIsTUFBTW9CLE1BQU0sR0FBRztJQUNiLEdBQUdwQjtFQUNMLENBQUM7RUFDRCxJQUFJLE9BQU9vQixNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssUUFBUSxFQUFFO0lBQzVDQSxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQ0EsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVVELEtBQUssR0FBRyxDQUFDO0VBQ25FLENBQUMsTUFBTTtJQUNMQyxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHQSxNQUFNLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVUQsS0FBSyxHQUFHLENBQUM7RUFDdEU7RUFDQSxPQUFPQyxNQUFNO0FBQ2YiLCJpZ25vcmVMaXN0IjpbXX0=
28
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZFBvbGljeSIsInBvbGljeU9iaiIsIk9iamVjdCIsImtleXMiLCJtYXAiLCJrZXkiLCJ2YWwiLCJBcnJheSIsImlzQXJyYXkiLCJTZXQiLCJ2YWx1ZXMiLCJmaWx0ZXIiLCJ2Iiwiam9pbiIsIl9pbmNsdWRlc0luc3RhbmNlUHJvcGVydHkiLCJjYWxsIiwibmV3VmFsIiwicmVwbGFjZSIsInRyaW0iLCJqb2luTm9uY2UiLCJub25jZSIsInBvbGljeSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zcG91dHMvY3NwLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQ1NQb2xpY3kge1xuICBbZGlyZWN0aXZlOiBzdHJpbmddOiBzdHJpbmcgfCBzdHJpbmdbXTtcbn1cblxuLy8gVE9ETzogbWVtb2l6ZSB0aGlzXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRQb2xpY3kocG9saWN5T2JqOiBDU1BvbGljeSkge1xuICByZXR1cm4gT2JqZWN0LmtleXMocG9saWN5T2JqKVxuICAgIC5tYXAoa2V5ID0+IHtcbiAgICAgIGNvbnN0IHZhbCA9XG4gICAgICAgIEFycmF5LmlzQXJyYXkocG9saWN5T2JqW2tleV0pID9cbiAgICAgICAgICBbLi4ubmV3IFNldChwb2xpY3lPYmpba2V5XSkudmFsdWVzKCldLmZpbHRlcih2ID0+IHYpLmpvaW4oJyAnKVxuICAgICAgICA6IHBvbGljeU9ialtrZXldO1xuXG4gICAgICAvLyBtb3ZlIHN0cmljdCBkeW5hbWljIHRvIHRoZSBlbmQgb2YgdGhlIHBvbGljeSBpZiBpdCBleGlzdHMgdG8gYmUgYmFja3dhcmRzIGNvbXBhdGlibGUgd2l0aCBjc3AyXG4gICAgICAvLyBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9IVFRQL0hlYWRlcnMvQ29udGVudC1TZWN1cml0eS1Qb2xpY3kvc2NyaXB0LXNyYyNzdHJpY3QtZHluYW1pY1xuICAgICAgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnICYmIHZhbC5pbmNsdWRlcyhcIidzdHJpY3QtZHluYW1pYydcIikpIHtcbiAgICAgICAgY29uc3QgbmV3VmFsID0gYCR7dmFsXG4gICAgICAgICAgLnJlcGxhY2UoL1xccz8nc3RyaWN0LWR5bmFtaWMnXFxzPy9naSwgJyAnKVxuICAgICAgICAgIC50cmltKCl9ICdzdHJpY3QtZHluYW1pYydgO1xuICAgICAgICByZXR1cm4gYCR7a2V5fSAke25ld1ZhbH1gO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gYCR7a2V5fSAke3ZhbH1gO1xuICAgIH0pXG4gICAgLmpvaW4oJzsgJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBqb2luTm9uY2UocG9saWN5T2JqOiBDU1BvbGljeSwgbm9uY2U/OiBzdHJpbmcgfCB1bmRlZmluZWQpIHtcbiAgaWYgKCFub25jZSkgcmV0dXJuIHBvbGljeU9iajtcbiAgY29uc3QgcG9saWN5ID0ge1xuICAgIC4uLnBvbGljeU9iaixcbiAgfTtcbiAgaWYgKHR5cGVvZiBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9PT0gJ3N0cmluZycpIHtcbiAgICBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9IFtwb2xpY3lbJ3NjcmlwdC1zcmMnXSwgYCdub25jZS0ke25vbmNlfSdgXTtcbiAgfSBlbHNlIHtcbiAgICBwb2xpY3lbJ3NjcmlwdC1zcmMnXSA9IFsuLi5wb2xpY3lbJ3NjcmlwdC1zcmMnXSwgYCdub25jZS0ke25vbmNlfSdgXTtcbiAgfVxuICByZXR1cm4gcG9saWN5O1xufVxuIl0sIm1hcHBpbmdzIjoiO0FBSUE7QUFDQSxPQUFPLFNBQVNBLFdBQVdBLENBQUNDLFNBQW1CLEVBQUU7RUFDL0MsT0FBT0MsTUFBTSxDQUFDQyxJQUFJLENBQUNGLFNBQVMsQ0FBQyxDQUMxQkcsR0FBRyxDQUFDQyxHQUFHLElBQUk7SUFDVixNQUFNQyxHQUFHLEdBQ1BDLEtBQUssQ0FBQ0MsT0FBTyxDQUFDUCxTQUFTLENBQUNJLEdBQUcsQ0FBQyxDQUFDLEdBQzNCLENBQUMsR0FBRyxJQUFJSSxHQUFHLENBQUNSLFNBQVMsQ0FBQ0ksR0FBRyxDQUFDLENBQUMsQ0FBQ0ssTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDQyxNQUFNLENBQUNDLENBQUMsSUFBSUEsQ0FBQyxDQUFDLENBQUNDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FDOURaLFNBQVMsQ0FBQ0ksR0FBRyxDQUFDOztJQUVsQjtJQUNBO0lBQ0EsSUFBSSxPQUFPQyxHQUFHLEtBQUssUUFBUSxJQUFJUSx5QkFBQSxDQUFBUixHQUFHLEVBQUFTLElBQUEsQ0FBSFQsR0FBRyxFQUFVLGtCQUFrQixDQUFDLEVBQUU7TUFDL0QsTUFBTVUsTUFBTSxHQUFHLEdBQUdWLEdBQUcsQ0FDbEJXLE9BQU8sQ0FBQywwQkFBMEIsRUFBRSxHQUFHLENBQUMsQ0FDeENDLElBQUksQ0FBQyxDQUFDLG1CQUFtQjtNQUM1QixPQUFPLEdBQUdiLEdBQUcsSUFBSVcsTUFBTSxFQUFFO0lBQzNCO0lBRUEsT0FBTyxHQUFHWCxHQUFHLElBQUlDLEdBQUcsRUFBRTtFQUN4QixDQUFDLENBQUMsQ0FDRE8sSUFBSSxDQUFDLElBQUksQ0FBQztBQUNmO0FBRUEsT0FBTyxTQUFTTSxTQUFTQSxDQUFDbEIsU0FBbUIsRUFBRW1CLEtBQTBCLEVBQUU7RUFDekUsSUFBSSxDQUFDQSxLQUFLLEVBQUUsT0FBT25CLFNBQVM7RUFDNUIsTUFBTW9CLE1BQU0sR0FBRztJQUNiLEdBQUdwQjtFQUNMLENBQUM7RUFDRCxJQUFJLE9BQU9vQixNQUFNLENBQUMsWUFBWSxDQUFDLEtBQUssUUFBUSxFQUFFO0lBQzVDQSxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQ0EsTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVVELEtBQUssR0FBRyxDQUFDO0VBQ25FLENBQUMsTUFBTTtJQUNMQyxNQUFNLENBQUMsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHQSxNQUFNLENBQUMsWUFBWSxDQUFDLEVBQUUsVUFBVUQsS0FBSyxHQUFHLENBQUM7RUFDdEU7RUFDQSxPQUFPQyxNQUFNO0FBQ2YiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -1,6 +1,6 @@
1
1
  import type { Route } from '@anansi/router';
2
2
  import React from 'react';
3
- import { Policy } from './csp.js';
3
+ import { type CSPolicy } from './csp.js';
4
4
  import type { ServerSpout } from './types.js';
5
5
  type NeededNext = {
6
6
  matchedRoutes: Route<any>[];
@@ -8,13 +8,13 @@ type NeededNext = {
8
8
  scripts?: React.ReactNode[];
9
9
  extraStyle?: React.ReactNode[];
10
10
  };
11
+ export { type CSPolicy };
11
12
  export default function DocumentSpout(options: {
12
13
  head?: React.ReactNode;
13
14
  title: string;
14
15
  lang?: string;
15
16
  rootId?: string;
16
17
  charSet?: string;
17
- csPolicy?: Policy;
18
+ csPolicy?: CSPolicy;
18
19
  }): ServerSpout<Record<string, unknown>, Record<string, unknown>, NeededNext>;
19
- export {};
20
20
  //# sourceMappingURL=document.server.d.ts.map
@@ -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;AAE5C,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAA0B,MAAM,EAAE,MAAM,UAAU,CAAC;AAE1D,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,IAAI,CAAC,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,CA8E5E"}
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,EAA0B,KAAK,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEjE,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,OAAO,EAAE,KAAK,QAAQ,EAAE,CAAC;AAEzB,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,OAAO,EAAE;IAC7C,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,CA8E5E"}
@@ -63,4 +63,4 @@ function childrenAssets(chunk) {
63
63
  return (_c$assets = c.assets) != null ? _c$assets : [];
64
64
  })) : [];
65
65
  }
66
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsImJ1aWxkUG9saWN5Iiwiam9pbk5vbmNlIiwiRG9jdW1lbnQiLCJqc3giLCJfanN4IiwiRG9jdW1lbnRTcG91dCIsIm9wdGlvbnMiLCJuZXh0IiwicHJvcHMiLCJfcHJvcHMkY2xpZW50TWFuaWZlc3QiLCJfcHJvcHMkY2xpZW50TWFuaWZlc3QyIiwiX3Byb3BzJGNsaWVudE1hbmlmZXN0MyIsIl9wcm9wcyRjbGllbnRNYW5pZmVzdDQiLCJfcHJvcHMkY2xpZW50TWFuaWZlc3Q1IiwiX25leHRQcm9wcyR0aXRsZSIsIm5leHRQcm9wcyIsInB1YmxpY1BhdGgiLCJjbGllbnRNYW5pZmVzdCIsIk9iamVjdCIsImtleXMiLCJlbnRyeXBvaW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsIkVycm9yIiwiYXNzZXRNYXAiLCJhc3NldHMiLCJtYXAiLCJuYW1lIiwiYXNzZXRMaXN0IiwidmFsdWVzIiwiZm9yRWFjaCIsImVudHJ5cG9pbnQiLCJfZW50cnlwb2ludCRhc3NldHMiLCJwdXNoIiwiU2V0IiwibmFtZWRDaHVua0dyb3VwcyIsImZpbHRlciIsIm1hdGNoZWRSb3V0ZXMiLCJzb21lIiwicm91dGUiLCJfaW5jbHVkZXNJbnN0YW5jZVByb3BlcnR5IiwiY2FsbCIsImZsYXRNYXAiLCJjaHVuayIsIl9jaHVuayRhc3NldHMiLCJjaGlsZHJlbkFzc2V0cyIsImFzc2V0IiwiZW5kc1dpdGgiLCJocmVmIiwicmVsIiwiYXMiLCJjc1BvbGljeSIsImh0dHBFcXVpdiIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsInJlcyIsInNldEhlYWRlciIsIm5vbmNlIiwiYXBwIiwiZXh0cmFTdHlsZSIsInRpdGxlIiwicm9vdElkIiwic2NyaXB0cyIsImNoaWxkcmVuIiwicHJlbG9hZCIsImMiLCJfYyRhc3NldHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc3BvdXRzL2RvY3VtZW50LnNlcnZlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBSb3V0ZSB9IGZyb20gJ0BhbmFuc2kvcm91dGVyJztcbmltcG9ydCB7IFJlcXVlc3QgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBTdGF0c0NodW5rR3JvdXAgfSBmcm9tICd3ZWJwYWNrJztcblxuaW1wb3J0IHsgYnVpbGRQb2xpY3ksIGpvaW5Ob25jZSwgUG9saWN5IH0gZnJvbSAnLi9jc3AuanMnO1xuaW1wb3J0IERvY3VtZW50IGZyb20gJy4vRG9jdW1lbnRDb21wb25lbnQuanMnO1xuaW1wb3J0IHR5cGUgeyBTZXJ2ZXJTcG91dCB9IGZyb20gJy4vdHlwZXMuanMnO1xuXG50eXBlIE5lZWRlZE5leHQgPSB7XG4gIG1hdGNoZWRSb3V0ZXM6IFJvdXRlPGFueT5bXTtcbiAgdGl0bGU/OiBzdHJpbmc7XG4gIHNjcmlwdHM/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbiAgZXh0cmFTdHlsZT86IFJlYWN0LlJlYWN0Tm9kZVtdO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRG9jdW1lbnRTcG91dChvcHRpb25zOiB7XG4gIGhlYWQ/OiBSZWFjdC5SZWFjdE5vZGU7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGxhbmc/OiBzdHJpbmc7XG4gIHJvb3RJZD86IHN0cmluZztcbiAgY2hhclNldD86IHN0cmluZztcbiAgY3NQb2xpY3k/OiBQb2xpY3k7XG59KTogU2VydmVyU3BvdXQ8UmVjb3JkPHN0cmluZywgdW5rbm93bj4sIFJlY29yZDxzdHJpbmcsIHVua25vd24+LCBOZWVkZWROZXh0PiB7XG4gIHJldHVybiBuZXh0ID0+IGFzeW5jIHByb3BzID0+IHtcbiAgICBjb25zdCBuZXh0UHJvcHMgPSBhd2FpdCBuZXh0KHByb3BzKTtcblxuICAgIGNvbnN0IHB1YmxpY1BhdGggPSBwcm9wcy5jbGllbnRNYW5pZmVzdC5wdWJsaWNQYXRoO1xuXG4gICAgaWYgKFxuICAgICAgT2JqZWN0LmtleXMocHJvcHMuY2xpZW50TWFuaWZlc3Q/LmVudHJ5cG9pbnRzID8/IHt9KS5sZW5ndGggPCAxIHx8XG4gICAgICBwdWJsaWNQYXRoID09PSB1bmRlZmluZWRcbiAgICApXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ01hbmlmZXN0IG1pc3NpbmcgZW50cmllcyBuZWVkZWQnKTtcblxuICAgIC8vIFRPRE86IGNvbnNpZGVyIHVzaW5nIHRoaXMgcGFja2FnZSBmb3IgYnVpbGQgc3RhdHMgaW4gZnV0dXJlOlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mYWNlYm9vay9yZWFjdC90cmVlL21haW4vcGFja2FnZXMvcmVhY3Qtc2VydmVyLWRvbS13ZWJwYWNrXG4gICAgY29uc3QgYXNzZXRNYXAgPSAoYXNzZXRzOiB7IG5hbWU6IHN0cmluZzsgc2l6ZT86IG51bWJlciB9W10pID0+XG4gICAgICBhc3NldHMubWFwKCh7IG5hbWUgfSkgPT4gYCR7cHVibGljUGF0aH0ke25hbWV9YCk7XG5cbiAgICBjb25zdCBhc3NldExpc3Q6IHN0cmluZ1tdID0gW107XG4gICAgT2JqZWN0LnZhbHVlcyhwcm9wcy5jbGllbnRNYW5pZmVzdD8uZW50cnlwb2ludHMgPz8ge30pLmZvckVhY2goXG4gICAgICBlbnRyeXBvaW50ID0+IHtcbiAgICAgICAgYXNzZXRMaXN0LnB1c2goLi4uYXNzZXRNYXAoZW50cnlwb2ludC5hc3NldHMgPz8gW10pKTtcbiAgICAgIH0sXG4gICAgKTtcbiAgICBuZXcgU2V0KFxuICAgICAgYXNzZXRNYXAoXG4gICAgICAgIE9iamVjdC52YWx1ZXMocHJvcHMuY2xpZW50TWFuaWZlc3QubmFtZWRDaHVua0dyb3VwcyA/PyB7fSlcbiAgICAgICAgICAuZmlsdGVyKCh7IG5hbWUgfSkgPT5cbiAgICAgICAgICAgIG5leHRQcm9wcy5tYXRjaGVkUm91dGVzLnNvbWUocm91dGUgPT4gbmFtZT8uaW5jbHVkZXMocm91dGUubmFtZSkpLFxuICAgICAgICAgIClcbiAgICAgICAgICAuZmxhdE1hcChjaHVuayA9PiBbXG4gICAgICAgICAgICAuLi4oY2h1bmsuYXNzZXRzID8/IFtdKSxcbiAgICAgICAgICAgIC8vIGFueSBjaHVuayBwcmVsb2Fkc1xuICAgICAgICAgICAgLi4uY2hpbGRyZW5Bc3NldHMoY2h1bmspLFxuICAgICAgICAgIF0pLFxuICAgICAgKSxcbiAgICApLmZvckVhY2goYXNzZXQgPT4gYXNzZXRMaXN0LnB1c2goYXNzZXQpKTtcblxuICAgIC8vIGZpbmQgYWRkaXRpb25hbCBhc3NldHMgdG8gcHJlbG9hZCBiYXNlZCBvbiBtYXRjaGVkIHJvdXRlXG4gICAgY29uc3QgYXNzZXRzOiB7XG4gICAgICBocmVmOiBzdHJpbmc7XG4gICAgICBhcz86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICAgIHJlbD86IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgICB9W10gPSBhc3NldExpc3RcbiAgICAgIC5maWx0ZXIoYXNzZXQgPT4gIWFzc2V0LmVuZHNXaXRoKCcuaG90LXVwZGF0ZS5qcycpKVxuICAgICAgLm1hcChhc3NldCA9PlxuICAgICAgICBhc3NldC5lbmRzV2l0aCgnLmNzcycpID8geyBocmVmOiBhc3NldCwgcmVsOiAnc3R5bGVzaGVldCcgfVxuICAgICAgICA6IGFzc2V0LmVuZHNXaXRoKCcuanMnKSA/IHsgaHJlZjogYXNzZXQsIGFzOiAnc2NyaXB0JyB9XG4gICAgICAgIDogeyBocmVmOiBhc3NldCB9LFxuICAgICAgKTtcblxuICAgIGlmIChvcHRpb25zLmNzUG9saWN5KSB7XG4gICAgICBjb25zdCBodHRwRXF1aXYgPVxuICAgICAgICBwcm9jZXNzLmVudi5OT0RFX0VOViA9PT0gJ3Byb2R1Y3Rpb24nID9cbiAgICAgICAgICAnQ29udGVudC1TZWN1cml0eS1Qb2xpY3knXG4gICAgICAgIDogJ0NvbnRlbnQtU2VjdXJpdHktUG9saWN5LVJlcG9ydC1Pbmx5JztcblxuICAgICAgcHJvcHMucmVzLnNldEhlYWRlcihcbiAgICAgICAgaHR0cEVxdWl2LFxuICAgICAgICBidWlsZFBvbGljeShqb2luTm9uY2Uob3B0aW9ucy5jc1BvbGljeSwgcHJvcHMubm9uY2UpKSxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLm5leHRQcm9wcyxcbiAgICAgIGFwcDogKFxuICAgICAgICA8RG9jdW1lbnRcbiAgICAgICAgICB7Li4ub3B0aW9uc31cbiAgICAgICAgICBleHRyYVN0eWxlPXtuZXh0UHJvcHMuZXh0cmFTdHlsZX1cbiAgICAgICAgICB0aXRsZT17bmV4dFByb3BzLnRpdGxlID8/IG9wdGlvbnMudGl0bGV9XG4gICAgICAgICAgYXNzZXRzPXthc3NldHN9XG4gICAgICAgICAgcm9vdElkPXtvcHRpb25zLnJvb3RJZH1cbiAgICAgICAgICBzY3JpcHRzPXtuZXh0UHJvcHMuc2NyaXB0c31cbiAgICAgICAgPlxuICAgICAgICAgIHtuZXh0UHJvcHMuYXBwfVxuICAgICAgICA8L0RvY3VtZW50PlxuICAgICAgKSxcbiAgICB9O1xuICB9O1xufVxuXG5mdW5jdGlvbiBjaGlsZHJlbkFzc2V0cyhjaHVuazogU3RhdHNDaHVua0dyb3VwKSB7XG4gIHJldHVybiBjaHVuay5jaGlsZHJlbiA/XG4gICAgICBPYmplY3QudmFsdWVzKGNodW5rLmNoaWxkcmVuKS5mbGF0TWFwKHByZWxvYWQgPT5cbiAgICAgICAgcHJlbG9hZC5mbGF0TWFwKGMgPT4gYy5hc3NldHMgPz8gW10pLFxuICAgICAgKVxuICAgIDogW107XG59XG4iXSwibWFwcGluZ3MiOiI7QUFFQSxPQUFPQSxLQUFLLE1BQU0sT0FBTztBQUd6QixTQUFTQyxXQUFXLEVBQUVDLFNBQVMsUUFBZ0IsVUFBVTtBQUN6RCxPQUFPQyxRQUFRLE1BQU0sd0JBQXdCO0FBQUMsU0FBQUMsR0FBQSxJQUFBQyxJQUFBO0FBVTlDLGVBQWUsU0FBU0MsYUFBYUEsQ0FBQ0MsT0FPckMsRUFBNkU7RUFDNUUsT0FBT0MsSUFBSSxJQUFJLE1BQU1DLEtBQUssSUFBSTtJQUFBLElBQUFDLHFCQUFBLEVBQUFDLHNCQUFBLEVBQUFDLHNCQUFBLEVBQUFDLHNCQUFBLEVBQUFDLHNCQUFBLEVBQUFDLGdCQUFBO0lBQzVCLE1BQU1DLFNBQVMsR0FBRyxNQUFNUixJQUFJLENBQUNDLEtBQUssQ0FBQztJQUVuQyxNQUFNUSxVQUFVLEdBQUdSLEtBQUssQ0FBQ1MsY0FBYyxDQUFDRCxVQUFVO0lBRWxELElBQ0VFLE1BQU0sQ0FBQ0MsSUFBSSxFQUFBVixxQkFBQSxJQUFBQyxzQkFBQSxHQUFDRixLQUFLLENBQUNTLGNBQWMscUJBQXBCUCxzQkFBQSxDQUFzQlUsV0FBVyxZQUFBWCxxQkFBQSxHQUFJLENBQUMsQ0FBQyxDQUFDLENBQUNZLE1BQU0sR0FBRyxDQUFDLElBQy9ETCxVQUFVLEtBQUtNLFNBQVMsRUFFeEIsTUFBTSxJQUFJQyxLQUFLLENBQUMsaUNBQWlDLENBQUM7O0lBRXBEO0lBQ0E7SUFDQSxNQUFNQyxRQUFRLEdBQUlDLE1BQXlDLElBQ3pEQSxNQUFNLENBQUNDLEdBQUcsQ0FBQyxDQUFDO01BQUVDO0lBQUssQ0FBQyxLQUFLLEdBQUdYLFVBQVUsR0FBR1csSUFBSSxFQUFFLENBQUM7SUFFbEQsTUFBTUMsU0FBbUIsR0FBRyxFQUFFO0lBQzlCVixNQUFNLENBQUNXLE1BQU0sRUFBQWxCLHNCQUFBLElBQUFDLHNCQUFBLEdBQUNKLEtBQUssQ0FBQ1MsY0FBYyxxQkFBcEJMLHNCQUFBLENBQXNCUSxXQUFXLFlBQUFULHNCQUFBLEdBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQ21CLE9BQU8sQ0FDNURDLFVBQVUsSUFBSTtNQUFBLElBQUFDLGtCQUFBO01BQ1pKLFNBQVMsQ0FBQ0ssSUFBSSxDQUFDLEdBQUdULFFBQVEsRUFBQVEsa0JBQUEsR0FBQ0QsVUFBVSxDQUFDTixNQUFNLFlBQUFPLGtCQUFBLEdBQUksRUFBRSxDQUFDLENBQUM7SUFDdEQsQ0FDRixDQUFDO0lBQ0QsSUFBSUUsR0FBRyxDQUNMVixRQUFRLENBQ05OLE1BQU0sQ0FBQ1csTUFBTSxFQUFBaEIsc0JBQUEsR0FBQ0wsS0FBSyxDQUFDUyxjQUFjLENBQUNrQixnQkFBZ0IsWUFBQXRCLHNCQUFBLEdBQUksQ0FBQyxDQUFDLENBQUMsQ0FDdkR1QixNQUFNLENBQUMsQ0FBQztNQUFFVDtJQUFLLENBQUMsS0FDZlosU0FBUyxDQUFDc0IsYUFBYSxDQUFDQyxJQUFJLENBQUNDLEtBQUssSUFBSVosSUFBSSxvQkFBSmEseUJBQUEsQ0FBQWIsSUFBSSxFQUFBYyxJQUFBLENBQUpkLElBQUksRUFBV1ksS0FBSyxDQUFDWixJQUFJLENBQUMsQ0FDbEUsQ0FBQyxDQUNBZSxPQUFPLENBQUNDLEtBQUs7TUFBQSxJQUFBQyxhQUFBO01BQUEsT0FBSSxDQUNoQixLQUFBQSxhQUFBLEdBQUlELEtBQUssQ0FBQ2xCLE1BQU0sWUFBQW1CLGFBQUEsR0FBSSxFQUFFLENBQUM7TUFDdkI7TUFDQSxHQUFHQyxjQUFjLENBQUNGLEtBQUssQ0FBQyxDQUN6QjtJQUFBLEVBQ0wsQ0FDRixDQUFDLENBQUNiLE9BQU8sQ0FBQ2dCLEtBQUssSUFBSWxCLFNBQVMsQ0FBQ0ssSUFBSSxDQUFDYSxLQUFLLENBQUMsQ0FBQzs7SUFFekM7SUFDQSxNQUFNckIsTUFJSCxHQUFHRyxTQUFTLENBQ1pRLE1BQU0sQ0FBQ1UsS0FBSyxJQUFJLENBQUNBLEtBQUssQ0FBQ0MsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FDbERyQixHQUFHLENBQUNvQixLQUFLLElBQ1JBLEtBQUssQ0FBQ0MsUUFBUSxDQUFDLE1BQU0sQ0FBQyxHQUFHO01BQUVDLElBQUksRUFBRUYsS0FBSztNQUFFRyxHQUFHLEVBQUU7SUFBYSxDQUFDLEdBQ3pESCxLQUFLLENBQUNDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRztNQUFFQyxJQUFJLEVBQUVGLEtBQUs7TUFBRUksRUFBRSxFQUFFO0lBQVMsQ0FBQyxHQUNyRDtNQUFFRixJQUFJLEVBQUVGO0lBQU0sQ0FDbEIsQ0FBQztJQUVILElBQUl4QyxPQUFPLENBQUM2QyxRQUFRLEVBQUU7TUFDcEIsTUFBTUMsU0FBUyxHQUNiQyxPQUFPLENBQUNDLEdBQUcsQ0FBQ0MsUUFBUSxLQUFLLFlBQVksR0FDbkMseUJBQXlCLEdBQ3pCLHFDQUFxQztNQUV6Qy9DLEtBQUssQ0FBQ2dELEdBQUcsQ0FBQ0MsU0FBUyxDQUNqQkwsU0FBUyxFQUNUcEQsV0FBVyxDQUFDQyxTQUFTLENBQUNLLE9BQU8sQ0FBQzZDLFFBQVEsRUFBRTNDLEtBQUssQ0FBQ2tELEtBQUssQ0FBQyxDQUN0RCxDQUFDO0lBQ0g7SUFFQSxPQUFPO01BQ0wsR0FBRzNDLFNBQVM7TUFDWjRDLEdBQUcsZUFDRHZELElBQUEsQ0FBQ0YsUUFBUTtRQUFBLEdBQ0hJLE9BQU87UUFDWHNELFVBQVUsRUFBRTdDLFNBQVMsQ0FBQzZDLFVBQVc7UUFDakNDLEtBQUssR0FBQS9DLGdCQUFBLEdBQUVDLFNBQVMsQ0FBQzhDLEtBQUssWUFBQS9DLGdCQUFBLEdBQUlSLE9BQU8sQ0FBQ3VELEtBQU07UUFDeENwQyxNQUFNLEVBQUVBLE1BQU87UUFDZnFDLE1BQU0sRUFBRXhELE9BQU8sQ0FBQ3dELE1BQU87UUFDdkJDLE9BQU8sRUFBRWhELFNBQVMsQ0FBQ2dELE9BQVE7UUFBQUMsUUFBQSxFQUUxQmpELFNBQVMsQ0FBQzRDO01BQUcsQ0FDTjtJQUVkLENBQUM7RUFDSCxDQUFDO0FBQ0g7QUFFQSxTQUFTZCxjQUFjQSxDQUFDRixLQUFzQixFQUFFO0VBQzlDLE9BQU9BLEtBQUssQ0FBQ3FCLFFBQVEsR0FDakI5QyxNQUFNLENBQUNXLE1BQU0sQ0FBQ2MsS0FBSyxDQUFDcUIsUUFBUSxDQUFDLENBQUN0QixPQUFPLENBQUN1QixPQUFPLElBQzNDQSxPQUFPLENBQUN2QixPQUFPLENBQUN3QixDQUFDO0lBQUEsSUFBQUMsU0FBQTtJQUFBLFFBQUFBLFNBQUEsR0FBSUQsQ0FBQyxDQUFDekMsTUFBTSxZQUFBMEMsU0FBQSxHQUFJLEVBQUU7RUFBQSxFQUNyQyxDQUFDLEdBQ0QsRUFBRTtBQUNSIiwiaWdub3JlTGlzdCI6W119
66
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsImJ1aWxkUG9saWN5Iiwiam9pbk5vbmNlIiwiRG9jdW1lbnQiLCJqc3giLCJfanN4IiwiRG9jdW1lbnRTcG91dCIsIm9wdGlvbnMiLCJuZXh0IiwicHJvcHMiLCJfcHJvcHMkY2xpZW50TWFuaWZlc3QiLCJfcHJvcHMkY2xpZW50TWFuaWZlc3QyIiwiX3Byb3BzJGNsaWVudE1hbmlmZXN0MyIsIl9wcm9wcyRjbGllbnRNYW5pZmVzdDQiLCJfcHJvcHMkY2xpZW50TWFuaWZlc3Q1IiwiX25leHRQcm9wcyR0aXRsZSIsIm5leHRQcm9wcyIsInB1YmxpY1BhdGgiLCJjbGllbnRNYW5pZmVzdCIsIk9iamVjdCIsImtleXMiLCJlbnRyeXBvaW50cyIsImxlbmd0aCIsInVuZGVmaW5lZCIsIkVycm9yIiwiYXNzZXRNYXAiLCJhc3NldHMiLCJtYXAiLCJuYW1lIiwiYXNzZXRMaXN0IiwidmFsdWVzIiwiZm9yRWFjaCIsImVudHJ5cG9pbnQiLCJfZW50cnlwb2ludCRhc3NldHMiLCJwdXNoIiwiU2V0IiwibmFtZWRDaHVua0dyb3VwcyIsImZpbHRlciIsIm1hdGNoZWRSb3V0ZXMiLCJzb21lIiwicm91dGUiLCJfaW5jbHVkZXNJbnN0YW5jZVByb3BlcnR5IiwiY2FsbCIsImZsYXRNYXAiLCJjaHVuayIsIl9jaHVuayRhc3NldHMiLCJjaGlsZHJlbkFzc2V0cyIsImFzc2V0IiwiZW5kc1dpdGgiLCJocmVmIiwicmVsIiwiYXMiLCJjc1BvbGljeSIsImh0dHBFcXVpdiIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsInJlcyIsInNldEhlYWRlciIsIm5vbmNlIiwiYXBwIiwiZXh0cmFTdHlsZSIsInRpdGxlIiwicm9vdElkIiwic2NyaXB0cyIsImNoaWxkcmVuIiwicHJlbG9hZCIsImMiLCJfYyRhc3NldHMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvc3BvdXRzL2RvY3VtZW50LnNlcnZlci50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBSb3V0ZSB9IGZyb20gJ0BhbmFuc2kvcm91dGVyJztcbmltcG9ydCB7IFJlcXVlc3QgfSBmcm9tICdleHByZXNzJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBTdGF0c0NodW5rR3JvdXAgfSBmcm9tICd3ZWJwYWNrJztcblxuaW1wb3J0IHsgYnVpbGRQb2xpY3ksIGpvaW5Ob25jZSwgdHlwZSBDU1BvbGljeSB9IGZyb20gJy4vY3NwLmpzJztcbmltcG9ydCBEb2N1bWVudCBmcm9tICcuL0RvY3VtZW50Q29tcG9uZW50LmpzJztcbmltcG9ydCB0eXBlIHsgU2VydmVyU3BvdXQgfSBmcm9tICcuL3R5cGVzLmpzJztcblxudHlwZSBOZWVkZWROZXh0ID0ge1xuICBtYXRjaGVkUm91dGVzOiBSb3V0ZTxhbnk+W107XG4gIHRpdGxlPzogc3RyaW5nO1xuICBzY3JpcHRzPzogUmVhY3QuUmVhY3ROb2RlW107XG4gIGV4dHJhU3R5bGU/OiBSZWFjdC5SZWFjdE5vZGVbXTtcbn07XG5cbmV4cG9ydCB7IHR5cGUgQ1NQb2xpY3kgfTtcblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRG9jdW1lbnRTcG91dChvcHRpb25zOiB7XG4gIGhlYWQ/OiBSZWFjdC5SZWFjdE5vZGU7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGxhbmc/OiBzdHJpbmc7XG4gIHJvb3RJZD86IHN0cmluZztcbiAgY2hhclNldD86IHN0cmluZztcbiAgY3NQb2xpY3k/OiBDU1BvbGljeTtcbn0pOiBTZXJ2ZXJTcG91dDxSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sIE5lZWRlZE5leHQ+IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IG5leHRQcm9wcyA9IGF3YWl0IG5leHQocHJvcHMpO1xuXG4gICAgY29uc3QgcHVibGljUGF0aCA9IHByb3BzLmNsaWVudE1hbmlmZXN0LnB1YmxpY1BhdGg7XG5cbiAgICBpZiAoXG4gICAgICBPYmplY3Qua2V5cyhwcm9wcy5jbGllbnRNYW5pZmVzdD8uZW50cnlwb2ludHMgPz8ge30pLmxlbmd0aCA8IDEgfHxcbiAgICAgIHB1YmxpY1BhdGggPT09IHVuZGVmaW5lZFxuICAgIClcbiAgICAgIHRocm93IG5ldyBFcnJvcignTWFuaWZlc3QgbWlzc2luZyBlbnRyaWVzIG5lZWRlZCcpO1xuXG4gICAgLy8gVE9ETzogY29uc2lkZXIgdXNpbmcgdGhpcyBwYWNrYWdlIGZvciBidWlsZCBzdGF0cyBpbiBmdXR1cmU6XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZhY2Vib29rL3JlYWN0L3RyZWUvbWFpbi9wYWNrYWdlcy9yZWFjdC1zZXJ2ZXItZG9tLXdlYnBhY2tcbiAgICBjb25zdCBhc3NldE1hcCA9IChhc3NldHM6IHsgbmFtZTogc3RyaW5nOyBzaXplPzogbnVtYmVyIH1bXSkgPT5cbiAgICAgIGFzc2V0cy5tYXAoKHsgbmFtZSB9KSA9PiBgJHtwdWJsaWNQYXRofSR7bmFtZX1gKTtcblxuICAgIGNvbnN0IGFzc2V0TGlzdDogc3RyaW5nW10gPSBbXTtcbiAgICBPYmplY3QudmFsdWVzKHByb3BzLmNsaWVudE1hbmlmZXN0Py5lbnRyeXBvaW50cyA/PyB7fSkuZm9yRWFjaChcbiAgICAgIGVudHJ5cG9pbnQgPT4ge1xuICAgICAgICBhc3NldExpc3QucHVzaCguLi5hc3NldE1hcChlbnRyeXBvaW50LmFzc2V0cyA/PyBbXSkpO1xuICAgICAgfSxcbiAgICApO1xuICAgIG5ldyBTZXQoXG4gICAgICBhc3NldE1hcChcbiAgICAgICAgT2JqZWN0LnZhbHVlcyhwcm9wcy5jbGllbnRNYW5pZmVzdC5uYW1lZENodW5rR3JvdXBzID8/IHt9KVxuICAgICAgICAgIC5maWx0ZXIoKHsgbmFtZSB9KSA9PlxuICAgICAgICAgICAgbmV4dFByb3BzLm1hdGNoZWRSb3V0ZXMuc29tZShyb3V0ZSA9PiBuYW1lPy5pbmNsdWRlcyhyb3V0ZS5uYW1lKSksXG4gICAgICAgICAgKVxuICAgICAgICAgIC5mbGF0TWFwKGNodW5rID0+IFtcbiAgICAgICAgICAgIC4uLihjaHVuay5hc3NldHMgPz8gW10pLFxuICAgICAgICAgICAgLy8gYW55IGNodW5rIHByZWxvYWRzXG4gICAgICAgICAgICAuLi5jaGlsZHJlbkFzc2V0cyhjaHVuayksXG4gICAgICAgICAgXSksXG4gICAgICApLFxuICAgICkuZm9yRWFjaChhc3NldCA9PiBhc3NldExpc3QucHVzaChhc3NldCkpO1xuXG4gICAgLy8gZmluZCBhZGRpdGlvbmFsIGFzc2V0cyB0byBwcmVsb2FkIGJhc2VkIG9uIG1hdGNoZWQgcm91dGVcbiAgICBjb25zdCBhc3NldHM6IHtcbiAgICAgIGhyZWY6IHN0cmluZztcbiAgICAgIGFzPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgICAgcmVsPzogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIH1bXSA9IGFzc2V0TGlzdFxuICAgICAgLmZpbHRlcihhc3NldCA9PiAhYXNzZXQuZW5kc1dpdGgoJy5ob3QtdXBkYXRlLmpzJykpXG4gICAgICAubWFwKGFzc2V0ID0+XG4gICAgICAgIGFzc2V0LmVuZHNXaXRoKCcuY3NzJykgPyB7IGhyZWY6IGFzc2V0LCByZWw6ICdzdHlsZXNoZWV0JyB9XG4gICAgICAgIDogYXNzZXQuZW5kc1dpdGgoJy5qcycpID8geyBocmVmOiBhc3NldCwgYXM6ICdzY3JpcHQnIH1cbiAgICAgICAgOiB7IGhyZWY6IGFzc2V0IH0sXG4gICAgICApO1xuXG4gICAgaWYgKG9wdGlvbnMuY3NQb2xpY3kpIHtcbiAgICAgIGNvbnN0IGh0dHBFcXVpdiA9XG4gICAgICAgIHByb2Nlc3MuZW52Lk5PREVfRU5WID09PSAncHJvZHVjdGlvbicgP1xuICAgICAgICAgICdDb250ZW50LVNlY3VyaXR5LVBvbGljeSdcbiAgICAgICAgOiAnQ29udGVudC1TZWN1cml0eS1Qb2xpY3ktUmVwb3J0LU9ubHknO1xuXG4gICAgICBwcm9wcy5yZXMuc2V0SGVhZGVyKFxuICAgICAgICBodHRwRXF1aXYsXG4gICAgICAgIGJ1aWxkUG9saWN5KGpvaW5Ob25jZShvcHRpb25zLmNzUG9saWN5LCBwcm9wcy5ub25jZSkpLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4ubmV4dFByb3BzLFxuICAgICAgYXBwOiAoXG4gICAgICAgIDxEb2N1bWVudFxuICAgICAgICAgIHsuLi5vcHRpb25zfVxuICAgICAgICAgIGV4dHJhU3R5bGU9e25leHRQcm9wcy5leHRyYVN0eWxlfVxuICAgICAgICAgIHRpdGxlPXtuZXh0UHJvcHMudGl0bGUgPz8gb3B0aW9ucy50aXRsZX1cbiAgICAgICAgICBhc3NldHM9e2Fzc2V0c31cbiAgICAgICAgICByb290SWQ9e29wdGlvbnMucm9vdElkfVxuICAgICAgICAgIHNjcmlwdHM9e25leHRQcm9wcy5zY3JpcHRzfVxuICAgICAgICA+XG4gICAgICAgICAge25leHRQcm9wcy5hcHB9XG4gICAgICAgIDwvRG9jdW1lbnQ+XG4gICAgICApLFxuICAgIH07XG4gIH07XG59XG5cbmZ1bmN0aW9uIGNoaWxkcmVuQXNzZXRzKGNodW5rOiBTdGF0c0NodW5rR3JvdXApIHtcbiAgcmV0dXJuIGNodW5rLmNoaWxkcmVuID9cbiAgICAgIE9iamVjdC52YWx1ZXMoY2h1bmsuY2hpbGRyZW4pLmZsYXRNYXAocHJlbG9hZCA9PlxuICAgICAgICBwcmVsb2FkLmZsYXRNYXAoYyA9PiBjLmFzc2V0cyA/PyBbXSksXG4gICAgICApXG4gICAgOiBbXTtcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUVBLE9BQU9BLEtBQUssTUFBTSxPQUFPO0FBR3pCLFNBQVNDLFdBQVcsRUFBRUMsU0FBUyxRQUF1QixVQUFVO0FBQ2hFLE9BQU9DLFFBQVEsTUFBTSx3QkFBd0I7QUFBQyxTQUFBQyxHQUFBLElBQUFDLElBQUE7QUFZOUMsZUFBZSxTQUFTQyxhQUFhQSxDQUFDQyxPQU9yQyxFQUE2RTtFQUM1RSxPQUFPQyxJQUFJLElBQUksTUFBTUMsS0FBSyxJQUFJO0lBQUEsSUFBQUMscUJBQUEsRUFBQUMsc0JBQUEsRUFB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
@@ -29,6 +29,13 @@ function getDataFromEl(el, key) {
29
29
  if (el.text === undefined) {
30
30
  console.error(`#${key} is completely empty. This could be due to CSP issues.`);
31
31
  }
32
- return el != null && el.text ? JSON.parse(el == null ? void 0 : el.text) : undefined;
32
+ if (!(el != null && el.text)) return undefined;
33
+ try {
34
+ return JSON.parse(el.text);
35
+ } catch (error) {
36
+ console.error(`Failed to parse JSON for #${key}:`, error);
37
+ console.error('Text content:', el.text);
38
+ return undefined;
39
+ }
33
40
  }
34
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJKU09OU3BvdXQiLCJpZCIsIm5leHQiLCJwcm9wcyIsImdldEluaXRpYWxEYXRhIiwia2V5IiwiZ2xvYmFsSWQiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsImVsIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsImdldERhdGFGcm9tRWwiLCJhZGRFdmVudExpc3RlbmVyIiwiRXJyb3IiLCJ0ZXh0IiwidW5kZWZpbmVkIiwiY29uc29sZSIsImVycm9yIiwiSlNPTiIsInBhcnNlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Nwb3V0cy9qc29uLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENsaWVudFNwb3V0IH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEpTT05TcG91dCh7XG4gIGlkID0gJ2FuYW5zaS1qc29uJyxcbn06IHsgaWQ/OiBzdHJpbmcgfSA9IHt9KTogQ2xpZW50U3BvdXQ8XG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICB7IGdldEluaXRpYWxEYXRhOiAoa2V5OiBzdHJpbmcpID0+IFByb21pc2U8YW55PiB9XG4+IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IGdldEluaXRpYWxEYXRhID0gKGtleTogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBnbG9iYWxJZCA9IGAke2lkfS4ke2tleX1gO1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPGFueT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICBsZXQgZWw6IEhUTUxTY3JpcHRFbGVtZW50IHwgbnVsbDtcbiAgICAgICAgaWYgKChlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGdsb2JhbElkKSBhcyBhbnkpKSB7XG4gICAgICAgICAgcmVzb2x2ZShnZXREYXRhRnJvbUVsKGVsLCBnbG9iYWxJZCkpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgKCkgPT4ge1xuICAgICAgICAgIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZ2xvYmFsSWQpIGFzIGFueTtcbiAgICAgICAgICBpZiAoZWwpIHJlc29sdmUoZ2V0RGF0YUZyb21FbChlbCwgZ2xvYmFsSWQpKTtcbiAgICAgICAgICBlbHNlIHJlamVjdChuZXcgRXJyb3IoYGZhaWxlZCB0byBmaW5kIERPTSB3aXRoICR7a2V5fSBzdGF0ZWApKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9O1xuICAgIHJldHVybiB7IC4uLihhd2FpdCBuZXh0KHsgLi4ucHJvcHMsIGdldEluaXRpYWxEYXRhIH0pKSwgZ2V0SW5pdGlhbERhdGEgfTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0RGF0YUZyb21FbChlbDogSFRNTFNjcmlwdEVsZW1lbnQsIGtleTogc3RyaW5nKSB7XG4gIGlmIChlbC50ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgYCMke2tleX0gaXMgY29tcGxldGVseSBlbXB0eS4gVGhpcyBjb3VsZCBiZSBkdWUgdG8gQ1NQIGlzc3Vlcy5gLFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIGVsPy50ZXh0ID8gSlNPTi5wYXJzZShlbD8udGV4dCkgOiB1bmRlZmluZWQ7XG59XG4iXSwibWFwcGluZ3MiOiJBQUVBLGVBQWUsU0FBU0EsU0FBU0EsQ0FBQztFQUNoQ0MsRUFBRSxHQUFHO0FBQ1UsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUdyQjtFQUNBLE9BQU9DLElBQUksSUFBSSxNQUFNQyxLQUFLLElBQUk7SUFDNUIsTUFBTUMsY0FBYyxHQUFJQyxHQUFXLElBQUs7TUFDdEMsTUFBTUMsUUFBUSxHQUFHLEdBQUdMLEVBQUUsSUFBSUksR0FBRyxFQUFFO01BQy9CLE9BQU8sSUFBSUUsT0FBTyxDQUFNLENBQUNDLE9BQU8sRUFBRUMsTUFBTSxLQUFLO1FBQzNDLElBQUlDLEVBQTRCO1FBQ2hDLElBQUtBLEVBQUUsR0FBR0MsUUFBUSxDQUFDQyxjQUFjLENBQUNOLFFBQVEsQ0FBUSxFQUFHO1VBQ25ERSxPQUFPLENBQUNLLGFBQWEsQ0FBQ0gsRUFBRSxFQUFFSixRQUFRLENBQUMsQ0FBQztVQUNwQztRQUNGO1FBQ0FLLFFBQVEsQ0FBQ0csZ0JBQWdCLENBQUMsa0JBQWtCLEVBQUUsTUFBTTtVQUNsREosRUFBRSxHQUFHQyxRQUFRLENBQUNDLGNBQWMsQ0FBQ04sUUFBUSxDQUFRO1VBQzdDLElBQUlJLEVBQUUsRUFBRUYsT0FBTyxDQUFDSyxhQUFhLENBQUNILEVBQUUsRUFBRUosUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUN4Q0csTUFBTSxDQUFDLElBQUlNLEtBQUssQ0FBQywyQkFBMkJWLEdBQUcsUUFBUSxDQUFDLENBQUM7UUFDaEUsQ0FBQyxDQUFDO01BQ0osQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUNELE9BQU87TUFBRSxJQUFJLE1BQU1ILElBQUksQ0FBQztRQUFFLEdBQUdDLEtBQUs7UUFBRUM7TUFBZSxDQUFDLENBQUMsQ0FBQztNQUFFQTtJQUFlLENBQUM7RUFDMUUsQ0FBQztBQUNIO0FBRUEsU0FBU1MsYUFBYUEsQ0FBQ0gsRUFBcUIsRUFBRUwsR0FBVyxFQUFFO0VBQ3pELElBQUlLLEVBQUUsQ0FBQ00sSUFBSSxLQUFLQyxTQUFTLEVBQUU7SUFDekJDLE9BQU8sQ0FBQ0MsS0FBSyxDQUNYLElBQUlkLEdBQUcsd0RBQ1QsQ0FBQztFQUNIO0VBQ0EsT0FBT0ssRUFBRSxZQUFGQSxFQUFFLENBQUVNLElBQUksR0FBR0ksSUFBSSxDQUFDQyxLQUFLLENBQUNYLEVBQUUsb0JBQUZBLEVBQUUsQ0FBRU0sSUFBSSxDQUFDLEdBQUdDLFNBQVM7QUFDcEQiLCJpZ25vcmVMaXN0IjpbXX0=
41
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJKU09OU3BvdXQiLCJpZCIsIm5leHQiLCJwcm9wcyIsImdldEluaXRpYWxEYXRhIiwia2V5IiwiZ2xvYmFsSWQiLCJQcm9taXNlIiwicmVzb2x2ZSIsInJlamVjdCIsImVsIiwiZG9jdW1lbnQiLCJnZXRFbGVtZW50QnlJZCIsImdldERhdGFGcm9tRWwiLCJhZGRFdmVudExpc3RlbmVyIiwiRXJyb3IiLCJ0ZXh0IiwidW5kZWZpbmVkIiwiY29uc29sZSIsImVycm9yIiwiSlNPTiIsInBhcnNlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Nwb3V0cy9qc29uLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IENsaWVudFNwb3V0IH0gZnJvbSAnLi90eXBlcy5qcyc7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIEpTT05TcG91dCh7XG4gIGlkID0gJ2FuYW5zaS1qc29uJyxcbn06IHsgaWQ/OiBzdHJpbmcgfSA9IHt9KTogQ2xpZW50U3BvdXQ8XG4gIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICB7IGdldEluaXRpYWxEYXRhOiAoa2V5OiBzdHJpbmcpID0+IFByb21pc2U8YW55PiB9XG4+IHtcbiAgcmV0dXJuIG5leHQgPT4gYXN5bmMgcHJvcHMgPT4ge1xuICAgIGNvbnN0IGdldEluaXRpYWxEYXRhID0gKGtleTogc3RyaW5nKSA9PiB7XG4gICAgICBjb25zdCBnbG9iYWxJZCA9IGAke2lkfS4ke2tleX1gO1xuICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPGFueT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuICAgICAgICBsZXQgZWw6IEhUTUxTY3JpcHRFbGVtZW50IHwgbnVsbDtcbiAgICAgICAgaWYgKChlbCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGdsb2JhbElkKSBhcyBhbnkpKSB7XG4gICAgICAgICAgcmVzb2x2ZShnZXREYXRhRnJvbUVsKGVsLCBnbG9iYWxJZCkpO1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCdET01Db250ZW50TG9hZGVkJywgKCkgPT4ge1xuICAgICAgICAgIGVsID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoZ2xvYmFsSWQpIGFzIGFueTtcbiAgICAgICAgICBpZiAoZWwpIHJlc29sdmUoZ2V0RGF0YUZyb21FbChlbCwgZ2xvYmFsSWQpKTtcbiAgICAgICAgICBlbHNlIHJlamVjdChuZXcgRXJyb3IoYGZhaWxlZCB0byBmaW5kIERPTSB3aXRoICR7a2V5fSBzdGF0ZWApKTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9O1xuICAgIHJldHVybiB7IC4uLihhd2FpdCBuZXh0KHsgLi4ucHJvcHMsIGdldEluaXRpYWxEYXRhIH0pKSwgZ2V0SW5pdGlhbERhdGEgfTtcbiAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0RGF0YUZyb21FbChlbDogSFRNTFNjcmlwdEVsZW1lbnQsIGtleTogc3RyaW5nKSB7XG4gIGlmIChlbC50ZXh0ID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgYCMke2tleX0gaXMgY29tcGxldGVseSBlbXB0eS4gVGhpcyBjb3VsZCBiZSBkdWUgdG8gQ1NQIGlzc3Vlcy5gLFxuICAgICk7XG4gIH1cbiAgaWYgKCFlbD8udGV4dCkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgdHJ5IHtcbiAgICByZXR1cm4gSlNPTi5wYXJzZShlbC50ZXh0KTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICBjb25zb2xlLmVycm9yKGBGYWlsZWQgdG8gcGFyc2UgSlNPTiBmb3IgIyR7a2V5fTpgLCBlcnJvcik7XG4gICAgY29uc29sZS5lcnJvcignVGV4dCBjb250ZW50OicsIGVsLnRleHQpO1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbn1cbiJdLCJtYXBwaW5ncyI6IkFBRUEsZUFBZSxTQUFTQSxTQUFTQSxDQUFDO0VBQ2hDQyxFQUFFLEdBQUc7QUFDVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBR3JCO0VBQ0EsT0FBT0MsSUFBSSxJQUFJLE1BQU1DLEtBQUssSUFBSTtJQUM1QixNQUFNQyxjQUFjLEdBQUlDLEdBQVcsSUFBSztNQUN0QyxNQUFNQyxRQUFRLEdBQUcsR0FBR0wsRUFBRSxJQUFJSSxHQUFHLEVBQUU7TUFDL0IsT0FBTyxJQUFJRSxPQUFPLENBQU0sQ0FBQ0MsT0FBTyxFQUFFQyxNQUFNLEtBQUs7UUFDM0MsSUFBSUMsRUFBNEI7UUFDaEMsSUFBS0EsRUFBRSxHQUFHQyxRQUFRLENBQUNDLGNBQWMsQ0FBQ04sUUFBUSxDQUFRLEVBQUc7VUFDbkRFLE9BQU8sQ0FBQ0ssYUFBYSxDQUFDSCxFQUFFLEVBQUVKLFFBQVEsQ0FBQyxDQUFDO1VBQ3BDO1FBQ0Y7UUFDQUssUUFBUSxDQUFDRyxnQkFBZ0IsQ0FBQyxrQkFBa0IsRUFBRSxNQUFNO1VBQ2xESixFQUFFLEdBQUdDLFFBQVEsQ0FBQ0MsY0FBYyxDQUFDTixRQUFRLENBQVE7VUFDN0MsSUFBSUksRUFBRSxFQUFFRixPQUFPLENBQUNLLGFBQWEsQ0FBQ0gsRUFBRSxFQUFFSixRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQ3hDRyxNQUFNLENBQUMsSUFBSU0sS0FBSyxDQUFDLDJCQUEyQlYsR0FBRyxRQUFRLENBQUMsQ0FBQztRQUNoRSxDQUFDLENBQUM7TUFDSixDQUFDLENBQUM7SUFDSixDQUFDO0lBQ0QsT0FBTztNQUFFLElBQUksTUFBTUgsSUFBSSxDQUFDO1FBQUUsR0FBR0MsS0FBSztRQUFFQztNQUFlLENBQUMsQ0FBQyxDQUFDO01BQUVBO0lBQWUsQ0FBQztFQUMxRSxDQUFDO0FBQ0g7QUFFQSxTQUFTUyxhQUFhQSxDQUFDSCxFQUFxQixFQUFFTCxHQUFXLEVBQUU7RUFDekQsSUFBSUssRUFBRSxDQUFDTSxJQUFJLEtBQUtDLFNBQVMsRUFBRTtJQUN6QkMsT0FBTyxDQUFDQyxLQUFLLENBQ1gsSUFBSWQsR0FBRyx3REFDVCxDQUFDO0VBQ0g7RUFDQSxJQUFJLEVBQUNLLEVBQUUsWUFBRkEsRUFBRSxDQUFFTSxJQUFJLEdBQUUsT0FBT0MsU0FBUztFQUMvQixJQUFJO0lBQ0YsT0FBT0csSUFBSSxDQUFDQyxLQUFLLENBQUNYLEVBQUUsQ0FBQ00sSUFBSSxDQUFDO0VBQzVCLENBQUMsQ0FBQyxPQUFPRyxLQUFLLEVBQUU7SUFDZEQsT0FBTyxDQUFDQyxLQUFLLENBQUMsNkJBQTZCZCxHQUFHLEdBQUcsRUFBRWMsS0FBSyxDQUFDO0lBQ3pERCxPQUFPLENBQUNDLEtBQUssQ0FBQyxlQUFlLEVBQUVULEVBQUUsQ0FBQ00sSUFBSSxDQUFDO0lBQ3ZDLE9BQU9DLFNBQVM7RUFDbEI7QUFDRiIsImlnbm9yZUxpc3QiOltdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anansi/core",
3
- "version": "0.21.5",
3
+ "version": "0.22.1",
4
4
  "description": "React 19 Framework",
5
5
  "homepage": "https://github.com/ntucker/anansi/tree/master/packages/core#readme",
6
6
  "repository": {
@@ -53,6 +53,18 @@
53
53
  "types": "./lib/scripts/index.d.ts",
54
54
  "default": "./lib/scripts/index.js"
55
55
  },
56
+ "./antd": {
57
+ "node": {
58
+ "types": "./lib/spouts/antd.server.d.ts",
59
+ "default": "./lib/spouts/antd.server.js"
60
+ },
61
+ "types": "./lib/spouts/antd.d.ts",
62
+ "default": "./lib/spouts/antd.js"
63
+ },
64
+ "./antd/server": {
65
+ "types": "./lib/spouts/antd.server.d.ts",
66
+ "default": "./lib/spouts/antd.server.js"
67
+ },
56
68
  "./package.json": "./package.json"
57
69
  },
58
70
  "keywords": [
@@ -1,7 +1,9 @@
1
1
  export { default as laySpouts } from './laySpouts.js';
2
- export { default as documentSpout } from './spouts/document.server.js';
2
+ export {
3
+ default as documentSpout,
4
+ type CSPolicy,
5
+ } from './spouts/document.server.js';
3
6
  export { default as dataClientSpout } from './spouts/dataClient.server.js';
4
- export { default as antdSpout } from './spouts/antd.server.js';
5
7
  export { default as routerSpout } from './spouts/router.server.js';
6
8
  export { default as prefetchSpout } from './spouts/prefetch.server.js';
7
9
  export { default as JSONSpout } from './spouts/json.server.js';
package/src/index.ts CHANGED
@@ -5,7 +5,6 @@ export { default as routerSpout } from './spouts/router.js';
5
5
  export { default as JSONSpout } from './spouts/json.js';
6
6
  export { default as appSpout } from './spouts/app.js';
7
7
  export { default as navigatorSpout } from './spouts/navigator.js';
8
- export { default as antdSpout } from './spouts/antd.js';
9
8
  export { useNavigator } from './spouts/navigator.context.js';
10
9
  export type { NavigatorProperties } from './spouts/navigator.context.js';
11
10
  export type { ServerProps } from './spouts/types.js';
@@ -8,7 +8,7 @@ type NeededNext = {
8
8
  extraStyle?: React.ReactNode[];
9
9
  };
10
10
 
11
- export default function antdSpout(): ServerSpout<
11
+ export function antdSpout(): ServerSpout<
12
12
  Record<string, unknown>,
13
13
  Record<string, unknown>,
14
14
  NeededNext
@@ -1,10 +1,9 @@
1
+ import { createCache, StyleProvider } from '@ant-design/cssinjs';
2
+
1
3
  import type { ClientSpout } from './types.js';
2
4
 
3
- export default function antdSpout(): ClientSpout {
5
+ export function antdSpout(): ClientSpout {
4
6
  return next => async props => {
5
- const { createCache, StyleProvider } = await import(
6
- /* webpackIgnore: true */ '@ant-design/cssinjs'
7
- );
8
7
  const cache = createCache();
9
8
 
10
9
  const nextProps = await next(props);
package/src/spouts/csp.ts CHANGED
@@ -1,9 +1,9 @@
1
- export interface Policy {
1
+ export interface CSPolicy {
2
2
  [directive: string]: string | string[];
3
3
  }
4
4
 
5
5
  // TODO: memoize this
6
- export function buildPolicy(policyObj: Policy) {
6
+ export function buildPolicy(policyObj: CSPolicy) {
7
7
  return Object.keys(policyObj)
8
8
  .map(key => {
9
9
  const val =
@@ -25,7 +25,7 @@ export function buildPolicy(policyObj: Policy) {
25
25
  .join('; ');
26
26
  }
27
27
 
28
- export function joinNonce(policyObj: Policy, nonce?: string | undefined) {
28
+ export function joinNonce(policyObj: CSPolicy, nonce?: string | undefined) {
29
29
  if (!nonce) return policyObj;
30
30
  const policy = {
31
31
  ...policyObj,
@@ -3,7 +3,7 @@ import { Request } from 'express';
3
3
  import React from 'react';
4
4
  import { StatsChunkGroup } from 'webpack';
5
5
 
6
- import { buildPolicy, joinNonce, Policy } from './csp.js';
6
+ import { buildPolicy, joinNonce, type CSPolicy } from './csp.js';
7
7
  import Document from './DocumentComponent.js';
8
8
  import type { ServerSpout } from './types.js';
9
9
 
@@ -14,13 +14,15 @@ type NeededNext = {
14
14
  extraStyle?: React.ReactNode[];
15
15
  };
16
16
 
17
+ export { type CSPolicy };
18
+
17
19
  export default function DocumentSpout(options: {
18
20
  head?: React.ReactNode;
19
21
  title: string;
20
22
  lang?: string;
21
23
  rootId?: string;
22
24
  charSet?: string;
23
- csPolicy?: Policy;
25
+ csPolicy?: CSPolicy;
24
26
  }): ServerSpout<Record<string, unknown>, Record<string, unknown>, NeededNext> {
25
27
  return next => async props => {
26
28
  const nextProps = await next(props);
@@ -32,5 +32,12 @@ function getDataFromEl(el: HTMLScriptElement, key: string) {
32
32
  `#${key} is completely empty. This could be due to CSP issues.`,
33
33
  );
34
34
  }
35
- return el?.text ? JSON.parse(el?.text) : undefined;
35
+ if (!el?.text) return undefined;
36
+ try {
37
+ return JSON.parse(el.text);
38
+ } catch (error) {
39
+ console.error(`Failed to parse JSON for #${key}:`, error);
40
+ console.error('Text content:', el.text);
41
+ return undefined;
42
+ }
36
43
  }