@carto/kepler.gl 0.0.13 → 0.0.16
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 +711 -0
- package/dist/components/common/icons/index.js +9 -1
- package/dist/components/common/icons/swap-horizontal.js +68 -0
- package/dist/components/map-container.js +59 -53
- package/dist/components/side-panel/layer-panel/color-palette.js +12 -6
- package/dist/components/side-panel/layer-panel/color-range-selector.js +51 -17
- package/dist/components/side-panel/layer-panel/custom-palette.js +22 -8
- package/dist/components/side-panel/layer-panel/layer-config-group.js +19 -10
- package/dist/components/side-panel/layer-panel/layer-configurator.js +4 -4
- package/dist/components/side-panel/layer-panel/text-label-panel.js +18 -10
- package/dist/constants/default-settings.js +1 -1
- package/dist/localization/en.js +6 -1
- package/package.json +8 -8
- package/src/components/common/icons/index.js +1 -0
- package/src/components/common/icons/swap-horizontal.js +43 -0
- package/src/components/map-container.js +7 -4
- package/src/components/side-panel/layer-panel/color-palette.js +10 -3
- package/src/components/side-panel/layer-panel/color-range-selector.js +68 -28
- package/src/components/side-panel/layer-panel/custom-palette.js +23 -17
- package/src/components/side-panel/layer-panel/layer-config-group.js +16 -7
- package/src/components/side-panel/layer-panel/layer-configurator.js +20 -12
- package/src/components/side-panel/layer-panel/text-label-panel.js +15 -6
- package/src/localization/en.js +5 -0
- package/umd/keplergl.min.js +28 -28
|
@@ -7,6 +7,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
});
|
|
8
8
|
exports["default"] = void 0;
|
|
9
9
|
|
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
|
|
10
12
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
11
13
|
|
|
12
14
|
var _react = _interopRequireDefault(require("react"));
|
|
@@ -22,7 +24,9 @@ var propTypes = {
|
|
|
22
24
|
height: _propTypes["default"].number,
|
|
23
25
|
className: _propTypes["default"].string,
|
|
24
26
|
isSelected: _propTypes["default"].bool,
|
|
25
|
-
isReversed: _propTypes["default"].bool
|
|
27
|
+
isReversed: _propTypes["default"].bool,
|
|
28
|
+
children: _propTypes["default"].node,
|
|
29
|
+
rootProps: _propTypes["default"].object
|
|
26
30
|
};
|
|
27
31
|
var defaultProps = {
|
|
28
32
|
height: 10,
|
|
@@ -51,11 +55,13 @@ var ColorPalette = function ColorPalette(_ref) {
|
|
|
51
55
|
height = _ref.height,
|
|
52
56
|
className = _ref.className,
|
|
53
57
|
isSelected = _ref.isSelected,
|
|
54
|
-
isReversed = _ref.isReversed
|
|
55
|
-
|
|
58
|
+
isReversed = _ref.isReversed,
|
|
59
|
+
children = _ref.children,
|
|
60
|
+
rootProps = _ref.rootProps;
|
|
61
|
+
return /*#__PURE__*/_react["default"].createElement(PaletteContainer, (0, _extends2["default"])({
|
|
56
62
|
className: className,
|
|
57
63
|
isSelected: isSelected
|
|
58
|
-
}, /*#__PURE__*/_react["default"].createElement(PaletteWrapper, {
|
|
64
|
+
}, Boolean(rootProps) && rootProps), /*#__PURE__*/_react["default"].createElement(PaletteWrapper, {
|
|
59
65
|
style: {
|
|
60
66
|
height: height,
|
|
61
67
|
transform: "scale(".concat(isReversed ? -1 : 1, ", 1)")
|
|
@@ -67,11 +73,11 @@ var ColorPalette = function ColorPalette(_ref) {
|
|
|
67
73
|
backgroundColor: color
|
|
68
74
|
}
|
|
69
75
|
});
|
|
70
|
-
})));
|
|
76
|
+
})), Boolean(children) && children);
|
|
71
77
|
};
|
|
72
78
|
|
|
73
79
|
ColorPalette.propTypes = propTypes;
|
|
74
80
|
ColorPalette.defaultProps = defaultProps;
|
|
75
81
|
var _default = ColorPalette;
|
|
76
82
|
exports["default"] = _default;
|
|
77
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
83
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvY29sb3ItcGFsZXR0ZS5qcyJdLCJuYW1lcyI6WyJwcm9wVHlwZXMiLCJjb2xvcnMiLCJQcm9wVHlwZXMiLCJhcnJheU9mIiwic3RyaW5nIiwiaXNSZXF1aXJlZCIsImhlaWdodCIsIm51bWJlciIsImNsYXNzTmFtZSIsImlzU2VsZWN0ZWQiLCJib29sIiwiaXNSZXZlcnNlZCIsImNoaWxkcmVuIiwibm9kZSIsInJvb3RQcm9wcyIsIm9iamVjdCIsImRlZmF1bHRQcm9wcyIsIlBhbGV0dGVXcmFwcGVyIiwic3R5bGVkIiwiZGl2IiwiYXR0cnMiLCJQYWxldHRlQ29udGFpbmVyIiwicHJvcHMiLCJTdHlsZWRDb2xvckJsb2NrIiwiQ29sb3JQYWxldHRlIiwiQm9vbGVhbiIsInRyYW5zZm9ybSIsIm1hcCIsImNvbG9yIiwiaW5kZXgiLCJiYWNrZ3JvdW5kQ29sb3IiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7Ozs7QUFFQSxJQUFNQSxTQUFTLEdBQUc7QUFDaEJDLEVBQUFBLE1BQU0sRUFBRUMsc0JBQVVDLE9BQVYsQ0FBa0JELHNCQUFVRSxNQUE1QixFQUFvQ0MsVUFENUI7QUFFaEJDLEVBQUFBLE1BQU0sRUFBRUosc0JBQVVLLE1BRkY7QUFHaEJDLEVBQUFBLFNBQVMsRUFBRU4sc0JBQVVFLE1BSEw7QUFJaEJLLEVBQUFBLFVBQVUsRUFBRVAsc0JBQVVRLElBSk47QUFLaEJDLEVBQUFBLFVBQVUsRUFBRVQsc0JBQVVRLElBTE47QUFNaEJFLEVBQUFBLFFBQVEsRUFBRVYsc0JBQVVXLElBTko7QUFPaEJDLEVBQUFBLFNBQVMsRUFBRVosc0JBQVVhO0FBUEwsQ0FBbEI7QUFVQSxJQUFNQyxZQUFZLEdBQUc7QUFDbkJWLEVBQUFBLE1BQU0sRUFBRSxFQURXO0FBRW5CTCxFQUFBQSxNQUFNLEVBQUUsRUFGVztBQUduQk8sRUFBQUEsU0FBUyxFQUFFLEVBSFE7QUFJbkJDLEVBQUFBLFVBQVUsRUFBRSxLQUpPO0FBS25CRSxFQUFBQSxVQUFVLEVBQUU7QUFMTyxDQUFyQjs7QUFRQSxJQUFNTSxjQUFjLEdBQUdDLDZCQUFPQyxHQUFQLENBQVdDLEtBQVgsQ0FBaUI7QUFDdENaLEVBQUFBLFNBQVMsRUFBRTtBQUQyQixDQUFqQixDQUFILGtPQUFwQjs7QUFXQSxJQUFNYSxnQkFBZ0IsR0FBR0gsNkJBQU9DLEdBQVAsQ0FBV0MsS0FBWCxDQUFpQjtBQUN4Q1osRUFBQUEsU0FBUyxFQUFFO0FBRDZCLENBQWpCLENBQUgsMk9BT0osVUFBQWMsS0FBSztBQUFBLFNBQUtBLEtBQUssQ0FBQ2IsVUFBTixHQUFtQixTQUFuQixHQUErQixhQUFwQztBQUFBLENBUEQsQ0FBdEI7O0FBWUEsSUFBTWMsZ0JBQWdCLEdBQUdMLDZCQUFPQyxHQUFQLENBQVdDLEtBQVgsQ0FBaUI7QUFDeENaLEVBQUFBLFNBQVMsRUFBRTtBQUQ2QixDQUFqQixDQUFILDJHQUF0Qjs7QUFNQSxJQUFNZ0IsWUFBWSxHQUFHLFNBQWZBLFlBQWU7QUFBQSxNQUFFdkIsTUFBRixRQUFFQSxNQUFGO0FBQUEsTUFBVUssTUFBVixRQUFVQSxNQUFWO0FBQUEsTUFBa0JFLFNBQWxCLFFBQWtCQSxTQUFsQjtBQUFBLE1BQTZCQyxVQUE3QixRQUE2QkEsVUFBN0I7QUFBQSxNQUF5Q0UsVUFBekMsUUFBeUNBLFVBQXpDO0FBQUEsTUFBcURDLFFBQXJELFFBQXFEQSxRQUFyRDtBQUFBLE1BQStERSxTQUEvRCxRQUErREEsU0FBL0Q7QUFBQSxzQkFDbkIsZ0NBQUMsZ0JBQUQ7QUFDRSxJQUFBLFNBQVMsRUFBRU4sU0FEYjtBQUVFLElBQUEsVUFBVSxFQUFFQztBQUZkLEtBR09nQixPQUFPLENBQUNYLFNBQUQsQ0FBUCxJQUFzQkEsU0FIN0IsZ0JBS0UsZ0NBQUMsY0FBRDtBQUFnQixJQUFBLEtBQUssRUFBRTtBQUFDUixNQUFBQSxNQUFNLEVBQU5BLE1BQUQ7QUFBU29CLE1BQUFBLFNBQVMsa0JBQVdmLFVBQVUsR0FBRyxDQUFDLENBQUosR0FBUSxDQUE3QjtBQUFsQjtBQUF2QixLQUNHVixNQUFNLENBQUMwQixHQUFQLENBQVcsVUFBQ0MsS0FBRCxFQUFRQyxLQUFSO0FBQUEsd0JBQ1YsZ0NBQUMsZ0JBQUQ7QUFBa0IsTUFBQSxHQUFHLFlBQUtELEtBQUwsY0FBY0MsS0FBZCxDQUFyQjtBQUE0QyxNQUFBLEtBQUssRUFBRTtBQUFDQyxRQUFBQSxlQUFlLEVBQUVGO0FBQWxCO0FBQW5ELE1BRFU7QUFBQSxHQUFYLENBREgsQ0FMRixFQVVHSCxPQUFPLENBQUNiLFFBQUQsQ0FBUCxJQUFxQkEsUUFWeEIsQ0FEbUI7QUFBQSxDQUFyQjs7QUFlQVksWUFBWSxDQUFDeEIsU0FBYixHQUF5QkEsU0FBekI7QUFDQXdCLFlBQVksQ0FBQ1IsWUFBYixHQUE0QkEsWUFBNUI7ZUFFZVEsWSIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMSBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5cbmNvbnN0IHByb3BUeXBlcyA9IHtcbiAgY29sb3JzOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc3RyaW5nKS5pc1JlcXVpcmVkLFxuICBoZWlnaHQ6IFByb3BUeXBlcy5udW1iZXIsXG4gIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgaXNTZWxlY3RlZDogUHJvcFR5cGVzLmJvb2wsXG4gIGlzUmV2ZXJzZWQ6IFByb3BUeXBlcy5ib29sLFxuICBjaGlsZHJlbjogUHJvcFR5cGVzLm5vZGUsXG4gIHJvb3RQcm9wczogUHJvcFR5cGVzLm9iamVjdFxufTtcblxuY29uc3QgZGVmYXVsdFByb3BzID0ge1xuICBoZWlnaHQ6IDEwLFxuICBjb2xvcnM6IFtdLFxuICBjbGFzc05hbWU6ICcnLFxuICBpc1NlbGVjdGVkOiBmYWxzZSxcbiAgaXNSZXZlcnNlZDogZmFsc2Vcbn07XG5cbmNvbnN0IFBhbGV0dGVXcmFwcGVyID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ2NvbG9yLXJhbmdlLXBhbGV0dGVfX2lubmVyJ1xufSlgXG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC1ncm93OiAxO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG5gO1xuXG5jb25zdCBQYWxldHRlQ29udGFpbmVyID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ2NvbG9yLXJhbmdlLXBhbGV0dGUnXG59KWBcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1ncm93OiAxO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLWNvbG9yOiAke3Byb3BzID0+IChwcm9wcy5pc1NlbGVjdGVkID8gJyNGRkZGRkYnIDogJ3RyYW5zcGFyZW50Jyl9O1xuICBwYWRkaW5nOiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbmA7XG5cbmNvbnN0IFN0eWxlZENvbG9yQmxvY2sgPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnY29sb3ItcmFuZ2UtcGFsZXR0ZV9fYmxvY2snXG59KWBcbiAgZmxleC1ncm93OiAxO1xuYDtcblxuY29uc3QgQ29sb3JQYWxldHRlID0gKHtjb2xvcnMsIGhlaWdodCwgY2xhc3NOYW1lLCBpc1NlbGVjdGVkLCBpc1JldmVyc2VkLCBjaGlsZHJlbiwgcm9vdFByb3BzfSkgPT4gKFxuICA8UGFsZXR0ZUNvbnRhaW5lclxuICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lfVxuICAgIGlzU2VsZWN0ZWQ9e2lzU2VsZWN0ZWR9XG4gICAgey4uLihCb29sZWFuKHJvb3RQcm9wcykgJiYgcm9vdFByb3BzKX1cbiAgPlxuICAgIDxQYWxldHRlV3JhcHBlciBzdHlsZT17e2hlaWdodCwgdHJhbnNmb3JtOiBgc2NhbGUoJHtpc1JldmVyc2VkID8gLTEgOiAxfSwgMSlgfX0+XG4gICAgICB7Y29sb3JzLm1hcCgoY29sb3IsIGluZGV4KSA9PiAoXG4gICAgICAgIDxTdHlsZWRDb2xvckJsb2NrIGtleT17YCR7Y29sb3J9LSR7aW5kZXh9YH0gc3R5bGU9e3tiYWNrZ3JvdW5kQ29sb3I6IGNvbG9yfX0gLz5cbiAgICAgICkpfVxuICAgIDwvUGFsZXR0ZVdyYXBwZXI+XG4gICAge0Jvb2xlYW4oY2hpbGRyZW4pICYmIGNoaWxkcmVufVxuICA8L1BhbGV0dGVDb250YWluZXI+XG4pO1xuXG5Db2xvclBhbGV0dGUucHJvcFR5cGVzID0gcHJvcFR5cGVzO1xuQ29sb3JQYWxldHRlLmRlZmF1bHRQcm9wcyA9IGRlZmF1bHRQcm9wcztcblxuZXhwb3J0IGRlZmF1bHQgQ29sb3JQYWxldHRlO1xuIl19
|
|
@@ -9,6 +9,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
9
9
|
});
|
|
10
10
|
exports.ColorPaletteGroup = exports.PaletteConfig = exports["default"] = exports.ALL_STEPS = exports.ALL_TYPES = void 0;
|
|
11
11
|
|
|
12
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
13
|
+
|
|
12
14
|
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
13
15
|
|
|
14
16
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
@@ -25,6 +27,8 @@ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/de
|
|
|
25
27
|
|
|
26
28
|
var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
|
|
27
29
|
|
|
30
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
31
|
+
|
|
28
32
|
var _react = _interopRequireWildcard(require("react"));
|
|
29
33
|
|
|
30
34
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
@@ -53,17 +57,23 @@ var _colorUtils = require("../../../utils/color-utils");
|
|
|
53
57
|
|
|
54
58
|
var _localization = require("../../../localization");
|
|
55
59
|
|
|
60
|
+
var _icons = require("../../common/icons");
|
|
61
|
+
|
|
56
62
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
57
63
|
|
|
64
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
65
|
+
|
|
66
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
67
|
+
|
|
58
68
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
59
69
|
|
|
60
70
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
61
71
|
|
|
62
|
-
var ALL_TYPES = (0, _lodash["default"])(_colorRanges.COLOR_RANGES.map(function (c) {
|
|
72
|
+
var ALL_TYPES = (0, _lodash["default"])(['all'].concat((0, _toConsumableArray2["default"])(_colorRanges.COLOR_RANGES.map(function (c) {
|
|
63
73
|
return c.type;
|
|
64
74
|
}).filter(function (ctype) {
|
|
65
75
|
return ctype;
|
|
66
|
-
})
|
|
76
|
+
})), ['custom']));
|
|
67
77
|
exports.ALL_TYPES = ALL_TYPES;
|
|
68
78
|
var ALL_STEPS = (0, _lodash["default"])(_colorRanges.COLOR_RANGES.map(function (d) {
|
|
69
79
|
return d.colors.length;
|
|
@@ -76,10 +86,11 @@ var StyledColorRangeSelector = _styledComponents["default"].div.attrs({
|
|
|
76
86
|
className: 'color-range-selector'
|
|
77
87
|
})(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n padding-bottom: 12px;\n"])));
|
|
78
88
|
|
|
79
|
-
var StyledPaletteConfig = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n margin-bottom: 8px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n .color-palette__config__label {\n flex-grow: 1;\n }\n .color-palette__config__select {\n flex-grow: 1;\n }\n .item-selector .item-selector__dropdown {\n ", ";\n }\n"])), function (props) {
|
|
89
|
+
var StyledPaletteConfig = _styledComponents["default"].div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2["default"])(["\n margin-bottom: 8px;\n display: flex;\n justify-content: space-between;\n align-items: center;\n .color-palette__config__label {\n flex-grow: 1;\n }\n .color-palette__config__select {\n flex-grow: 1;\n }\n .item-selector .item-selector__dropdown {\n ", ";\n }\n .color-palette__config__button {\n svg {\n margin: 0;\n }\n }\n"])), function (props) {
|
|
80
90
|
return props.theme.secondaryInput;
|
|
81
91
|
});
|
|
82
92
|
|
|
93
|
+
var CONFIG_SETTINGS_CUSTOM_REVERSED_BUTTON_TYPE = 'custom-reversed-button';
|
|
83
94
|
var CONFIG_SETTINGS = {
|
|
84
95
|
type: {
|
|
85
96
|
type: 'select',
|
|
@@ -90,12 +101,7 @@ var CONFIG_SETTINGS = {
|
|
|
90
101
|
options: ALL_STEPS
|
|
91
102
|
},
|
|
92
103
|
reversed: {
|
|
93
|
-
type:
|
|
94
|
-
options: [true, false]
|
|
95
|
-
},
|
|
96
|
-
custom: {
|
|
97
|
-
label: 'customPalette',
|
|
98
|
-
type: 'switch',
|
|
104
|
+
type: CONFIG_SETTINGS_CUSTOM_REVERSED_BUTTON_TYPE,
|
|
99
105
|
options: [true, false]
|
|
100
106
|
}
|
|
101
107
|
};
|
|
@@ -135,7 +141,9 @@ var ColorRangeSelect = /*#__PURE__*/function (_Component) {
|
|
|
135
141
|
var key = _ref.key,
|
|
136
142
|
value = _ref.value;
|
|
137
143
|
|
|
138
|
-
_this._setColorRangeConfig((0, _defineProperty2["default"])({}, key, value)
|
|
144
|
+
_this._setColorRangeConfig(_objectSpread((0, _defineProperty2["default"])({}, key, value), key === 'type' && {
|
|
145
|
+
custom: value === 'custom'
|
|
146
|
+
}));
|
|
139
147
|
});
|
|
140
148
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_onSetCustomPalette", function (config) {
|
|
141
149
|
_this.props.setColorPaletteUI({
|
|
@@ -173,7 +181,11 @@ var ColorRangeSelect = /*#__PURE__*/function (_Component) {
|
|
|
173
181
|
showSketcher = _this$props$colorPale.showSketcher,
|
|
174
182
|
colorRangeConfig = _this$props$colorPale.colorRangeConfig;
|
|
175
183
|
var filteredColorRanges = this.filteredColorRange(this.props);
|
|
176
|
-
return /*#__PURE__*/_react["default"].createElement(StyledColorRangeSelector, null, /*#__PURE__*/_react["default"].createElement(StyledColorConfig,
|
|
184
|
+
return /*#__PURE__*/_react["default"].createElement(StyledColorRangeSelector, null, /*#__PURE__*/_react["default"].createElement(StyledColorConfig, {
|
|
185
|
+
className: "color-range-selector__config"
|
|
186
|
+
}, Object.keys(colorRangeConfig).filter(function (key) {
|
|
187
|
+
return Boolean(CONFIG_SETTINGS[key]) && (colorRangeConfig.custom ? key === 'type' : true);
|
|
188
|
+
}).map(function (key) {
|
|
177
189
|
return /*#__PURE__*/_react["default"].createElement(PaletteConfig, {
|
|
178
190
|
key: key,
|
|
179
191
|
label: CONFIG_SETTINGS[key].label || key,
|
|
@@ -228,13 +240,13 @@ var PaletteConfig = function PaletteConfig(_ref2) {
|
|
|
228
240
|
options = _ref2$config.options,
|
|
229
241
|
_onChange = _ref2.onChange;
|
|
230
242
|
return /*#__PURE__*/_react["default"].createElement(StyledPaletteConfig, {
|
|
231
|
-
className: "color-palette__config",
|
|
243
|
+
className: "color-palette__config color-palette__config--".concat(label),
|
|
232
244
|
onClick: function onClick(e) {
|
|
233
245
|
return e.stopPropagation();
|
|
234
246
|
}
|
|
235
247
|
}, /*#__PURE__*/_react["default"].createElement("div", {
|
|
236
248
|
className: "color-palette__config__label"
|
|
237
|
-
}, /*#__PURE__*/_react["default"].createElement(_styledComponents2.PanelLabel, null, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
|
|
249
|
+
}, type !== CONFIG_SETTINGS_CUSTOM_REVERSED_BUTTON_TYPE && /*#__PURE__*/_react["default"].createElement(_styledComponents2.PanelLabel, null, /*#__PURE__*/_react["default"].createElement(_localization.FormattedMessage, {
|
|
238
250
|
id: "color.".concat(label)
|
|
239
251
|
}))), type === 'select' && /*#__PURE__*/_react["default"].createElement("div", {
|
|
240
252
|
className: "color-palette__config__select"
|
|
@@ -251,7 +263,21 @@ var PaletteConfig = function PaletteConfig(_ref2) {
|
|
|
251
263
|
return _onChange(!value);
|
|
252
264
|
},
|
|
253
265
|
secondary: true
|
|
254
|
-
}))
|
|
266
|
+
}), type === CONFIG_SETTINGS_CUSTOM_REVERSED_BUTTON_TYPE && /*#__PURE__*/_react["default"].createElement(_styledComponents2.Button, (0, _extends2["default"])({
|
|
267
|
+
className: "color-palette__config__button ".concat(value ? 'color-palette__config__button--active' : ''),
|
|
268
|
+
"data-tip": true,
|
|
269
|
+
"data-for": "".concat(label, "-tooltip")
|
|
270
|
+
}, !value && {
|
|
271
|
+
link: true
|
|
272
|
+
}, {
|
|
273
|
+
onClick: function onClick() {
|
|
274
|
+
return _onChange(!value);
|
|
275
|
+
}
|
|
276
|
+
}), /*#__PURE__*/_react["default"].createElement(_icons.SwapHorizontal, null), /*#__PURE__*/_react["default"].createElement(_styledComponents2.Tooltip, {
|
|
277
|
+
id: "".concat(label, "-tooltip"),
|
|
278
|
+
effect: "solid",
|
|
279
|
+
place: "top"
|
|
280
|
+
}, label)));
|
|
255
281
|
};
|
|
256
282
|
|
|
257
283
|
exports.PaletteConfig = PaletteConfig;
|
|
@@ -278,10 +304,18 @@ var ColorPaletteGroup = function ColorPaletteGroup(_ref3) {
|
|
|
278
304
|
}, /*#__PURE__*/_react["default"].createElement(_colorPalette["default"], {
|
|
279
305
|
colors: colorRange.colors,
|
|
280
306
|
isReversed: reversed,
|
|
281
|
-
isSelected: colorRange.name === selected.name && reversed === Boolean(selected.reversed)
|
|
282
|
-
|
|
307
|
+
isSelected: colorRange.name === selected.name && reversed === Boolean(selected.reversed),
|
|
308
|
+
rootProps: {
|
|
309
|
+
'data-tip': true,
|
|
310
|
+
'data-for': "color-range-".concat(i, "-tooltip")
|
|
311
|
+
}
|
|
312
|
+
}, /*#__PURE__*/_react["default"].createElement(_styledComponents2.Tooltip, {
|
|
313
|
+
id: "color-range-".concat(i, "-tooltip"),
|
|
314
|
+
effect: "solid",
|
|
315
|
+
place: "top"
|
|
316
|
+
}, colorRange.name)));
|
|
283
317
|
}));
|
|
284
318
|
};
|
|
285
319
|
|
|
286
320
|
exports.ColorPaletteGroup = ColorPaletteGroup;
|
|
287
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvY29sb3ItcmFuZ2Utc2VsZWN0b3IuanMiXSwibmFtZXMiOlsiQUxMX1RZUEVTIiwiQ09MT1JfUkFOR0VTIiwibWFwIiwiYyIsInR5cGUiLCJmaWx0ZXIiLCJjdHlwZSIsImNvbmNhdCIsIkFMTF9TVEVQUyIsImQiLCJjb2xvcnMiLCJsZW5ndGgiLCJzb3J0IiwibnVtYmVyU29ydCIsIlN0eWxlZENvbG9yQ29uZmlnIiwic3R5bGVkIiwiZGl2IiwiU3R5bGVkQ29sb3JSYW5nZVNlbGVjdG9yIiwiYXR0cnMiLCJjbGFzc05hbWUiLCJTdHlsZWRQYWxldHRlQ29uZmlnIiwicHJvcHMiLCJ0aGVtZSIsInNlY29uZGFyeUlucHV0IiwiQ09ORklHX1NFVFRJTkdTIiwib3B0aW9ucyIsInN0ZXBzIiwicmV2ZXJzZWQiLCJjdXN0b20iLCJsYWJlbCIsIkNvbG9yUmFuZ2VTZWxlY3QiLCJjb2xvclJhbmdlcyIsImNvbG9yUGFsZXR0ZVVJIiwiY29sb3JSYW5nZUNvbmZpZyIsImNvbG9yUmFuZ2VzU2VsZWN0b3IiLCJjb25maWdUeXBlU2VsZWN0b3IiLCJjb25maWdTdGVwU2VsZWN0b3IiLCJjb2xvclJhbmdlIiwiaXNUeXBlIiwiaXNTdGVwIiwiTnVtYmVyIiwia2V5IiwidmFsdWUiLCJfc2V0Q29sb3JSYW5nZUNvbmZpZyIsImNvbmZpZyIsInNldENvbG9yUGFsZXR0ZVVJIiwiY3VzdG9tUGFsZXR0ZSIsIm5ld0NvbmZpZyIsInNob3dTa2V0Y2hlciIsInZhbCIsImZpbHRlcmVkQ29sb3JSYW5nZXMiLCJmaWx0ZXJlZENvbG9yUmFuZ2UiLCJPYmplY3QiLCJrZXlzIiwiX3VwZGF0ZUNvbmZpZyIsInNlbGVjdGVkQ29sb3JSYW5nZSIsIm9uU2VsZWN0Q29sb3JSYW5nZSIsIl9vblRvZ2dsZVNrZXRjaGVyIiwiX29uU2V0Q3VzdG9tUGFsZXR0ZSIsIl9vbkN1c3RvbVBhbGV0dGVDYW5jZWwiLCJDb21wb25lbnQiLCJQcm9wVHlwZXMiLCJvYmplY3QiLCJpc1JlcXVpcmVkIiwiZnVuYyIsImFycmF5T2YiLCJhbnkiLCJQYWxldHRlQ29uZmlnIiwib25DaGFuZ2UiLCJlIiwic3RvcFByb3BhZ2F0aW9uIiwiU3R5bGVkQ29sb3JSYW5nZSIsInBhbmVsQmFja2dyb3VuZEhvdmVyIiwiQ29sb3JQYWxldHRlR3JvdXAiLCJvblNlbGVjdCIsInNlbGVjdGVkIiwiaSIsIm5hbWUiLCJCb29sZWFuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7Ozs7O0FBRU8sSUFBTUEsU0FBUyxHQUFHLHdCQUN2QkMsMEJBQWFDLEdBQWIsQ0FBaUIsVUFBQUMsQ0FBQztBQUFBLFNBQUlBLENBQUMsQ0FBQ0MsSUFBTjtBQUFBLENBQWxCLEVBQ0dDLE1BREgsQ0FDVSxVQUFBQyxLQUFLO0FBQUEsU0FBSUEsS0FBSjtBQUFBLENBRGYsRUFFR0MsTUFGSCxDQUVVLENBQUMsS0FBRCxFQUFRLFFBQVIsQ0FGVixDQUR1QixDQUFsQjs7QUFNQSxJQUFNQyxTQUFTLEdBQUcsd0JBQUtQLDBCQUFhQyxHQUFiLENBQWlCLFVBQUFPLENBQUM7QUFBQSxTQUFJQSxDQUFDLENBQUNDLE1BQUYsQ0FBU0MsTUFBYjtBQUFBLENBQWxCLENBQUwsRUFBNkNDLElBQTdDLENBQWtEQyxxQkFBbEQsQ0FBbEI7OztBQUVQLElBQU1DLGlCQUFpQixHQUFHQyw2QkFBT0MsR0FBVixzSEFBdkI7O0FBSUEsSUFBTUMsd0JBQXdCLEdBQUdGLDZCQUFPQyxHQUFQLENBQVdFLEtBQVgsQ0FBaUI7QUFDaERDLEVBQUFBLFNBQVMsRUFBRTtBQURxQyxDQUFqQixDQUFILG1IQUE5Qjs7QUFNQSxJQUFNQyxtQkFBbUIsR0FBR0wsNkJBQU9DLEdBQVYsbVhBWW5CLFVB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QyxRQUFGLFNBQUVBLFFBQUY7QUFBQSxNQUFZK0MsUUFBWixTQUFZQSxRQUFaO0FBQUEsTUFBc0JDLFFBQXRCLFNBQXNCQSxRQUF0QjtBQUFBLE1BQWdDNUMsV0FBaEMsU0FBZ0NBLFdBQWhDO0FBQUEsc0JBQy9CO0FBQUssSUFBQSxTQUFTLEVBQUM7QUFBZixLQUNHQSxXQUFXLENBQUM3QixHQUFaLENBQWdCLFVBQUNtQyxVQUFELEVBQWF1QyxDQUFiO0FBQUEsd0JBQ2YsZ0NBQUMsZ0JBQUQ7QUFDRSxNQUFBLEdBQUcsWUFBS3ZDLFVBQVUsQ0FBQ3dDLElBQWhCLGNBQXdCRCxDQUF4QixDQURMO0FBRUUsTUFBQSxPQUFPLEVBQUUsaUJBQUFQLENBQUM7QUFBQSxlQUFJSyxRQUFRLENBQUMvQyxRQUFRLEdBQUcsbUNBQWtCLElBQWxCLEVBQXdCVSxVQUF4QixDQUFILEdBQXlDQSxVQUFsRCxFQUE4RGdDLENBQTlELENBQVo7QUFBQTtBQUZaLG9CQUlFLGdDQUFDLHdCQUFEO0FBQ0UsTUFBQSxNQUFNLEVBQUVoQyxVQUFVLENBQUMzQixNQURyQjtBQUVFLE1BQUEsVUFBVSxFQUFFaUIsUUFGZDtBQUdFLE1BQUEsVUFBVSxFQUFFVSxVQUFVLENBQUN3QyxJQUFYLEtBQW9CRixRQUFRLENBQUNFLElBQTdCLElBQXFDbEQsUUFBUSxLQUFLbUQsT0FBTyxDQUFDSCxRQUFRLENBQUNoRCxRQUFWO0FBSHZFLE1BSkYsQ0FEZTtBQUFBLEdBQWhCLENBREgsQ0FEK0I7QUFBQSxDQUExQiIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAoYykgMjAyMSBVYmVyIFRlY2hub2xvZ2llcywgSW5jLlxuLy9cbi8vIFBlcm1pc3Npb24gaXMgaGVyZWJ5IGdyYW50ZWQsIGZyZWUgb2YgY2hhcmdlLCB0byBhbnkgcGVyc29uIG9idGFpbmluZyBhIGNvcHlcbi8vIG9mIHRoaXMgc29mdHdhcmUgYW5kIGFzc29jaWF0ZWQgZG9jdW1lbnRhdGlvbiBmaWxlcyAodGhlIFwiU29mdHdhcmVcIiksIHRvIGRlYWxcbi8vIGluIHRoZSBTb2Z0d2FyZSB3aXRob3V0IHJlc3RyaWN0aW9uLCBpbmNsdWRpbmcgd2l0aG91dCBsaW1pdGF0aW9uIHRoZSByaWdodHNcbi8vIHRvIHVzZSwgY29weSwgbW9kaWZ5LCBtZXJnZSwgcHVibGlzaCwgZGlzdHJpYnV0ZSwgc3VibGljZW5zZSwgYW5kL29yIHNlbGxcbi8vIGNvcGllcyBvZiB0aGUgU29mdHdhcmUsIGFuZCB0byBwZXJtaXQgcGVyc29ucyB0byB3aG9tIHRoZSBTb2Z0d2FyZSBpc1xuLy8gZnVybmlzaGVkIHRvIGRvIHNvLCBzdWJqZWN0IHRvIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uczpcbi8vXG4vLyBUaGUgYWJvdmUgY29weXJpZ2h0IG5vdGljZSBhbmQgdGhpcyBwZXJtaXNzaW9uIG5vdGljZSBzaGFsbCBiZSBpbmNsdWRlZCBpblxuLy8gYWxsIGNvcGllcyBvciBzdWJzdGFudGlhbCBwb3J0aW9ucyBvZiB0aGUgU29mdHdhcmUuXG4vL1xuLy8gVEhFIFNPRlRXQVJFIElTIFBST1ZJREVEIFwiQVMgSVNcIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUlxuLy8gSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksXG4vLyBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEVcbi8vIEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVJcbi8vIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HIEZST00sXG4vLyBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSIERFQUxJTkdTIElOXG4vLyBUSEUgU09GVFdBUkUuXG5cbmltcG9ydCBSZWFjdCwge0NvbXBvbmVudH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB1bmlxIGZyb20gJ2xvZGFzaC51bmlxJztcbmltcG9ydCBzdHlsZWQgZnJvbSAnc3R5bGVkLWNvbXBvbmVudHMnO1xuaW1wb3J0IHtjcmVhdGVTZWxlY3Rvcn0gZnJvbSAncmVzZWxlY3QnO1xuXG5pbXBvcnQgSXRlbVNlbGVjdG9yIGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL2l0ZW0tc2VsZWN0b3IvaXRlbS1zZWxlY3Rvcic7XG5pbXBvcnQge1BhbmVsTGFiZWx9IGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCBTd2l0Y2ggZnJvbSAnY29tcG9uZW50cy9jb21tb24vc3dpdGNoJztcbmltcG9ydCBDb2xvclBhbGV0dGUgZnJvbSAnLi9jb2xvci1wYWxldHRlJztcbmltcG9ydCBDdXN0b21QYWxldHRlIGZyb20gJy4vY3VzdG9tLXBhbGV0dGUnO1xuaW1wb3J0IHtDT0xPUl9SQU5HRVN9IGZyb20gJ2NvbnN0YW50cy9jb2xvci1yYW5nZXMnO1xuaW1wb3J0IHtudW1iZXJTb3J0fSBmcm9tICd1dGlscy9kYXRhLXV0aWxzJztcbmltcG9ydCB7cmV2ZXJzZUNvbG9yUmFuZ2V9IGZyb20gJ3V0aWxzL2NvbG9yLXV0aWxzJztcbmltcG9ydCB7Rm9ybWF0dGVkTWVzc2FnZX0gZnJvbSAnbG9jYWxpemF0aW9uJztcblxuZXhwb3J0IGNvbnN0IEFMTF9UWVBFUyA9IHVuaXEoXG4gIENPTE9SX1JBTkdFUy5tYXAoYyA9PiBjLnR5cGUpXG4gICAgLmZpbHRlcihjdHlwZSA9PiBjdHlwZSlcbiAgICAuY29uY2F0KFsnYWxsJywgJ2N1c3RvbSddKVxuKTtcblxuZXhwb3J0IGNvbnN0IEFMTF9TVEVQUyA9IHVuaXEoQ09MT1JfUkFOR0VTLm1hcChkID0+IGQuY29sb3JzLmxlbmd0aCkpLnNvcnQobnVtYmVyU29ydCk7XG5cbmNvbnN0IFN0eWxlZENvbG9yQ29uZmlnID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogMTJweCAxMnB4IDAgMTJweDtcbmA7XG5cbmNvbnN0IFN0eWxlZENvbG9yUmFuZ2VTZWxlY3RvciA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdjb2xvci1yYW5nZS1zZWxlY3Rvcidcbn0pYFxuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbmA7XG5cbmNvbnN0IFN0eWxlZFBhbGV0dGVDb25maWcgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLmNvbG9yLXBhbGV0dGVfX2NvbmZpZ19fbGFiZWwge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuICAuY29sb3ItcGFsZXR0ZV9fY29uZmlnX19zZWxlY3Qge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuICAuaXRlbS1zZWxlY3RvciAuaXRlbS1zZWxlY3Rvcl9fZHJvcGRvd24ge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXR9O1xuICB9XG5gO1xuXG5jb25zdCBDT05GSUdfU0VUVElOR1MgPSB7XG4gIHR5cGU6IHtcbiAgICB0eXBlOiAnc2VsZWN0JyxcbiAgICBvcHRpb25zOiBBTExfVFlQRVNcbiAgfSxcbiAgc3RlcHM6IHtcbiAgICB0eXBlOiAnc2VsZWN0JyxcbiAgICBvcHRpb25zOiBBTExfU1RFUFNcbiAgfSxcbiAgcmV2ZXJzZWQ6IHtcbiAgICB0eXBlOiAnc3dpdGNoJyxcbiAgICBvcHRpb25zOiBbdHJ1ZSwgZmFsc2VdXG4gIH0sXG4gIGN1c3RvbToge1xuICAgIGxhYmVsOiAnY3VzdG9tUGFsZXR0ZScsXG4gICAgdHlwZTogJ3N3aXRjaCcsXG4gICAgb3B0aW9uczogW3RydWUsIGZhbHNlXVxuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb2xvclJhbmdlU2VsZWN0IGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICBjb2xvclBhbGV0dGVVSTogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICAgIHNlbGVjdGVkQ29sb3JSYW5nZTogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICAgIG9uU2VsZWN0Q29sb3JSYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBzZXRDb2xvclBhbGV0dGVVSTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAvLyBvcHRpb25hbFxuICAgIGNvbG9yUmFuZ2VzOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KVxuICB9O1xuXG4gIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgY29sb3JSYW5nZXM6IENPTE9SX1JBTkdFUyxcbiAgICBvblNlbGVjdENvbG9yUmFuZ2U6ICgpID0+IHt9LFxuICAgIHNldENvbG9yUGFsZXR0ZVVJOiAoKSA9PiB7fVxuICB9O1xuXG4gIGNvbG9yUmFuZ2VzU2VsZWN0b3IgPSBwcm9wcyA9PiBwcm9wcy5jb2xvclJhbmdlcztcbiAgY29uZmlnVHlwZVNlbGVjdG9yID0gcHJvcHMgPT4gcHJvcHMuY29sb3JQYWxldHRlVUkuY29sb3JSYW5nZUNvbmZpZy50eXBlO1xuICBjb25maWdTdGVwU2VsZWN0b3IgPSBwcm9wcyA9PiBwcm9wcy5jb2xvclBhbGV0dGVVSS5jb2xvclJhbmdlQ29uZmlnLnN0ZXBzO1xuICBmaWx0ZXJlZENvbG9yUmFuZ2UgPSBjcmVhdGVTZWxlY3RvcihcbiAgICB0aGlzLmNvbG9yUmFuZ2VzU2VsZWN0b3IsXG4gICAgdGhpcy5jb25maWdUeXBlU2VsZWN0b3IsXG4gICAgdGhpcy5jb25maWdTdGVwU2VsZWN0b3IsXG4gICAgKGNvbG9yUmFuZ2VzLCB0eXBlLCBzdGVwcykgPT4ge1xuICAgICAgcmV0dXJuIGNvbG9yUmFuZ2VzLmZpbHRlcihjb2xvclJhbmdlID0+IHtcbiAgICAgICAgY29uc3QgaXNUeXBlID0gdHlwZSA9PT0gJ2FsbCcgfHwgdHlwZSA9PT0gY29sb3JSYW5nZS50eXBlO1xuICAgICAgICBjb25zdCBpc1N0ZXAgPSBOdW1iZXIoc3RlcHMpID09PSBjb2xvclJhbmdlLmNvbG9ycy5sZW5ndGg7XG5cbiAgICAgICAgcmV0dXJuIGlzVHlwZSAmJiBpc1N0ZXA7XG4gICAgICB9KTtcbiAgICB9XG4gICk7XG5cbiAgX3VwZGF0ZUNvbmZpZyA9ICh7a2V5LCB2YWx1ZX0pID0+IHtcbiAgICB0aGlzLl9zZXRDb2xvclJhbmdlQ29uZmlnKHtba2V5XTogdmFsdWV9KTtcbiAgfTtcblxuICBfb25TZXRDdXN0b21QYWxldHRlID0gY29uZmlnID0+IHtcbiAgICB0aGlzLnByb3BzLnNldENvbG9yUGFsZXR0ZVVJKHtcbiAgICAgIGN1c3RvbVBhbGV0dGU6IGNvbmZpZ1xuICAgIH0pO1xuICB9O1xuXG4gIF9zZXRDb2xvclJhbmdlQ29uZmlnID0gbmV3Q29uZmlnID0+IHtcbiAgICB0aGlzLnByb3BzLnNldENvbG9yUGFsZXR0ZVVJKHtcbiAgICAgIGNvbG9yUmFuZ2VDb25maWc6IG5ld0NvbmZpZ1xuICAgIH0pO1xuICB9O1xuXG4gIF9vbkN1c3RvbVBhbGV0dGVDYW5jZWwgPSBuZXdDb25maWcgPT4ge1xuICAgIHRoaXMucHJvcHMuc2V0Q29sb3JQYWxldHRlVUkoe1xuICAgICAgc2hvd1NrZXRjaGVyOiBmYWxzZSxcbiAgICAgIGNvbG9yUmFuZ2VDb25maWc6IHtjdXN0b206IGZhbHNlfVxuICAgIH0pO1xuICB9O1xuXG4gIF9vblRvZ2dsZVNrZXRjaGVyID0gdmFsID0+IHtcbiAgICB0aGlzLnByb3BzLnNldENvbG9yUGFsZXR0ZVVJKHtcbiAgICAgIHNob3dTa2V0Y2hlcjogdmFsXG4gICAgfSk7XG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHtjdXN0b21QYWxldHRlLCBzaG93U2tldGNoZXIsIGNvbG9yUmFuZ2VDb25maWd9ID0gdGhpcy5wcm9wcy5jb2xvclBhbGV0dGVVSTtcblxuICAgIGNvbnN0IGZpbHRlcmVkQ29sb3JSYW5nZXMgPSB0aGlzLmZpbHRlcmVkQ29sb3JSYW5nZSh0aGlzLnByb3BzKTtcblxuICAgIHJldHVybiAoXG4gICAgICA8U3R5bGVkQ29sb3JSYW5nZVNlbGVjdG9yPlxuICAgICAgICA8U3R5bGVkQ29sb3JDb25maWc+XG4gICAgICAgICAgeyhjb2xvclJhbmdlQ29uZmlnLmN1c3RvbSA/IFsnY3VzdG9tJ10gOiBPYmplY3Qua2V5cyhjb2xvclJhbmdlQ29uZmlnKSkubWFwKGtleSA9PiAoXG4gICAgICAgICAgICA8UGFsZXR0ZUNvbmZpZ1xuICAgICAgICAgICAgICBrZXk9e2tleX1cbiAgICAgICAgICAgICAgbGFiZWw9e0NPTkZJR19TRVRUSU5HU1trZXldLmxhYmVsIHx8IGtleX1cbiAgICAgICAgICAgICAgY29uZmlnPXtDT05GSUdfU0VUVElOR1Nba2V5XX1cbiAgICAgICAgICAgICAgdmFsdWU9e2NvbG9yUmFuZ2VDb25maWdba2V5XX1cbiAgICAgICAgICAgICAgb25DaGFuZ2U9e3ZhbHVlID0+IHRoaXMuX3VwZGF0ZUNvbmZpZyh7a2V5LCB2YWx1ZX0pfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApKX1cbiAgICAgICAgPC9TdHlsZWRDb2xvckNvbmZpZz5cblxuICAgICAgICB7Y29sb3JSYW5nZUNvbmZpZy5jdXN0b20gPyAoXG4gICAgICAgICAgPEN1c3RvbVBhbGV0dGVcbiAgICAgICAgICAgIGN1c3RvbVBhbGV0dGU9e2N1c3RvbVBhbGV0dGV9XG4gICAgICAgICAgICBzaG93U2tldGNoZXI9e3Nob3dTa2V0Y2hlcn1cbiAgICAgICAgICAgIHNlbGVjdGVkPXt0aGlzLnByb3BzLnNlbGVjdGVkQ29sb3JSYW5nZX1cbiAgICAgICAgICAgIG9uQXBwbHk9e3RoaXMucHJvcHMub25TZWxlY3RDb2xvclJhbmdlfVxuICAgICAgICAgICAgb25Ub2dnbGVTa2V0Y2hlcj17dGhpcy5fb25Ub2dnbGVTa2V0Y2hlcn1cbiAgICAgICAgICAgIHNldEN1c3RvbVBhbGV0dGU9e3RoaXMuX29uU2V0Q3VzdG9tUGFsZXR0ZX1cbiAgICAgICAgICAgIG9uQ2FuY2VsPXt0aGlzLl9vbkN1c3RvbVBhbGV0dGVDYW5jZWx9XG4gICAgICAgICAgLz5cbiAgICAgICAgKSA6IChcbiAgICAgICAgICA8Q29sb3JQYWxldHRlR3JvdXBcbiAgICAgICAgICAgIGNvbG9yUmFuZ2VzPXtmaWx0ZXJlZENvbG9yUmFuZ2VzfVxuICAgICAgICAgICAgb25TZWxlY3Q9e3RoaXMucHJvcHMub25TZWxlY3RDb2xvclJhbmdlfVxuICAgICAgICAgICAgc2VsZWN0ZWQ9e3RoaXMucHJvcHMuc2VsZWN0ZWRDb2xvclJhbmdlfVxuICAgICAgICAgICAgcmV2ZXJzZWQ9e2NvbG9yUmFuZ2VDb25maWcucmV2ZXJzZWR9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvU3R5bGVkQ29sb3JSYW5nZVNlbGVjdG9yPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IFBhbGV0dGVDb25maWcgPSAoe2xhYmVsLCB2YWx1ZSwgY29uZmlnOiB7dHlwZSwgb3B0aW9uc30sIG9uQ2hhbmdlfSkgPT4gKFxuICA8U3R5bGVkUGFsZXR0ZUNvbmZpZyBjbGFzc05hbWU9XCJjb2xvci1wYWxldHRlX19jb25maWdcIiBvbkNsaWNrPXtlID0+IGUuc3RvcFByb3BhZ2F0aW9uKCl9PlxuICAgIDxkaXYgY2xhc3NOYW1lPVwiY29sb3ItcGFsZXR0ZV9fY29uZmlnX19sYWJlbFwiPlxuICAgICAgPFBhbmVsTGFiZWw+XG4gICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXtgY29sb3IuJHtsYWJlbH1gfSAvPlxuICAgICAgPC9QYW5lbExhYmVsPlxuICAgIDwvZGl2PlxuICAgIHt0eXBlID09PSAnc2VsZWN0JyAmJiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbG9yLXBhbGV0dGVfX2NvbmZpZ19fc2VsZWN0XCI+XG4gICAgICAgIDxJdGVtU2VsZWN0b3JcbiAgICAgICAgICBzZWxlY3RlZEl0ZW1zPXt2YWx1ZX1cbiAgICAgICAgICBvcHRpb25zPXtvcHRpb25zfVxuICAgICAgICAgIG11bHRpU2VsZWN0PXtmYWxzZX1cbiAgICAgICAgICBzZWFyY2hhYmxlPXtmYWxzZX1cbiAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICApfVxuICAgIHt0eXBlID09PSAnc3dpdGNoJyAmJiAoXG4gICAgICA8U3dpdGNoIGNoZWNrZWQ9e3ZhbHVlfSBpZD17YCR7bGFiZWx9LXRvZ2dsZWB9IG9uQ2hhbmdlPXsoKSA9PiBvbkNoYW5nZSghdmFsdWUpfSBzZWNvbmRhcnkgLz5cbiAgICApfVxuICA8L1N0eWxlZFBhbGV0dGVDb25maWc+XG4pO1xuXG5jb25zdCBTdHlsZWRDb2xvclJhbmdlID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ2NvbG9yLXBhbGV0dGUtb3V0ZXInXG59KWBcbiAgcGFkZGluZzogMCA4cHg7XG4gIDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmRIb3Zlcn07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5gO1xuXG5leHBvcnQgY29uc3QgQ29sb3JQYWxldHRlR3JvdXAgPSAoe3JldmVyc2VkLCBvblNlbGVjdCwgc2VsZWN0ZWQsIGNvbG9yUmFuZ2VzfSkgPT4gKFxuICA8ZGl2IGNsYXNzTmFtZT1cImNvbG9yLXBhbGV0dGVfX2dyb3VwXCI+XG4gICAge2NvbG9yUmFuZ2VzLm1hcCgoY29sb3JSYW5nZSwgaSkgPT4gKFxuICAgICAgPFN0eWxlZENvbG9yUmFuZ2VcbiAgICAgICAga2V5PXtgJHtjb2xvclJhbmdlLm5hbWV9LSR7aX1gfVxuICAgICAgICBvbkNsaWNrPXtlID0+IG9uU2VsZWN0KHJldmVyc2VkID8gcmV2ZXJzZUNvbG9yUmFuZ2UodHJ1ZSwgY29sb3JSYW5nZSkgOiBjb2xvclJhbmdlLCBlKX1cbiAgICAgID5cbiAgICAgICAgPENvbG9yUGFsZXR0ZVxuICAgICAgICAgIGNvbG9ycz17Y29sb3JSYW5nZS5jb2xvcnN9XG4gICAgICAgICAgaXNSZXZlcnNlZD17cmV2ZXJzZWR9XG4gICAgICAgICAgaXNTZWxlY3RlZD17Y29sb3JSYW5nZS5uYW1lID09PSBzZWxlY3RlZC5uYW1lICYmIHJldmVyc2VkID09PSBCb29sZWFuKHNlbGVjdGVkLnJldmVyc2VkKX1cbiAgICAgICAgLz5cbiAgICAgIDwvU3R5bGVkQ29sb3JSYW5nZT5cbiAgICApKX1cbiAgPC9kaXY+XG4pO1xuIl19
|
|
321
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvY29sb3ItcmFuZ2Utc2VsZWN0b3IuanMiXSwibmFtZXMiOlsiQUxMX1RZUEVTIiwiQ09MT1JfUkFOR0VTIiwibWFwIiwiYyIsInR5cGUiLCJmaWx0ZXIiLCJjdHlwZSIsIkFMTF9TVEVQUyIsImQiLCJjb2xvcnMiLCJsZW5ndGgiLCJzb3J0IiwibnVtYmVyU29ydCIsIlN0eWxlZENvbG9yQ29uZmlnIiwic3R5bGVkIiwiZGl2IiwiU3R5bGVkQ29sb3JSYW5nZVNlbGVjdG9yIiwiYXR0cnMiLCJjbGFzc05hbWUiLCJTdHlsZWRQYWxldHRlQ29uZmlnIiwicHJvcHMiLCJ0aGVtZSIsInNlY29uZGFyeUlucHV0IiwiQ09ORklHX1NFVFRJTkdTX0NVU1RPTV9SRVZFUlNFRF9CVVRUT05fVFlQRSIsIkNPTkZJR19TRVRUSU5HUyIsIm9wdGlvbnMiLCJzdGVwcyIsInJldmVyc2VkIiwiQ29sb3JSYW5nZVNlbGVjdCIsImNvbG9yUmFuZ2VzIiwiY29sb3JQYWxldHRlVUkiLCJjb2xvclJhbmdlQ29uZmlnIiwiY29sb3JSYW5nZXNTZWxlY3RvciIsImNvbmZpZ1R5cGVTZWxlY3RvciIsImNvbmZpZ1N0ZXBTZWxlY3RvciIsImNvbG9yUmFuZ2UiLCJpc1R5cGUiLCJpc1N0ZXAiLCJOdW1iZXIiLCJrZXkiLCJ2YWx1ZSIsIl9zZXRDb2xvclJhbmdlQ29uZmlnIiwiY3VzdG9tIiwiY29uZmlnIiwic2V0Q29sb3JQYWxldHRlVUkiLCJjdXN0b21QYWxldHRlIiwibmV3Q29uZmlnIiwic2hvd1NrZXRjaGVyIiwidmFsIiwiZmlsdGVyZWRDb2xvclJhbmdlcyIsImZpbHRlcmVkQ29sb3JSYW5nZSIsIk9iamVjdCIsImtleXMiLCJCb29sZWFuIiwibGFiZWwiLCJfdXBkYXRlQ29uZmlnIiwic2VsZWN0ZWRDb2xvclJhbmdlIiwib25TZWxlY3RDb2xvclJhbmdlIiwiX29uVG9nZ2xlU2tldGNoZXIiLCJfb25TZXRDdXN0b21QYWxldHRlIiwiX29uQ3VzdG9tUGFsZXR0ZUNhbmNlbCIsIkNvbXBvbmVudCIsIlByb3BUeXBlcyIsIm9iamVjdCIsImlzUmVxdWlyZWQiLCJmdW5jIiwiYXJyYXlPZiIsImFueSIsIlBhbGV0dGVDb25maWciLCJvbkNoYW5nZSIsImUiLCJzdG9wUHJvcGFnYXRpb24iLCJsaW5rIiwiU3R5bGVkQ29sb3JSYW5nZSIsInBhbmVsQmFja2dyb3VuZEhvdmVyIiwiQ29sb3JQYWxldHRlR3JvdXAiLCJvblNlbGVjdCIsInNlbGVjdGVkIiwiaSIsIm5hbWUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFvQkE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7Ozs7Ozs7OztBQUVPLElBQU1BLFNBQVMsR0FBRyx5QkFDdkIsS0FEdUIsNkNBRXBCQywwQkFBYUMsR0FBYixDQUFpQixVQUFBQyxDQUFDO0FBQUEsU0FBSUEsQ0FBQyxDQUFDQyxJQUFOO0FBQUEsQ0FBbEIsRUFBOEJDLE1BQTlCLENBQXFDLFVBQUFDLEtBQUs7QUFBQSxTQUFJQSxLQUFKO0FBQUEsQ0FBMUMsQ0FGb0IsSUFHdkIsUUFIdUIsR0FBbEI7O0FBTUEsSUFBTUMsU0FBUyxHQUFHLHdCQUFLTiwwQkFBYUMsR0FBYixDQUFpQixVQUFBTSxDQUFDO0FBQUEsU0FBSUEsQ0FBQyxDQUFDQyxNQUFGLENBQVNDLE1BQWI7QUFBQSxDQUFsQixDQUFMLEVBQTZDQyxJQUE3QyxDQUFrREMscUJBQWxELENBQWxCOzs7QUFFUCxJQUFNQyxpQkFBaUIsR0FBR0MsNkJBQU9DLEdBQVYsc0hBQXZCOztBQUlBLElBQU1DLHdCQUF3QixHQUFHRiw2QkFBT0MsR0FBUCxDQUFXRSxLQUFYLENBQWlCO0FBQ2hEQyxFQUFBQSxTQUFTLEVBQUU7QUFEcUMsQ0FBakIsQ0FBSCxtSEFBOUI7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QUFHLG1DQUFrQixJQUFsQixFQUF3QlEsVUFBeEIsQ0FBSCxHQUF5Q0EsVUFBbEQsRUFBOERtQyxDQUE5RCxDQUFaO0FBQUE7QUFGWixvQkFJRSxnQ0FBQyx3QkFBRDtBQUNFLE1BQUEsTUFBTSxFQUFFbkMsVUFBVSxDQUFDMUIsTUFEckI7QUFFRSxNQUFBLFVBQVUsRUFBRWtCLFFBRmQ7QUFHRSxNQUFBLFVBQVUsRUFBRVEsVUFBVSxDQUFDNEMsSUFBWCxLQUFvQkYsUUFBUSxDQUFDRSxJQUE3QixJQUFxQ3BELFFBQVEsS0FBSzBCLE9BQU8sQ0FBQ3dCLFFBQVEsQ0FBQ2xELFFBQVYsQ0FIdkU7QUFJRSxNQUFBLFNBQVMsRUFBRTtBQUNULG9CQUFZLElBREg7QUFFVCwwQ0FBMkJtRCxDQUEzQjtBQUZTO0FBSmIsb0JBU0UsZ0NBQUMsMEJBQUQ7QUFBUyxNQUFBLEVBQUUsd0JBQWlCQSxDQUFqQixhQUFYO0FBQXlDLE1BQUEsTUFBTSxFQUFDLE9BQWhEO0FBQXdELE1BQUEsS0FBSyxFQUFDO0FBQTlELE9BQ0czQyxVQUFVLENBQUM0QyxJQURkLENBVEYsQ0FKRixDQURlO0FBQUEsR0FBaEIsQ0FESCxDQUQrQjtBQUFBLENBQTFCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIxIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0LCB7Q29tcG9uZW50fSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHVuaXEgZnJvbSAnbG9kYXNoLnVuaXEnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQge2NyZWF0ZVNlbGVjdG9yfSBmcm9tICdyZXNlbGVjdCc7XG5cbmltcG9ydCBJdGVtU2VsZWN0b3IgZnJvbSAnY29tcG9uZW50cy9jb21tb24vaXRlbS1zZWxlY3Rvci9pdGVtLXNlbGVjdG9yJztcbmltcG9ydCB7UGFuZWxMYWJlbCwgQnV0dG9uLCBUb29sdGlwfSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9zdHlsZWQtY29tcG9uZW50cyc7XG5pbXBvcnQgU3dpdGNoIGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL3N3aXRjaCc7XG5pbXBvcnQgQ29sb3JQYWxldHRlIGZyb20gJy4vY29sb3ItcGFsZXR0ZSc7XG5pbXBvcnQgQ3VzdG9tUGFsZXR0ZSBmcm9tICcuL2N1c3RvbS1wYWxldHRlJztcbmltcG9ydCB7Q09MT1JfUkFOR0VTfSBmcm9tICdjb25zdGFudHMvY29sb3ItcmFuZ2VzJztcbmltcG9ydCB7bnVtYmVyU29ydH0gZnJvbSAndXRpbHMvZGF0YS11dGlscyc7XG5pbXBvcnQge3JldmVyc2VDb2xvclJhbmdlfSBmcm9tICd1dGlscy9jb2xvci11dGlscyc7XG5pbXBvcnQge0Zvcm1hdHRlZE1lc3NhZ2V9IGZyb20gJ2xvY2FsaXphdGlvbic7XG5pbXBvcnQge1N3YXBIb3Jpem9udGFsfSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9pY29ucyc7XG5cbmV4cG9ydCBjb25zdCBBTExfVFlQRVMgPSB1bmlxKFtcbiAgJ2FsbCcsXG4gIC4uLkNPTE9SX1JBTkdFUy5tYXAoYyA9PiBjLnR5cGUpLmZpbHRlcihjdHlwZSA9PiBjdHlwZSksXG4gICdjdXN0b20nXG5dKTtcblxuZXhwb3J0IGNvbnN0IEFMTF9TVEVQUyA9IHVuaXEoQ09MT1JfUkFOR0VTLm1hcChkID0+IGQuY29sb3JzLmxlbmd0aCkpLnNvcnQobnVtYmVyU29ydCk7XG5cbmNvbnN0IFN0eWxlZENvbG9yQ29uZmlnID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogMTJweCAxMnB4IDAgMTJweDtcbmA7XG5cbmNvbnN0IFN0eWxlZENvbG9yUmFuZ2VTZWxlY3RvciA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdjb2xvci1yYW5nZS1zZWxlY3Rvcidcbn0pYFxuICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbmA7XG5cbmNvbnN0IFN0eWxlZFBhbGV0dGVDb25maWcgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLmNvbG9yLXBhbGV0dGVfX2NvbmZpZ19fbGFiZWwge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuICAuY29sb3ItcGFsZXR0ZV9fY29uZmlnX19zZWxlY3Qge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuICAuaXRlbS1zZWxlY3RvciAuaXRlbS1zZWxlY3Rvcl9fZHJvcGRvd24ge1xuICAgICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuc2Vjb25kYXJ5SW5wdXR9O1xuICB9XG4gIC5jb2xvci1wYWxldHRlX19jb25maWdfX2J1dHRvbiB7XG4gICAgc3ZnIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbmA7XG5cbmNvbnN0IENPTkZJR19TRVRUSU5HU19DVVNUT01fUkVWRVJTRURfQlVUVE9OX1RZUEUgPSAnY3VzdG9tLXJldmVyc2VkLWJ1dHRvbic7XG5cbmNvbnN0IENPTkZJR19TRVRUSU5HUyA9IHtcbiAgdHlwZToge1xuICAgIHR5cGU6ICdzZWxlY3QnLFxuICAgIG9wdGlvbnM6IEFMTF9UWVBFU1xuICB9LFxuICBzdGVwczoge1xuICAgIHR5cGU6ICdzZWxlY3QnLFxuICAgIG9wdGlvbnM6IEFMTF9TVEVQU1xuICB9LFxuICByZXZlcnNlZDoge1xuICAgIHR5cGU6IENPTkZJR19TRVRUSU5HU19DVVNUT01fUkVWRVJTRURfQlVUVE9OX1RZUEUsXG4gICAgb3B0aW9uczogW3RydWUsIGZhbHNlXVxuICB9XG59O1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb2xvclJhbmdlU2VsZWN0IGV4dGVuZHMgQ29tcG9uZW50IHtcbiAgc3RhdGljIHByb3BUeXBlcyA9IHtcbiAgICBjb2xvclBhbGV0dGVVSTogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICAgIHNlbGVjdGVkQ29sb3JSYW5nZTogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICAgIG9uU2VsZWN0Q29sb3JSYW5nZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICBzZXRDb2xvclBhbGV0dGVVSTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICAvLyBvcHRpb25hbFxuICAgIGNvbG9yUmFuZ2VzOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuYW55KVxuICB9O1xuXG4gIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgY29sb3JSYW5nZXM6IENPTE9SX1JBTkdFUyxcbiAgICBvblNlbGVjdENvbG9yUmFuZ2U6ICgpID0+IHt9LFxuICAgIHNldENvbG9yUGFsZXR0ZVVJOiAoKSA9PiB7fVxuICB9O1xuXG4gIGNvbG9yUmFuZ2VzU2VsZWN0b3IgPSBwcm9wcyA9PiBwcm9wcy5jb2xvclJhbmdlcztcbiAgY29uZmlnVHlwZVNlbGVjdG9yID0gcHJvcHMgPT4gcHJvcHMuY29sb3JQYWxldHRlVUkuY29sb3JSYW5nZUNvbmZpZy50eXBlO1xuICBjb25maWdTdGVwU2VsZWN0b3IgPSBwcm9wcyA9PiBwcm9wcy5jb2xvclBhbGV0dGVVSS5jb2xvclJhbmdlQ29uZmlnLnN0ZXBzO1xuICBmaWx0ZXJlZENvbG9yUmFuZ2UgPSBjcmVhdGVTZWxlY3RvcihcbiAgICB0aGlzLmNvbG9yUmFuZ2VzU2VsZWN0b3IsXG4gICAgdGhpcy5jb25maWdUeXBlU2VsZWN0b3IsXG4gICAgdGhpcy5jb25maWdTdGVwU2VsZWN0b3IsXG4gICAgKGNvbG9yUmFuZ2VzLCB0eXBlLCBzdGVwcykgPT4ge1xuICAgICAgcmV0dXJuIGNvbG9yUmFuZ2VzLmZpbHRlcihjb2xvclJhbmdlID0+IHtcbiAgICAgICAgY29uc3QgaXNUeXBlID0gdHlwZSA9PT0gJ2FsbCcgfHwgdHlwZSA9PT0gY29sb3JSYW5nZS50eXBlO1xuICAgICAgICBjb25zdCBpc1N0ZXAgPSBOdW1iZXIoc3RlcHMpID09PSBjb2xvclJhbmdlLmNvbG9ycy5sZW5ndGg7XG5cbiAgICAgICAgcmV0dXJuIGlzVHlwZSAmJiBpc1N0ZXA7XG4gICAgICB9KTtcbiAgICB9XG4gICk7XG5cbiAgX3VwZGF0ZUNvbmZpZyA9ICh7a2V5LCB2YWx1ZX0pID0+IHtcbiAgICB0aGlzLl9zZXRDb2xvclJhbmdlQ29uZmlnKHtcbiAgICAgIFtrZXldOiB2YWx1ZSxcbiAgICAgIC4uLihrZXkgPT09ICd0eXBlJyAmJiB7Y3VzdG9tOiB2YWx1ZSA9PT0gJ2N1c3RvbSd9KVxuICAgIH0pO1xuICB9O1xuXG4gIF9vblNldEN1c3RvbVBhbGV0dGUgPSBjb25maWcgPT4ge1xuICAgIHRoaXMucHJvcHMuc2V0Q29sb3JQYWxldHRlVUkoe1xuICAgICAgY3VzdG9tUGFsZXR0ZTogY29uZmlnXG4gICAgfSk7XG4gIH07XG5cbiAgX3NldENvbG9yUmFuZ2VDb25maWcgPSBuZXdDb25maWcgPT4ge1xuICAgIHRoaXMucHJvcHMuc2V0Q29sb3JQYWxldHRlVUkoe1xuICAgICAgY29sb3JSYW5nZUNvbmZpZzogbmV3Q29uZmlnXG4gICAgfSk7XG4gIH07XG5cbiAgX29uQ3VzdG9tUGFsZXR0ZUNhbmNlbCA9IG5ld0NvbmZpZyA9PiB7XG4gICAgdGhpcy5wcm9wcy5zZXRDb2xvclBhbGV0dGVVSSh7XG4gICAgICBzaG93U2tldGNoZXI6IGZhbHNlLFxuICAgICAgY29sb3JSYW5nZUNvbmZpZzoge2N1c3RvbTogZmFsc2V9XG4gICAgfSk7XG4gIH07XG5cbiAgX29uVG9nZ2xlU2tldGNoZXIgPSB2YWwgPT4ge1xuICAgIHRoaXMucHJvcHMuc2V0Q29sb3JQYWxldHRlVUkoe1xuICAgICAgc2hvd1NrZXRjaGVyOiB2YWxcbiAgICB9KTtcbiAgfTtcblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qge2N1c3RvbVBhbGV0dGUsIHNob3dTa2V0Y2hlciwgY29sb3JSYW5nZUNvbmZpZ30gPSB0aGlzLnByb3BzLmNvbG9yUGFsZXR0ZVVJO1xuXG4gICAgY29uc3QgZmlsdGVyZWRDb2xvclJhbmdlcyA9IHRoaXMuZmlsdGVyZWRDb2xvclJhbmdlKHRoaXMucHJvcHMpO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxTdHlsZWRDb2xvclJhbmdlU2VsZWN0b3I+XG4gICAgICAgIDxTdHlsZWRDb2xvckNvbmZpZyBjbGFzc05hbWU9XCJjb2xvci1yYW5nZS1zZWxlY3Rvcl9fY29uZmlnXCI+XG4gICAgICAgICAge09iamVjdC5rZXlzKGNvbG9yUmFuZ2VDb25maWcpXG4gICAgICAgICAgICAuZmlsdGVyKFxuICAgICAgICAgICAgICBrZXkgPT5cbiAgICAgICAgICAgICAgICBCb29sZWFuKENPTkZJR19TRVRUSU5HU1trZXldKSAmJiAoY29sb3JSYW5nZUNvbmZpZy5jdXN0b20gPyBrZXkgPT09ICd0eXBlJyA6IHRydWUpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAubWFwKGtleSA9PiAoXG4gICAgICAgICAgICAgIDxQYWxldHRlQ29uZmlnXG4gICAgICAgICAgICAgICAga2V5PXtrZXl9XG4gICAgICAgICAgICAgICAgbGFiZWw9e0NPTkZJR19TRVRUSU5HU1trZXldLmxhYmVsIHx8IGtleX1cbiAgICAgICAgICAgICAgICBjb25maWc9e0NPTkZJR19TRVRUSU5HU1trZXldfVxuICAgICAgICAgICAgICAgIHZhbHVlPXtjb2xvclJhbmdlQ29uZmlnW2tleV19XG4gICAgICAgICAgICAgICAgb25DaGFuZ2U9e3ZhbHVlID0+IHRoaXMuX3VwZGF0ZUNvbmZpZyh7a2V5LCB2YWx1ZX0pfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKSl9XG4gICAgICAgIDwvU3R5bGVkQ29sb3JDb25maWc+XG5cbiAgICAgICAge2NvbG9yUmFuZ2VDb25maWcuY3VzdG9tID8gKFxuICAgICAgICAgIDxDdXN0b21QYWxldHRlXG4gICAgICAgICAgICBjdXN0b21QYWxldHRlPXtjdXN0b21QYWxldHRlfVxuICAgICAgICAgICAgc2hvd1NrZXRjaGVyPXtzaG93U2tldGNoZXJ9XG4gICAgICAgICAgICBzZWxlY3RlZD17dGhpcy5wcm9wcy5zZWxlY3RlZENvbG9yUmFuZ2V9XG4gICAgICAgICAgICBvbkFwcGx5PXt0aGlzLnByb3BzLm9uU2VsZWN0Q29sb3JSYW5nZX1cbiAgICAgICAgICAgIG9uVG9nZ2xlU2tldGNoZXI9e3RoaXMuX29uVG9nZ2xlU2tldGNoZXJ9XG4gICAgICAgICAgICBzZXRDdXN0b21QYWxldHRlPXt0aGlzLl9vblNldEN1c3RvbVBhbGV0dGV9XG4gICAgICAgICAgICBvbkNhbmNlbD17dGhpcy5fb25DdXN0b21QYWxldHRlQ2FuY2VsfVxuICAgICAgICAgIC8+XG4gICAgICAgICkgOiAoXG4gICAgICAgICAgPENvbG9yUGFsZXR0ZUdyb3VwXG4gICAgICAgICAgICBjb2xvclJhbmdlcz17ZmlsdGVyZWRDb2xvclJhbmdlc31cbiAgICAgICAgICAgIG9uU2VsZWN0PXt0aGlzLnByb3BzLm9uU2VsZWN0Q29sb3JSYW5nZX1cbiAgICAgICAgICAgIHNlbGVjdGVkPXt0aGlzLnByb3BzLnNlbGVjdGVkQ29sb3JSYW5nZX1cbiAgICAgICAgICAgIHJldmVyc2VkPXtjb2xvclJhbmdlQ29uZmlnLnJldmVyc2VkfVxuICAgICAgICAgIC8+XG4gICAgICAgICl9XG4gICAgICA8L1N0eWxlZENvbG9yUmFuZ2VTZWxlY3Rvcj5cbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBQYWxldHRlQ29uZmlnID0gKHtsYWJlbCwgdmFsdWUsIGNvbmZpZzoge3R5cGUsIG9wdGlvbnN9LCBvbkNoYW5nZX0pID0+IChcbiAgPFN0eWxlZFBhbGV0dGVDb25maWdcbiAgICBjbGFzc05hbWU9e2Bjb2xvci1wYWxldHRlX19jb25maWcgY29sb3ItcGFsZXR0ZV9fY29uZmlnLS0ke2xhYmVsfWB9XG4gICAgb25DbGljaz17ZSA9PiBlLnN0b3BQcm9wYWdhdGlvbigpfVxuICA+XG4gICAgPGRpdiBjbGFzc05hbWU9XCJjb2xvci1wYWxldHRlX19jb25maWdfX2xhYmVsXCI+XG4gICAgICB7dHlwZSAhPT0gQ09ORklHX1NFVFRJTkdTX0NVU1RPTV9SRVZFUlNFRF9CVVRUT05fVFlQRSAmJiAoXG4gICAgICAgIDxQYW5lbExhYmVsPlxuICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlIGlkPXtgY29sb3IuJHtsYWJlbH1gfSAvPlxuICAgICAgICA8L1BhbmVsTGFiZWw+XG4gICAgICApfVxuICAgIDwvZGl2PlxuICAgIHt0eXBlID09PSAnc2VsZWN0JyAmJiAoXG4gICAgICA8ZGl2IGNsYXNzTmFtZT1cImNvbG9yLXBhbGV0dGVfX2NvbmZpZ19fc2VsZWN0XCI+XG4gICAgICAgIDxJdGVtU2VsZWN0b3JcbiAgICAgICAgICBzZWxlY3RlZEl0ZW1zPXt2YWx1ZX1cbiAgICAgICAgICBvcHRpb25zPXtvcHRpb25zfVxuICAgICAgICAgIG11bHRpU2VsZWN0PXtmYWxzZX1cbiAgICAgICAgICBzZWFyY2hhYmxlPXtmYWxzZX1cbiAgICAgICAgICBvbkNoYW5nZT17b25DaGFuZ2V9XG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICApfVxuICAgIHt0eXBlID09PSAnc3dpdGNoJyAmJiAoXG4gICAgICA8U3dpdGNoIGNoZWNrZWQ9e3ZhbHVlfSBpZD17YCR7bGFiZWx9LXRvZ2dsZWB9IG9uQ2hhbmdlPXsoKSA9PiBvbkNoYW5nZSghdmFsdWUpfSBzZWNvbmRhcnkgLz5cbiAgICApfVxuICAgIHt0eXBlID09PSBDT05GSUdfU0VUVElOR1NfQ1VTVE9NX1JFVkVSU0VEX0JVVFRPTl9UWVBFICYmIChcbiAgICAgIDxCdXR0b25cbiAgICAgICAgY2xhc3NOYW1lPXtgY29sb3ItcGFsZXR0ZV9fY29uZmlnX19idXR0b24gJHtcbiAgICAgICAgICB2YWx1ZSA/ICdjb2xvci1wYWxldHRlX19jb25maWdfX2J1dHRvbi0tYWN0aXZlJyA6ICcnXG4gICAgICAgIH1gfVxuICAgICAgICBkYXRhLXRpcFxuICAgICAgICBkYXRhLWZvcj17YCR7bGFiZWx9LXRvb2x0aXBgfVxuICAgICAgICB7Li4uKCF2YWx1ZSAmJiB7bGluazogdHJ1ZX0pfVxuICAgICAgICBvbkNsaWNrPXsoKSA9PiBvbkNoYW5nZSghdmFsdWUpfVxuICAgICAgPlxuICAgICAgICA8U3dhcEhvcml6b250YWwgLz5cbiAgICAgICAgPFRvb2x0aXAgaWQ9e2Ake2xhYmVsfS10b29sdGlwYH0gZWZmZWN0PVwic29saWRcIiBwbGFjZT1cInRvcFwiPlxuICAgICAgICAgIHtsYWJlbH1cbiAgICAgICAgPC9Ub29sdGlwPlxuICAgICAgPC9CdXR0b24+XG4gICAgKX1cbiAgPC9TdHlsZWRQYWxldHRlQ29uZmlnPlxuKTtcblxuY29uc3QgU3R5bGVkQ29sb3JSYW5nZSA9IHN0eWxlZC5kaXYuYXR0cnMoe1xuICBjbGFzc05hbWU6ICdjb2xvci1wYWxldHRlLW91dGVyJ1xufSlgXG4gIHBhZGRpbmc6IDAgOHB4O1xuICA6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kSG92ZXJ9O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IENvbG9yUGFsZXR0ZUdyb3VwID0gKHtyZXZlcnNlZCwgb25TZWxlY3QsIHNlbGVjdGVkLCBjb2xvclJhbmdlc30pID0+IChcbiAgPGRpdiBjbGFzc05hbWU9XCJjb2xvci1wYWxldHRlX19ncm91cFwiPlxuICAgIHtjb2xvclJhbmdlcy5tYXAoKGNvbG9yUmFuZ2UsIGkpID0+IChcbiAgICAgIDxTdHlsZWRDb2xvclJhbmdlXG4gICAgICAgIGtleT17YCR7Y29sb3JSYW5nZS5uYW1lfS0ke2l9YH1cbiAgICAgICAgb25DbGljaz17ZSA9PiBvblNlbGVjdChyZXZlcnNlZCA/IHJldmVyc2VDb2xvclJhbmdlKHRydWUsIGNvbG9yUmFuZ2UpIDogY29sb3JSYW5nZSwgZSl9XG4gICAgICA+XG4gICAgICAgIDxDb2xvclBhbGV0dGVcbiAgICAgICAgICBjb2xvcnM9e2NvbG9yUmFuZ2UuY29sb3JzfVxuICAgICAgICAgIGlzUmV2ZXJzZWQ9e3JldmVyc2VkfVxuICAgICAgICAgIGlzU2VsZWN0ZWQ9e2NvbG9yUmFuZ2UubmFtZSA9PT0gc2VsZWN0ZWQubmFtZSAmJiByZXZlcnNlZCA9PT0gQm9vbGVhbihzZWxlY3RlZC5yZXZlcnNlZCl9XG4gICAgICAgICAgcm9vdFByb3BzPXt7XG4gICAgICAgICAgICAnZGF0YS10aXAnOiB0cnVlLFxuICAgICAgICAgICAgJ2RhdGEtZm9yJzogYGNvbG9yLXJhbmdlLSR7aX0tdG9vbHRpcGBcbiAgICAgICAgICB9fVxuICAgICAgICA+XG4gICAgICAgICAgPFRvb2x0aXAgaWQ9e2Bjb2xvci1yYW5nZS0ke2l9LXRvb2x0aXBgfSBlZmZlY3Q9XCJzb2xpZFwiIHBsYWNlPVwidG9wXCI+XG4gICAgICAgICAgICB7Y29sb3JSYW5nZS5uYW1lfVxuICAgICAgICAgIDwvVG9vbHRpcD5cbiAgICAgICAgPC9Db2xvclBhbGV0dGU+XG4gICAgICA8L1N0eWxlZENvbG9yUmFuZ2U+XG4gICAgKSl9XG4gIDwvZGl2PlxuKTtcbiJdfQ==
|
|
@@ -49,6 +49,8 @@ var _customPicker = _interopRequireDefault(require("./custom-picker"));
|
|
|
49
49
|
|
|
50
50
|
var _dataUtils = require("../../../utils/data-utils");
|
|
51
51
|
|
|
52
|
+
var _reactIntl = require("react-intl");
|
|
53
|
+
|
|
52
54
|
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
|
|
53
55
|
|
|
54
56
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
|
|
@@ -93,7 +95,9 @@ var StyledColorRange = _styledComponents["default"].div(_templateObject7 || (_te
|
|
|
93
95
|
|
|
94
96
|
var StyledButtonContainer = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n margin-top: 11px;\n display: flex;\n direction: rtl;\n"])));
|
|
95
97
|
|
|
96
|
-
var StyledInlineInput = _styledComponents["default"].div(
|
|
98
|
+
var StyledInlineInput = _styledComponents["default"].div.attrs({
|
|
99
|
+
className: 'custom-palette__input'
|
|
100
|
+
})(_templateObject9 || (_templateObject9 = (0, _taggedTemplateLiteral2["default"])(["\n margin-left: 12px;\n input {\n color: ", ";\n font-size: 10px;\n }\n"])), function (props) {
|
|
97
101
|
return props.theme.textColorHl;
|
|
98
102
|
});
|
|
99
103
|
|
|
@@ -175,8 +179,6 @@ var CustomPalette = /*#__PURE__*/function (_Component) {
|
|
|
175
179
|
event.stopPropagation();
|
|
176
180
|
event.preventDefault();
|
|
177
181
|
|
|
178
|
-
_this.props.onCancel();
|
|
179
|
-
|
|
180
182
|
_this.props.onApply(_this.props.customPalette, event);
|
|
181
183
|
});
|
|
182
184
|
(0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "_onSortEnd", function (_ref4) {
|
|
@@ -258,24 +260,36 @@ var CustomPalette = /*#__PURE__*/function (_Component) {
|
|
|
258
260
|
},
|
|
259
261
|
id: "input-layer-label-".concat(index)
|
|
260
262
|
})), /*#__PURE__*/_react["default"].createElement(StyledTrash, {
|
|
263
|
+
className: "custom-palette__trash",
|
|
261
264
|
onClick: function onClick() {
|
|
262
265
|
return _this2._onColorDelete(index);
|
|
263
266
|
}
|
|
264
267
|
}, /*#__PURE__*/_react["default"].createElement(_icons.Trash, {
|
|
265
268
|
className: "trashbin"
|
|
266
269
|
})));
|
|
267
|
-
})), /*#__PURE__*/_react["default"].createElement(
|
|
270
|
+
})), /*#__PURE__*/_react["default"].createElement("div", {
|
|
271
|
+
className: "custom-palette-actions"
|
|
272
|
+
}, /*#__PURE__*/_react["default"].createElement(_styledComponents2.Button, {
|
|
268
273
|
className: "add-step__button",
|
|
269
274
|
link: true,
|
|
270
275
|
onClick: this._onColorAdd
|
|
271
|
-
},
|
|
276
|
+
}, /*#__PURE__*/_react["default"].createElement(_reactIntl.FormattedMessage, {
|
|
277
|
+
id: "customPalette.addStep"
|
|
278
|
+
})), /*#__PURE__*/_react["default"].createElement(StyledLine, {
|
|
279
|
+
className: "custom-palette-actions__separator"
|
|
280
|
+
}), /*#__PURE__*/_react["default"].createElement(StyledButtonContainer, null, /*#__PURE__*/_react["default"].createElement(_styledComponents2.Button, {
|
|
272
281
|
className: "confirm-apply__button",
|
|
273
282
|
link: true,
|
|
274
283
|
onClick: this._onApply
|
|
275
|
-
},
|
|
284
|
+
}, /*#__PURE__*/_react["default"].createElement(_reactIntl.FormattedMessage, {
|
|
285
|
+
id: "customPalette.apply"
|
|
286
|
+
})), /*#__PURE__*/_react["default"].createElement(_styledComponents2.Button, {
|
|
287
|
+
className: "cancel-apply__button",
|
|
276
288
|
link: true,
|
|
277
289
|
onClick: this.props.onCancel
|
|
278
|
-
},
|
|
290
|
+
}, /*#__PURE__*/_react["default"].createElement(_reactIntl.FormattedMessage, {
|
|
291
|
+
id: "customPalette.cancel"
|
|
292
|
+
})))), /*#__PURE__*/_react["default"].createElement(_portaled["default"], {
|
|
279
293
|
isOpened: this.props.showSketcher !== false,
|
|
280
294
|
left: 280,
|
|
281
295
|
top: -300
|
|
@@ -301,4 +315,4 @@ var CustomPalette = /*#__PURE__*/function (_Component) {
|
|
|
301
315
|
});
|
|
302
316
|
var _default = CustomPalette;
|
|
303
317
|
exports["default"] = _default;
|
|
304
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvY3VzdG9tLXBhbGV0dGUuanMiXSwibmFtZXMiOlsiZHJhZ0hhbmRsZUFjdGl2ZSIsImNzcyIsInByb3BzIiwidGhlbWUiLCJ0ZXh0Q29sb3JIbCIsIlN0eWxlZFNvcnRhYmxlSXRlbSIsInN0eWxlZCIsImRpdiIsImRyb3Bkb3duV3JhcHBlcloiLCJwYW5lbEJhY2tncm91bmRIb3ZlciIsIlN0eWxlZERyYWdIYW5kbGUiLCJTdHlsZWRUcmFzaCIsInRleHRDb2xvciIsInN1YnRleHRDb2xvckFjdGl2ZSIsIlN0eWxlZExpbmUiLCJsYWJlbENvbG9yIiwiU3R5bGVkU3dhdGNoIiwiYXR0cnMiLCJjbGFzc05hbWUiLCJjb2xvciIsImJveFNoYWRvdyIsIlN0eWxlZENvbG9yUmFuZ2UiLCJTdHlsZWRCdXR0b25Db250YWluZXIiLCJTdHlsZWRJbmxpbmVJbnB1dCIsIlNvcnRhYmxlSXRlbSIsImNoaWxkcmVuIiwiaXNTb3J0aW5nIiwic29ydGluZyIsIldyYXBwZWRTb3J0YWJsZUNvbnRhaW5lciIsIkRyYWdIYW5kbGUiLCJDdXN0b21QYWxldHRlIiwiY29sb3JzIiwiY3VzdG9tUGFsZXR0ZSIsIm5ld0NvbG9ycyIsInNob3dTa2V0Y2hlciIsImhleCIsIl9zZXRDb2xvclBhbGV0dGVVSSIsImluZGV4IiwibGVuZ3RoIiwic3BsaWNlIiwib25Ub2dnbGVTa2V0Y2hlciIsImV2ZW50Iiwic3RvcFByb3BhZ2F0aW9uIiwicHJldmVudERlZmF1bHQiLCJvbkNhbmNlbCIsIm9uQXBwbHkiLCJvbGRJbmRleCIsIm5ld0luZGV4Iiwic2V0U3RhdGUiLCJ2YWx1ZSIsInRhcmdldCIsInRvVXBwZXJDYXNlIiwic2V0Q3VzdG9tUGFsZXR0ZSIsInJvb3QiLCJfb25Tb3J0RW5kIiwiX29uU29ydFN0YXJ0IiwibWFwIiwic3RhdGUiLCJfb25Td2F0Y2hDbGljayIsImUiLCJfaW5wdXRDb2xvckhleCIsIl9vbkNvbG9yRGVsZXRlIiwiX29uQ29sb3JBZGQiLCJfb25BcHBseSIsIl9vblBpY2tlclVwZGF0ZSIsIl9vblN3YXRjaENsb3NlIiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwic2hhcGUiLCJuYW1lIiwic3RyaW5nIiwidHlwZSIsImNhdGVnb3J5IiwiYXJyYXlPZiIsImZ1bmMiLCJvbmVPZlR5cGUiLCJib29sIiwibnVtYmVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFFQSxJQUFNQSxnQkFBZ0IsT0FBR0MscUJBQUgsOEtBRVQsVUFBQUMsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZQyxXQUFoQjtBQUFBLENBRkksQ0FBdEI7O0FBUUEsSUFBTUMsa0JBQWtCLEdBQUdDLDZCQUFPQyxHQUFWLHFXQUtYLFVBQUFMLEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQU4sQ0FBWUssZ0JBQVosR0FBK0IsQ0FBbkM7QUFBQSxDQUxNLEVBU0UsVUFBQU4sS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZTSxvQkFBaEI7QUFBQSxDQVRQLEVBVWhCVCxnQkFWZ0IsRUFlQSxVQUFBRSxLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDQyxLQUFOLENBQVlNLG9CQUFoQjtBQUFBLENBZkwsRUFnQmxCVCxnQkFoQmtCLENBQXhCOztBQW9CQSxJQUFNVSxnQkFBZ0IsR0FBR0osNkJBQU9DLEdBQVYsbUpBQXRCOztBQU1BLElBQU1JLFdBQVcsR0FBR0wsNkJBQU9DLEdBQVYsdVFBQ04sVUFBQUwsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZUyxTQUFoQjtBQUFBLENBREMsRUFJRixVQUFBVixLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDQyxLQUFOLENBQVlVLGtCQUFoQjtB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IFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0LCB7Q29tcG9uZW50LCBjcmVhdGVSZWZ9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBzdHlsZWQsIHtjc3N9IGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7U29ydGFibGVDb250YWluZXIsIFNvcnRhYmxlRWxlbWVudCwgU29ydGFibGVIYW5kbGV9IGZyb20gJ3JlYWN0LXNvcnRhYmxlLWhvYyc7XG5pbXBvcnQgUG9ydGFsZWQgZnJvbSAnY29tcG9uZW50cy9jb21tb24vcG9ydGFsZWQnO1xuXG5pbXBvcnQge0J1dHRvbiwgSW5saW5lSW5wdXR9IGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7VmVydERvdHMsIFRyYXNofSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9pY29ucyc7XG5pbXBvcnQgQ29sb3JQYWxldHRlIGZyb20gJy4vY29sb3ItcGFsZXR0ZSc7XG5pbXBvcnQgQ3VzdG9tUGlja2VyIGZyb20gJy4vY3VzdG9tLXBpY2tlcic7XG5pbXBvcnQge2FycmF5TW92ZX0gZnJvbSAndXRpbHMvZGF0YS11dGlscyc7XG5cbmNvbnN0IGRyYWdIYW5kbGVBY3RpdmUgPSBjc3NgXG4gIC5sYXllcl9fZHJhZy1oYW5kbGUge1xuICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGN1cnNvcjogbW92ZTtcbiAgfVxuYDtcblxuY29uc3QgU3R5bGVkU29ydGFibGVJdGVtID0gc3R5bGVkLmRpdmBcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDZweDtcbiAgcGFkZGluZy1ib3R0b206IDZweDtcbiAgei1pbmRleDogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5kcm9wZG93bldyYXBwZXJaICsgMX07XG5cbiAgOm5vdCguc29ydGluZykge1xuICAgIDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZEhvdmVyfTtcbiAgICAgICR7ZHJhZ0hhbmRsZUFjdGl2ZX07XG4gICAgfVxuICB9XG5cbiAgJi5zb3J0aW5nLWNvbG9ycyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmRIb3Zlcn07XG4gICAgJHtkcmFnSGFuZGxlQWN0aXZlfTtcbiAgfVxuYDtcblxuY29uc3QgU3R5bGVkRHJhZ0hhbmRsZSA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDA7XG5gO1xuXG5jb25zdCBTdHlsZWRUcmFzaCA9IHN0eWxlZC5kaXZgXG4gIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvcn07XG4gIHN2ZyB7XG4gICAgOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnN1YnRleHRDb2xvckFjdGl2ZX07XG4gICAgfVxuICB9XG4gIGhlaWdodDogMTJweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMTJweDtcbiAgOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbmA7XG5cbmNvbnN0IFN0eWxlZExpbmUgPSBzdHlsZWQuZGl2YFxuICB3aWR0aDogY2FsYygxMDAlIC0gMTZweCk7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmxhYmVsQ29sb3J9O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG5gO1xuXG5jb25zdCBTdHlsZWRTd2F0Y2ggPSBzdHlsZWQuZGl2LmF0dHJzKHtcbiAgY2xhc3NOYW1lOiAnY3VzdG9tLXBhbGV0dGVfX3N3YXRjaCdcbn0pYFxuICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLmNvbG9yfTtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMThweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICA6aG92ZXIge1xuICAgIGJveC1zaGFkb3c6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuYm94U2hhZG93fTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbmA7XG5cbmNvbnN0IFN0eWxlZENvbG9yUmFuZ2UgPSBzdHlsZWQuZGl2YFxuICBwYWRkaW5nOiAwIDhweDtcbiAgOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnBhbmVsQmFja2dyb3VuZEhvdmVyfTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbmA7XG5cbmNvbnN0IFN0eWxlZEJ1dHRvbkNvbnRhaW5lciA9IHN0eWxlZC5kaXZgXG4gIG1hcmdpbi10b3A6IDExcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpcmVjdGlvbjogcnRsO1xuYDtcblxuY29uc3QgU3R5bGVkSW5saW5lSW5wdXQgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tbGVmdDogMTJweDtcbiAgaW5wdXQge1xuICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbmA7XG5cbmNvbnN0IFNvcnRhYmxlSXRlbSA9IFNvcnRhYmxlRWxlbWVudCgoe2NoaWxkcmVuLCBpc1NvcnRpbmd9KSA9PiAoXG4gIDxTdHlsZWRTb3J0YWJsZUl0ZW1cbiAgICBjbGFzc05hbWU9e2NsYXNzbmFtZXMoJ2N1c3RvbS1wYWxldHRlX19zb3J0YWJsZS1pdGVtcycsIHtzb3J0aW5nOiBpc1NvcnRpbmd9KX1cbiAgPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdHlsZWRTb3J0YWJsZUl0ZW0+XG4pKTtcblxuLy8gVE9ETzogU2hvdWxkIGNsYXNzTmFtZSBiZSBhcHBsaWVkIHRvIHRoZSBkaXYgaGVyZT9cbmNvbnN0IFdyYXBwZWRTb3J0YWJsZUNvbnRhaW5lciA9IFNvcnRhYmxlQ29udGFpbmVyKCh7Y2hpbGRyZW4sIGNsYXNzTmFtZX0pID0+IChcbiAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+e2NoaWxkcmVufTwvZGl2PlxuKSk7XG5cbmNvbnN0IERyYWdIYW5kbGUgPSBTb3J0YWJsZUhhbmRsZSgoe2NsYXNzTmFtZSwgY2hpbGRyZW59KSA9PiAoXG4gIDxTdHlsZWREcmFnSGFuZGxlIGNsYXNzTmFtZT17Y2xhc3NOYW1lfT57Y2hpbGRyZW59PC9TdHlsZWREcmFnSGFuZGxlPlxuKSk7XG5cbmNsYXNzIEN1c3RvbVBhbGV0dGUgZXh0ZW5kcyBDb21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIGN1c3RvbVBhbGV0dGU6IFByb3BUeXBlcy5zaGFwZSh7XG4gICAgICBuYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgdHlwZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgIGNhdGVnb3J5OiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgY29sb3JzOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc3RyaW5nKVxuICAgIH0pLFxuICAgIHNldEN1c3RvbVBhbGV0dGU6IFByb3BUeXBlcy5mdW5jLFxuICAgIHNob3dTa2V0Y2hlcjogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLmJvb2wsIFByb3BUeXBlcy5udW1iZXJdKVxuICB9O1xuXG4gIHN0YXRlID0ge1xuICAgIGlzU29ydGluZzogZmFsc2VcbiAgfTtcblxuICByb290ID0gY3JlYXRlUmVmKCk7XG5cbiAgX3NldENvbG9yUGFsZXR0ZVVJKGNvbG9ycykge1xuICAgIHRoaXMucHJvcHMuc2V0Q3VzdG9tUGFsZXR0ZSh7XG4gICAgICBjb2xvcnNcbiAgICB9KTtcbiAgfVxuXG4gIF9vblBpY2tlclVwZGF0ZSA9IGNvbG9yID0+IHtcbiAgICBjb25zdCB7Y29sb3JzfSA9IHRoaXMucHJvcHMuY3VzdG9tUGFsZXR0ZTtcbiAgICBjb25zdCBuZXdDb2xvcnMgPSBbLi4uY29sb3JzXTtcbiAgICBuZXdDb2xvcnNbdGhpcy5wcm9wcy5zaG93U2tldGNoZXJdID0gY29sb3IuaGV4O1xuICAgIHRoaXMuX3NldENvbG9yUGFsZXR0ZVVJKG5ld0NvbG9ycyk7XG4gIH07XG5cbiAgX29uQ29sb3JEZWxldGUgPSBpbmRleCA9PiB7XG4gICAgY29uc3Qge2NvbG9yc30gPSB0aGlzLnByb3BzLmN1c3RvbVBhbGV0dGU7XG4gICAgY29uc3QgbmV3Q29sb3JzID0gWy4uLmNvbG9yc107XG4gICAgaWYgKG5ld0NvbG9ycy5sZW5ndGggPiAxKSB7XG4gICAgICBuZXdDb2xvcnMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICB9XG4gICAgdGhpcy5fc2V0Q29sb3JQYWxldHRlVUkobmV3Q29sb3JzKTtcbiAgfTtcblxuICBfb25Db2xvckFkZCA9ICgpID0+IHtcbiAgICBjb25zdCB7Y29sb3JzfSA9IHRoaXMucHJvcHMuY3VzdG9tUGFsZXR0ZTtcbiAgICAvLyBhZGQgdGhlIGxhc3QgY29sb3JcbiAgICBjb25zdCBuZXdDb2xvcnMgPSBbLi4uY29sb3JzLCBjb2xvcnNbY29sb3JzLmxlbmd0aCAtIDFdXTtcbiAgICB0aGlzLl9zZXRDb2xvclBhbGV0dGVVSShuZXdDb2xvcnMpO1xuICB9O1xuXG4gIF9vblN3YXRjaENsaWNrID0gaW5kZXggPT4ge1xuICAgIHRoaXMucHJvcHMub25Ub2dnbGVTa2V0Y2hlcihpbmRleCk7XG4gIH07XG5cbiAgX29uU3dhdGNoQ2xvc2UgPSAoKSA9PiB7XG4gICAgdGhpcy5wcm9wcy5vblRvZ2dsZVNrZXRjaGVyKGZhbHNlKTtcbiAgfTtcblxuICBfb25BcHBseSA9IGV2ZW50ID0+IHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMucHJvcHMub25DYW5jZWwoKTtcbiAgICB0aGlzLnByb3BzLm9uQXBwbHkodGhpcy5wcm9wcy5jdXN0b21QYWxldHRlLCBldmVudCk7XG4gIH07XG5cbiAgX29uU29ydEVuZCA9ICh7b2xkSW5kZXgsIG5ld0luZGV4fSkgPT4ge1xuICAgIGNvbnN0IHtjb2xvcnN9ID0gdGhpcy5wcm9wcy5jdXN0b21QYWxldHRlO1xuICAgIGNvbnN0IG5ld0NvbG9ycyA9IGFycmF5TW92ZShjb2xvcnMsIG9sZEluZGV4LCBuZXdJbmRleCk7XG4gICAgdGhpcy5fc2V0Q29sb3JQYWxldHRlVUkobmV3Q29sb3JzKTtcbiAgICB0aGlzLnNldFN0YXRlKHtpc1NvcnRpbmc6IGZhbHNlfSk7XG4gIH07XG5cbiAgX29uU29ydFN0YXJ0ID0gKCkgPT4ge1xuICAgIHRoaXMuc2V0U3RhdGUoe2lzU29ydGluZzogdHJ1ZX0pO1xuICB9O1xuXG4gIF9pbnB1dENvbG9ySGV4ID0gKGluZGV4LCB7dGFyZ2V0OiB7dmFsdWV9fSkgPT4ge1xuICAgIGNvbnN0IHtjb2xvcnN9ID0gdGhpcy5wcm9wcy5jdXN0b21QYWxldHRlO1xuICAgIGNvbnN0IG5ld0NvbG9ycyA9IFsuLi5jb2xvcnNdO1xuICAgIG5ld0NvbG9yc1tpbmRleF0gPSB2YWx1ZS50b1VwcGVyQ2FzZSgpO1xuICAgIHRoaXMuX3NldENvbG9yUGFsZXR0ZVVJKG5ld0NvbG9ycyk7XG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHtjb2xvcnN9ID0gdGhpcy5wcm9wcy5jdXN0b21QYWxldHRlO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiY3VzdG9tLXBhbGV0dGUtcGFuZWxcIiByZWY9e3RoaXMucm9vdH0+XG4gICAgICAgIDxTdHlsZWRDb2xvclJhbmdlPlxuICAgICAgICAgIDxDb2xvclBhbGV0dGUgY29sb3JzPXtjb2xvcnN9IC8+XG4gICAgICAgIDwvU3R5bGVkQ29sb3JSYW5nZT5cbiAgICAgICAgPFdyYXBwZWRTb3J0YWJsZUNvbnRhaW5lclxuICAgICAgICAgIGNsYXNzTmFtZT1cImN1c3RvbS1wYWxldHRlLWNvbnRhaW5lclwiXG4gICAgICAgICAgb25Tb3J0RW5kPXt0aGlzLl9vblNvcnRFbmR9XG4gICAgICAgICAgb25Tb3J0U3RhcnQ9e3RoaXMuX29uU29ydFN0YXJ0fVxuICAgICAgICAgIGxvY2tBeGlzPVwieVwiXG4gICAgICAgICAgaGVscGVyQ2xhc3M9XCJzb3J0aW5nLWNvbG9yc1wiXG4gICAgICAgICAgdXNlRHJhZ0hhbmRsZVxuICAgICAgICA+XG4gICAgICAgICAge2NvbG9ycy5tYXAoKGNvbG9yLCBpbmRleCkgPT4gKFxuICAgICAgICAgICAgPFNvcnRhYmxlSXRlbSBrZXk9e2luZGV4fSBpbmRleD17aW5kZXh9IGlzU29ydGluZz17dGhpcy5zdGF0ZS5pc1NvcnRpbmd9PlxuICAgICAgICAgICAgICA8RHJhZ0hhbmRsZSBjbGFzc05hbWU9XCJsYXllcl9fZHJhZy1oYW5kbGVcIj5cbiAgICAgICAgICAgICAgICA8VmVydERvdHMgaGVpZ2h0PVwiMjBweFwiIC8+XG4gICAgICAgICAgICAgIDwvRHJhZ0hhbmRsZT5cbiAgICAgICAgICAgICAgPFN0eWxlZFN3YXRjaCBjb2xvcj17Y29sb3J9IG9uQ2xpY2s9eygpID0+IHRoaXMuX29uU3dhdGNoQ2xpY2soaW5kZXgpfSAvPlxuICAgICAgICAgICAgICA8U3R5bGVkSW5saW5lSW5wdXQ+XG4gICAgICAgICAgICAgICAgPElubGluZUlucHV0XG4gICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJjdXN0b20tcGFsZXR0ZS1oZXhfX2lucHV0XCJcbiAgICAgICAgICAgICAgICAgIHZhbHVlPXtjb2xvci50b1VwcGVyQ2FzZSgpfVxuICAgICAgICAgICAgICAgICAgb25DbGljaz17ZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgb25DaGFuZ2U9e2UgPT4gdGhpcy5faW5wdXRDb2xvckhleChpbmRleCwgZSl9XG4gICAgICAgICAgICAgICAgICBpZD17YGlucHV0LWxheWVyLWxhYmVsLSR7aW5kZXh9YH1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICA8L1N0eWxlZElubGluZUlucHV0PlxuICAgICAgICAgICAgICA8U3R5bGVkVHJhc2ggb25DbGljaz17KCkgPT4gdGhpcy5fb25Db2xvckRlbGV0ZShpbmRleCl9PlxuICAgICAgICAgICAgICAgIDxUcmFzaCBjbGFzc05hbWU9XCJ0cmFzaGJpblwiIC8+XG4gICAgICAgICAgICAgIDwvU3R5bGVkVHJhc2g+XG4gICAgICAgICAgICA8L1NvcnRhYmxlSXRlbT5cbiAgICAgICAgICApKX1cbiAgICAgICAgPC9XcmFwcGVkU29ydGFibGVDb250YWluZXI+XG4gICAgICAgIHsvKiBBZGQgU3RlcCBCdXR0b24gKi99XG4gICAgICAgIDxCdXR0b24gY2xhc3NOYW1lPVwiYWRkLXN0ZXBfX2J1dHRvblwiIGxpbmsgb25DbGljaz17dGhpcy5fb25Db2xvckFkZH0+XG4gICAgICAgICAgKyBBZGQgU3RlcFxuICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgPFN0eWxlZExpbmUgLz5cbiAgICAgICAgey8qIENhbmNlbCBvciBDb25maXJtIEJ1dHRvbnMgKi99XG4gICAgICAgIDxTdHlsZWRCdXR0b25Db250YWluZXI+XG4gICAgICAgICAgPEJ1dHRvbiBjbGFzc05hbWU9XCJjb25maXJtLWFwcGx5X19idXR0b25cIiBsaW5rIG9uQ2xpY2s9e3RoaXMuX29uQXBwbHl9PlxuICAgICAgICAgICAgQ29uZmlybVxuICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICAgIDxCdXR0b24gbGluayBvbkNsaWNrPXt0aGlzLnByb3BzLm9uQ2FuY2VsfT5cbiAgICAgICAgICAgIENhbmNlbFxuICAgICAgICAgIDwvQnV0dG9uPlxuICAgICAgICA8L1N0eWxlZEJ1dHRvbkNvbnRhaW5lcj5cblxuICAgICAgICA8UG9ydGFsZWQgaXNPcGVuZWQ9e3RoaXMucHJvcHMuc2hvd1NrZXRjaGVyICE9PSBmYWxzZX0gbGVmdD17MjgwfSB0b3A9ey0zMDB9PlxuICAgICAgICAgIDxDdXN0b21QaWNrZXJcbiAgICAgICAgICAgIGNvbG9yPXtjb2xvcnNbdGhpcy5wcm9wcy5zaG93U2tldGNoZXJdfVxuICAgICAgICAgICAgb25DaGFuZ2U9e3RoaXMuX29uUGlja2VyVXBkYXRlfVxuICAgICAgICAgICAgb25Td2F0Y2hDbG9zZT17dGhpcy5fb25Td2F0Y2hDbG9zZX1cbiAgICAgICAgICAvPlxuICAgICAgICA8L1BvcnRhbGVkPlxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCBDdXN0b21QYWxldHRlO1xuIl19
|
|
318
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGUtcGFuZWwvbGF5ZXItcGFuZWwvY3VzdG9tLXBhbGV0dGUuanMiXSwibmFtZXMiOlsiZHJhZ0hhbmRsZUFjdGl2ZSIsImNzcyIsInByb3BzIiwidGhlbWUiLCJ0ZXh0Q29sb3JIbCIsIlN0eWxlZFNvcnRhYmxlSXRlbSIsInN0eWxlZCIsImRpdiIsImRyb3Bkb3duV3JhcHBlcloiLCJwYW5lbEJhY2tncm91bmRIb3ZlciIsIlN0eWxlZERyYWdIYW5kbGUiLCJTdHlsZWRUcmFzaCIsInRleHRDb2xvciIsInN1YnRleHRDb2xvckFjdGl2ZSIsIlN0eWxlZExpbmUiLCJsYWJlbENvbG9yIiwiU3R5bGVkU3dhdGNoIiwiYXR0cnMiLCJjbGFzc05hbWUiLCJjb2xvciIsImJveFNoYWRvdyIsIlN0eWxlZENvbG9yUmFuZ2UiLCJTdHlsZWRCdXR0b25Db250YWluZXIiLCJTdHlsZWRJbmxpbmVJbnB1dCIsIlNvcnRhYmxlSXRlbSIsImNoaWxkcmVuIiwiaXNTb3J0aW5nIiwic29ydGluZyIsIldyYXBwZWRTb3J0YWJsZUNvbnRhaW5lciIsIkRyYWdIYW5kbGUiLCJDdXN0b21QYWxldHRlIiwiY29sb3JzIiwiY3VzdG9tUGFsZXR0ZSIsIm5ld0NvbG9ycyIsInNob3dTa2V0Y2hlciIsImhleCIsIl9zZXRDb2xvclBhbGV0dGVVSSIsImluZGV4IiwibGVuZ3RoIiwic3BsaWNlIiwib25Ub2dnbGVTa2V0Y2hlciIsImV2ZW50Iiwic3RvcFByb3BhZ2F0aW9uIiwicHJldmVudERlZmF1bHQiLCJvbkFwcGx5Iiwib2xkSW5kZXgiLCJuZXdJbmRleCIsInNldFN0YXRlIiwidmFsdWUiLCJ0YXJnZXQiLCJ0b1VwcGVyQ2FzZSIsInNldEN1c3RvbVBhbGV0dGUiLCJyb290IiwiX29uU29ydEVuZCIsIl9vblNvcnRTdGFydCIsIm1hcCIsInN0YXRlIiwiX29uU3dhdGNoQ2xpY2siLCJlIiwiX2lucHV0Q29sb3JIZXgiLCJfb25Db2xvckRlbGV0ZSIsIl9vbkNvbG9yQWRkIiwiX29uQXBwbHkiLCJvbkNhbmNlbCIsIl9vblBpY2tlclVwZGF0ZSIsIl9vblN3YXRjaENsb3NlIiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwic2hhcGUiLCJuYW1lIiwic3RyaW5nIiwidHlwZSIsImNhdGVnb3J5IiwiYXJyYXlPZiIsImZ1bmMiLCJvbmVPZlR5cGUiLCJib29sIiwibnVtYmVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7Ozs7QUFFQSxJQUFNQSxnQkFBZ0IsT0FBR0MscUJBQUgsOEtBRVQsVUFBQUMsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZQyxXQUFoQjtBQUFBLENBRkksQ0FBdEI7O0FBUUEsSUFBTUMsa0JBQWtCLEdBQUdDLDZCQUFPQyxHQUFWLHFXQUtYLFVBQUFMLEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQU4sQ0FBWUssZ0JBQVosR0FBK0IsQ0FBbkM7QUFBQSxDQUxNLEVBU0UsVUFBQU4sS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZTSxvQkFBaEI7QUFBQSxDQVRQLEVBVWhCVCxnQkFWZ0IsRUFlQSxVQUFBRSxLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDQyxLQUFOLENBQVlNLG9CQUFoQjtBQUFBLENBZkwsRUFnQmxCVCxnQkFoQmtCLENBQXhCOztBQW9CQSxJQUFNVSxnQkFBZ0IsR0FBR0osNkJBQU9DLEdBQVYsbUpBQXRCOztBQU1BLElBQU1JLFdBQVcsR0FBR0wsNkJBQU9DLEdBQVYsdVFBQ04sVUFBQUwsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZUyxTQUFoQjtBQUFBLENBREMsRUFJRixVQUFBVixLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDQyxLQUFOLENBQVlVLGtCQUFoQjtBQUFBLENBSkgsQ0FBakI7O0FBZUEsSUFBTUMsVUFBVSxHQUFHUiw2QkFBT0MsR0FBViw0TUFHTSxVQUFBTCxLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDQyxLQUFOLENBQVlZLFVBQWhCO0FBQUEsQ0FIWCxDQUFoQjs7QUFRQSxJQUFNQyxZQUFZLEdBQUdWLDZCQUFPQyxHQUFQLENBQVdVLEtBQVgsQ0FBaUI7QUFDcENDLEVBQUFBLFNBQVMsRUFBRTtBQUR5QixDQUFqQixDQUFILCtPQUdJLFVBQUFoQixLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDaUIsS0FBVjtBQUFBLENBSFQsRUFRQSxVQUFBakIsS0FBSztBQUFBLFNBQUlBLEtBQUssQ0FBQ0MsS0FBTixDQUFZaUIsU0FBaEI7QUFBQSxDQVJMLENBQWxCOztBQWFBLElBQU1DLGdCQUFnQixHQUFHZiw2QkFBT0MsR0FBVixrTEFHRSxVQUFBTCxLQUFLO0FBQUEsU0FBSUEsS0FBSyxDQUFDQyxLQUFOLENBQVlNLG9CQUFoQjtBQUFBLENBSFAsQ0FBdEI7O0FBUUEsSUFBTWEscUJBQXFCLEdBQUdoQiw2QkFBT0MsR0FBVixvSkFBM0I7O0FBTUEsSUFBTWdCLGlCQUFpQixHQUFHakIsNkJBQU9DLEdBQVAsQ0FBV1UsS0FBWCxDQUFpQjtBQUN6Q0MsRUFBQUEsU0FBUyxFQUFFO0FBRDhCLENBQWpCLENBQUgseUtBS1YsVUFBQWhCLEtBQUs7QUFBQSxTQUFJQSxLQUFLLENBQUNDLEtBQU4sQ0FBWUMsV0FBaEI7QUFBQSxDQUxLLENBQXZCOztBQVVBLElBQU1vQixZQUFZLEdBQUcsdUNBQWdCO0FBQUEsTUFBRUMsUUFBRixRQUFFQSxRQUFGO0FBQUEsTUFBWUMsU0FBWixRQUFZQSxTQUFaO0FBQUEsc0JBQ25DLGdDQUFDLGtCQUFEO0FBQ0UsSUFBQSxTQUFTLEVBQUUsNEJBQVcsZ0NBQVgsRUFBNkM7QUFBQ0MsTUFBQUEsT0FBTyxFQUFFRDtBQUFWLEtBQTdDO0FBRGIsS0FHR0QsUUFISCxDQURtQztBQUFBLENBQWhCLENBQXJCLEMsQ0FRQTs7QUFDQSxJQUFNRyx3QkFBd0IsR0FBRyx5Q0FBa0I7QUFBQSxNQUFFSCxRQUFGLFNBQUVBLFFBQUY7QUFBQSxNQUFZUCxTQUFaLFNBQVlBLFNBQVo7QUFBQSxzQkFDakQ7QUFBSyxJQUFBLFNBQVMsRUFBRUE7QUFBaEIsS0FBNEJPLFFBQTVCLENBRGlEO0FBQUEsQ0FBbEIsQ0FBakM7QUFJQSxJQUFNSSxVQUFVLEdBQUcsc0NBQWU7QUFBQSxNQUFFWCxTQUFGLFNBQUVBLFNBQUY7QUFBQSxNQUFhTyxRQUFiLFNBQWFBLFFBQWI7QUFBQSxzQkFDaEMsZ0NBQUMsZ0JBQUQ7QUFBa0IsSUFBQSxTQUFTLEVBQUVQO0FBQTdCLEtBQXlDTyxRQUF6QyxDQURnQztBQUFBLENBQWYsQ0FBbkI7O0lBSU1LLGE7Ozs7Ozs7Ozs7Ozs7Ozs4RkFZSTtBQUNOSixNQUFBQSxTQUFTLEVBQUU7QUFETCxLOzBHQUlELHVCO3dHQVFXLFVBQUFQLEtBQUssRUFBSTtBQUFBLFVBQ2xCWSxNQURrQixHQUNSLE1BQUs3QixLQUFMLENBQVc4QixhQURILENBQ2xCRCxNQURrQjtBQUV6QixVQUFNRSxTQUFTLHVDQUFPRixNQUFQLENBQWY7QUFDQUUsTUFBQUEsU0FBUyxDQUFDLE1BQUsvQixLQUFMLENBQVdnQyxZQUFaLENBQVQsR0FBcUNmLEtBQUssQ0FBQ2dCLEdBQTNDOztBQUNBLFlBQUtDLGtCQUFMLENBQXdCSCxTQUF4QjtBQUNELEs7dUdBRWdCLFVBQUFJLEtBQUssRUFBSTtBQUFBLFVBQ2pCTixNQURpQixHQUNQLE1BQUs3QixLQUFMLENBQVc4QixhQURKLENBQ2pCRCxNQURpQjtBQUV4QixVQUFNRSxTQUFTLHVDQUFPRixNQUFQLENBQWY7O0FBQ0EsVUFBSUUsU0FBUyxDQUFDSyxNQUFWLEdBQW1CLENBQXZCLEVBQTBCO0FBQ3hCTCxRQUFBQSxTQUFTLENBQUNNLE1BQVYsQ0FBaUJGLEtBQWpCLEVBQXdCLENBQXhCO0FBQ0Q7O0FBQ0QsWUFBS0Qsa0JBQUwsQ0FBd0JILFNBQXhCO0FBQ0QsSztvR0FFYSxZQUFNO0FBQUEsVUFDWEYsTUFEVyxHQUNELE1BQUs3QixLQUFMLENBQVc4QixhQURWLENBQ1hELE1BRFcsRUFFbEI7O0FBQ0EsVUFBTUUsU0FBUyxpREFBT0YsTUFBUCxJQUFlQSxNQUFNLENBQUNBLE1BQU0sQ0FBQ08sTUFBUCxHQUFnQixDQUFqQixDQUFyQixFQUFmOztBQUNBLFlBQUtGLGtCQUFMLENBQXdCSCxTQUF4QjtBQUNELEs7dUdBRWdCLFVBQUFJLEtBQUssRUFBSTtBQUN4QixZQUFLbkMsS0FBTCxDQUFXc0MsZ0JBQVgsQ0FBNEJILEtBQTVCO0FBQ0QsSzt1R0FFZ0IsWUFBTTtBQUNyQixZQUFLbkMsS0FBTCxDQUFXc0MsZ0JBQVgsQ0FBNEIsS0FBNUI7QUFDRCxLO2lHQUVVLFVBQUFDLEtBQUssRUFBSTtBQUNsQkEsTUFBQUEsS0FBSyxDQUFDQyxlQUFOO0FBQ0FELE1BQUFBLEtBQUssQ0FBQ0UsY0FBTjs7QUFDQSxZQUFLekMsS0FBTCxDQUFXMEMsT0FBWCxDQUFtQixNQUFLMUMsS0FBTCxDQUFXOEIsYUFBOUIsRUFBNkNTLEtBQTdDO0FBQ0QsSzttR0FFWSxpQkFBMEI7QUFBQSxVQUF4QkksUUFBd0IsU0FBeEJBLFFBQXdCO0FBQUEsVUFBZEMsUUFBYyxTQUFkQSxRQUFjO0FBQUEsVUFDOUJmLE1BRDhCLEdBQ3BCLE1BQUs3QixLQUFMLENBQVc4QixhQURTLENBQzlCRCxNQUQ4QjtBQUVyQyxVQUFNRSxTQUFTLEdBQUcsMEJBQVVGLE1BQVYsRUFBa0JjLFFBQWxCLEVBQTRCQyxRQUE1QixDQUFsQjs7QUFDQSxZQUFLVixrQkFBTCxDQUF3QkgsU0FBeEI7O0FBQ0EsWUFBS2MsUUFBTCxDQUFjO0FBQUNyQixRQUFBQSxTQUFTLEVBQUU7QUFBWixPQUFkO0FBQ0QsSztxR0FFYyxZQUFNO0FBQ25CLFlBQUtxQixRQUFMLENBQWM7QUFBQ3JCLFFBQUFBLFNBQVMsRUFBRTtBQUFaLE9BQWQ7QUFDRCxLO3VHQUVnQixVQUFDVyxLQUFELFNBQThCO0FBQUEsVUFBWlcsS0FBWSxTQUFyQkMsTUFBcUIsQ0FBWkQsS0FBWTtBQUFBLFVBQ3RDakIsTUFEc0MsR0FDNUIsTUFBSzdCLEtBQUwsQ0FBVzhCLGFBRGlCLENBQ3RDRCxNQURzQztBQUU3QyxVQUFNRSxTQUFTLHVDQUFPRixNQUFQLENBQWY7QUFDQUUsTUFBQUEsU0FBUyxDQUFDSSxLQUFELENBQVQsR0FBbUJXLEtBQUssQ0FBQ0UsV0FBTixFQUFuQjs7QUFDQSxZQUFLZCxrQkFBTCxDQUF3QkgsU0FBeEI7QUFDRCxLOzs7Ozs7V0EzREQsNEJBQW1CRixNQUFuQixFQUEyQjtBQUN6QixXQUFLN0IsS0FBTCxDQUFXaUQsZ0JBQVgsQ0FBNEI7QUFDMUJwQixRQUFBQSxNQUFNLEVBQU5BO0FBRDBCLE9BQTVCO0FBR0Q7OztXQXlERCxrQkFBUztBQUFBOztBQUFBLFVBQ0FBLE1BREEsR0FDVSxLQUFLN0IsS0FBTCxDQUFXOEIsYUFEckIsQ0FDQUQsTUFEQTtBQUdQLDBCQUNFO0FBQUssUUFBQSxTQUFTLEVBQUMsc0JBQWY7QUFBc0MsUUFBQSxHQUFHLEVBQUUsS0FBS3FCO0FBQWhELHNCQUNFLGdDQUFDLGdCQUFELHFCQUNFLGdDQUFDLHdCQUFEO0FBQWMsUUFBQSxNQUFNLEVBQUVyQjtBQUF0QixRQURGLENBREYsZUFJRSxnQ0FBQyx3QkFBRDtBQUNFLFFBQUEsU0FBUyxFQUFDLDBCQURaO0FBRUUsUUFBQSxTQUFTLEVBQUUsS0FBS3NCLFVBRmxCO0FBR0UsUUFBQSxXQUFXLEVBQUUsS0FBS0MsWUFIcEI7QUFJRSxRQUFBLFFBQVEsRUFBQyxHQUpYO0FBS0UsUUFBQSxXQUFXLEVBQUMsZ0JBTGQ7QUFNRSxRQUFBLGFBQWE7QUFOZixTQVFHdkIsTUFBTSxDQUFDd0IsR0FBUCxDQUFXLFVBQUNwQyxLQUFELEVBQVFrQixLQUFSO0FBQUEsNEJBQ1YsZ0NBQUMsWUFBRDtBQUFjLFVBQUEsR0FBRyxFQUFFQSxLQUFuQjtBQUEwQixVQUFBLEtBQUssRUFBRUEsS0FBakM7QUFBd0MsVUFBQSxTQUFTLEVBQUUsTUFBSSxDQUFDbUIsS0FBTCxDQUFXOUI7QUFBOUQsd0JBQ0UsZ0NBQUMsVUFBRDtBQUFZLFVBQUEsU0FBUyxFQUFDO0FBQXRCLHdCQUNFLGdDQUFDLGVBQUQ7QUFBVSxVQUFBLE1BQU0sRUFBQztBQUFqQixVQURGLENBREYsZUFJRSxnQ0FBQyxZQUFEO0FBQWMsVUFBQSxLQUFLLEVBQUVQLEtBQXJCO0FBQTRCLFVBQUEsT0FBTyxFQUFFO0FBQUEsbUJBQU0sTUFBSSxDQUFDc0MsY0FBTCxDQUFvQnBCLEtBQXBCLENBQU47QUFBQTtBQUFyQyxVQUpGLGVBS0UsZ0NBQUMsaUJBQUQscUJBQ0UsZ0NBQUMsOEJBQUQ7QUFDRSxVQUFBLElBQUksRUFBQyxNQURQO0FBRUUsVUFBQSxTQUFTLEVBQUMsMkJBRlo7QUFHRSxVQUFBLEtBQUssRUFBRWxCLEtBQUssQ0FBQytCLFdBQU4sRUFIVDtBQUlFLFVBQUEsT0FBTyxFQUFFLGlCQUFBUSxDQUFDLEVBQUk7QUFDWkEsWUFBQUEsQ0FBQyxDQUFDaEIsZUFBRjtBQUNELFdBTkg7QUFPRSxVQUFBLFFBQVEsRUFBRSxrQkFBQWdCLENBQUM7QUFBQSxtQkFBSSxNQUFJLENBQUNDLGNBQUwsQ0FBb0J0QixLQUFwQixFQUEyQnFCLENBQTNCLENBQUo7QUFBQSxXQVBiO0FBUUUsVUFBQSxFQUFFLDhCQUF1QnJCLEtBQXZCO0FBUkosVUFERixDQUxGLGVBaUJFLGdDQUFDLFdBQUQ7QUFDRSxVQUFBLFNBQVMsRUFBQyx1QkFEWjtBQUVFLFVBQUEsT0FBTyxFQUFFO0FBQUEsbUJBQU0sTUFBSSxDQUFDdUIsY0FBTCxDQUFvQnZCLEtBQXBCLENBQU47QUFBQTtBQUZYLHdCQUlFLGdDQUFDLFlBQUQ7QUFBTyxVQUFBLFNBQVMsRUFBQztBQUFqQixVQUpGLENBakJGLENBRFU7QUFBQSxPQUFYLENBUkgsQ0FKRixlQXVDRTtBQUFLLFFBQUEsU0FBUyxFQUFDO0FBQWYsc0JBRUUsZ0NBQUMseUJBQUQ7QUFBUSxRQUFBLFNBQVMsRUFBQyxrQkFBbEI7QUFBcUMsUUFBQSxJQUFJLE1BQXpDO0FBQTBDLFFBQUEsT0FBTyxFQUFFLEtBQUt3QjtBQUF4RCxzQkFDRSxnQ0FBQywyQkFBRDtBQUFrQixRQUFBLEVBQUUsRUFBQztBQUFyQixRQURGLENBRkYsZUFLRSxnQ0FBQyxVQUFEO0FBQVksUUFBQSxTQUFTLEVBQUM7QUFBdEIsUUFMRixlQU9FLGdDQUFDLHFCQUFELHFCQUNFLGdDQUFDLHlCQUFEO0FBQVEsUUFBQSxTQUFTLEVBQUMsdUJBQWxCO0FBQTBDLFFBQUEsSUFBSSxNQUE5QztBQUErQyxRQUFBLE9BQU8sRUFBRSxLQUFLQztBQUE3RCxzQkFDRSxnQ0FBQywyQkFBRDtBQUFrQixRQUFBLEVBQUUsRUFBQztBQUFyQixRQURGLENBREYsZUFJRSxnQ0FBQyx5QkFBRDtBQUFRLFFBQUEsU0FBUyxFQUFDLHNCQUFsQjtBQUF5QyxRQUFBLElBQUksTUFBN0M7QUFBOEMsUUFBQSxPQUFPLEVBQUUsS0FBSzVELEtBQUwsQ0FBVzZEO0FBQWxFLHNCQUNFLGdDQUFDLDJCQUFEO0FBQWtCLFFBQUEsRUFBRSxFQUFDO0FBQXJCLFFBREYsQ0FKRixDQVBGLENBdkNGLGVBdURFLGdDQUFDLG9CQUFEO0FBQVUsUUFBQSxRQUFRLEVBQUUsS0FBSzdELEtBQUwsQ0FBV2dDLFlBQVgsS0FBNEIsS0FBaEQ7QUFBdUQsUUFBQSxJQUFJLEVBQUUsR0FBN0Q7QUFBa0UsUUFBQSxHQUFHLEVBQUUsQ0FBQztBQUF4RSxzQkFDRSxnQ0FBQyx3QkFBRDtBQUNFLFFBQUEsS0FBSyxFQUFFSCxNQUFNLENBQUMsS0FBSzdCLEtBQUwsQ0FBV2dDLFlBQVosQ0FEZjtBQUVFLFFBQUEsUUFBUSxFQUFFLEtBQUs4QixlQUZqQjtBQUdFLFFBQUEsYUFBYSxFQUFFLEtBQUtDO0FBSHRCLFFBREYsQ0F2REYsQ0FERjtBQWlFRDs7O0VBbkp5QkMsZ0I7O2lDQUF0QnBDLGEsZUFDZTtBQUNqQkUsRUFBQUEsYUFBYSxFQUFFbUMsc0JBQVVDLEtBQVYsQ0FBZ0I7QUFDN0JDLElBQUFBLElBQUksRUFBRUYsc0JBQVVHLE1BRGE7QUFFN0JDLElBQUFBLElBQUksRUFBRUosc0JBQVVHLE1BRmE7QUFHN0JFLElBQUFBLFFBQVEsRUFBRUwsc0JBQVVHLE1BSFM7QUFJN0J2QyxJQUFBQSxNQUFNLEVBQUVvQyxzQkFBVU0sT0FBVixDQUFrQk4sc0JBQVVHLE1BQTVCO0FBSnFCLEdBQWhCLENBREU7QUFPakJuQixFQUFBQSxnQkFBZ0IsRUFBRWdCLHNCQUFVTyxJQVBYO0FBUWpCeEMsRUFBQUEsWUFBWSxFQUFFaUMsc0JBQVVRLFNBQVYsQ0FBb0IsQ0FBQ1Isc0JBQVVTLElBQVgsRUFBaUJULHNCQUFVVSxNQUEzQixDQUFwQjtBQVJHLEM7ZUFxSk4vQyxhIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIxIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IFJlYWN0LCB7Q29tcG9uZW50LCBjcmVhdGVSZWZ9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBjbGFzc25hbWVzIGZyb20gJ2NsYXNzbmFtZXMnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCBzdHlsZWQsIHtjc3N9IGZyb20gJ3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7U29ydGFibGVDb250YWluZXIsIFNvcnRhYmxlRWxlbWVudCwgU29ydGFibGVIYW5kbGV9IGZyb20gJ3JlYWN0LXNvcnRhYmxlLWhvYyc7XG5pbXBvcnQgUG9ydGFsZWQgZnJvbSAnY29tcG9uZW50cy9jb21tb24vcG9ydGFsZWQnO1xuXG5pbXBvcnQge0J1dHRvbiwgSW5saW5lSW5wdXR9IGZyb20gJ2NvbXBvbmVudHMvY29tbW9uL3N0eWxlZC1jb21wb25lbnRzJztcbmltcG9ydCB7VmVydERvdHMsIFRyYXNofSBmcm9tICdjb21wb25lbnRzL2NvbW1vbi9pY29ucyc7XG5pbXBvcnQgQ29sb3JQYWxldHRlIGZyb20gJy4vY29sb3ItcGFsZXR0ZSc7XG5pbXBvcnQgQ3VzdG9tUGlja2VyIGZyb20gJy4vY3VzdG9tLXBpY2tlcic7XG5pbXBvcnQge2FycmF5TW92ZX0gZnJvbSAndXRpbHMvZGF0YS11dGlscyc7XG5pbXBvcnQge0Zvcm1hdHRlZE1lc3NhZ2V9IGZyb20gJ3JlYWN0LWludGwnO1xuXG5jb25zdCBkcmFnSGFuZGxlQWN0aXZlID0gY3NzYFxuICAubGF5ZXJfX2RyYWctaGFuZGxlIHtcbiAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3JIbH07XG4gICAgb3BhY2l0eTogMTtcbiAgICBjdXJzb3I6IG1vdmU7XG4gIH1cbmA7XG5cbmNvbnN0IFN0eWxlZFNvcnRhYmxlSXRlbSA9IHN0eWxlZC5kaXZgXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiA2cHg7XG4gIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gIHotaW5kZXg6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUuZHJvcGRvd25XcmFwcGVyWiArIDF9O1xuXG4gIDpub3QoLnNvcnRpbmcpIHtcbiAgICA6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmRIb3Zlcn07XG4gICAgICAke2RyYWdIYW5kbGVBY3RpdmV9O1xuICAgIH1cbiAgfVxuXG4gICYuc29ydGluZy1jb2xvcnMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR7cHJvcHMgPT4gcHJvcHMudGhlbWUucGFuZWxCYWNrZ3JvdW5kSG92ZXJ9O1xuICAgICR7ZHJhZ0hhbmRsZUFjdGl2ZX07XG4gIH1cbmA7XG5cbmNvbnN0IFN0eWxlZERyYWdIYW5kbGUgPSBzdHlsZWQuZGl2YFxuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBvcGFjaXR5OiAwO1xuYDtcblxuY29uc3QgU3R5bGVkVHJhc2ggPSBzdHlsZWQuZGl2YFxuICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS50ZXh0Q29sb3J9O1xuICBzdmcge1xuICAgIDpob3ZlciB7XG4gICAgICBjb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5zdWJ0ZXh0Q29sb3JBY3RpdmV9O1xuICAgIH1cbiAgfVxuICBoZWlnaHQ6IDEycHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IDEycHg7XG4gIDpob3ZlciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWRMaW5lID0gc3R5bGVkLmRpdmBcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDE2cHgpO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5sYWJlbENvbG9yfTtcbiAgbWFyZ2luLXRvcDogOHB4O1xuICBtYXJnaW4tbGVmdDogOHB4O1xuYDtcblxuY29uc3QgU3R5bGVkU3dhdGNoID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ2N1c3RvbS1wYWxldHRlX19zd2F0Y2gnXG59KWBcbiAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy5jb2xvcn07XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAke3Byb3BzID0+IHByb3BzLnRoZW1lLmJveFNoYWRvd307XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWRDb2xvclJhbmdlID0gc3R5bGVkLmRpdmBcbiAgcGFkZGluZzogMCA4cHg7XG4gIDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHtwcm9wcyA9PiBwcm9wcy50aGVtZS5wYW5lbEJhY2tncm91bmRIb3Zlcn07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5gO1xuXG5jb25zdCBTdHlsZWRCdXR0b25Db250YWluZXIgPSBzdHlsZWQuZGl2YFxuICBtYXJnaW4tdG9wOiAxMXB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBkaXJlY3Rpb246IHJ0bDtcbmA7XG5cbmNvbnN0IFN0eWxlZElubGluZUlucHV0ID0gc3R5bGVkLmRpdi5hdHRycyh7XG4gIGNsYXNzTmFtZTogJ2N1c3RvbS1wYWxldHRlX19pbnB1dCdcbn0pYFxuICBtYXJnaW4tbGVmdDogMTJweDtcbiAgaW5wdXQge1xuICAgIGNvbG9yOiAke3Byb3BzID0+IHByb3BzLnRoZW1lLnRleHRDb2xvckhsfTtcbiAgICBmb250LXNpemU6IDEwcHg7XG4gIH1cbmA7XG5cbmNvbnN0IFNvcnRhYmxlSXRlbSA9IFNvcnRhYmxlRWxlbWVudCgoe2NoaWxkcmVuLCBpc1NvcnRpbmd9KSA9PiAoXG4gIDxTdHlsZWRTb3J0YWJsZUl0ZW1cbiAgICBjbGFzc05hbWU9e2NsYXNzbmFtZXMoJ2N1c3RvbS1wYWxldHRlX19zb3J0YWJsZS1pdGVtcycsIHtzb3J0aW5nOiBpc1NvcnRpbmd9KX1cbiAgPlxuICAgIHtjaGlsZHJlbn1cbiAgPC9TdHlsZWRTb3J0YWJsZUl0ZW0+XG4pKTtcblxuLy8gVE9ETzogU2hvdWxkIGNsYXNzTmFtZSBiZSBhcHBsaWVkIHRvIHRoZSBkaXYgaGVyZT9cbmNvbnN0IFdyYXBwZWRTb3J0YWJsZUNvbnRhaW5lciA9IFNvcnRhYmxlQ29udGFpbmVyKCh7Y2hpbGRyZW4sIGNsYXNzTmFtZX0pID0+IChcbiAgPGRpdiBjbGFzc05hbWU9e2NsYXNzTmFtZX0+e2NoaWxkcmVufTwvZGl2PlxuKSk7XG5cbmNvbnN0IERyYWdIYW5kbGUgPSBTb3J0YWJsZUhhbmRsZSgoe2NsYXNzTmFtZSwgY2hpbGRyZW59KSA9PiAoXG4gIDxTdHlsZWREcmFnSGFuZGxlIGNsYXNzTmFtZT17Y2xhc3NOYW1lfT57Y2hpbGRyZW59PC9TdHlsZWREcmFnSGFuZGxlPlxuKSk7XG5cbmNsYXNzIEN1c3RvbVBhbGV0dGUgZXh0ZW5kcyBDb21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIGN1c3RvbVBhbGV0dGU6IFByb3BUeXBlcy5zaGFwZSh7XG4gICAgICBuYW1lOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgdHlwZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgIGNhdGVnb3J5OiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgY29sb3JzOiBQcm9wVHlwZXMuYXJyYXlPZihQcm9wVHlwZXMuc3RyaW5nKVxuICAgIH0pLFxuICAgIHNldEN1c3RvbVBhbGV0dGU6IFByb3BUeXBlcy5mdW5jLFxuICAgIHNob3dTa2V0Y2hlcjogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLmJvb2wsIFByb3BUeXBlcy5udW1iZXJdKVxuICB9O1xuXG4gIHN0YXRlID0ge1xuICAgIGlzU29ydGluZzogZmFsc2VcbiAgfTtcblxuICByb290ID0gY3JlYXRlUmVmKCk7XG5cbiAgX3NldENvbG9yUGFsZXR0ZVVJKGNvbG9ycykge1xuICAgIHRoaXMucHJvcHMuc2V0Q3VzdG9tUGFsZXR0ZSh7XG4gICAgICBjb2xvcnNcbiAgICB9KTtcbiAgfVxuXG4gIF9vblBpY2tlclVwZGF0ZSA9IGNvbG9yID0+IHtcbiAgICBjb25zdCB7Y29sb3JzfSA9IHRoaXMucHJvcHMuY3VzdG9tUGFsZXR0ZTtcbiAgICBjb25zdCBuZXdDb2xvcnMgPSBbLi4uY29sb3JzXTtcbiAgICBuZXdDb2xvcnNbdGhpcy5wcm9wcy5zaG93U2tldGNoZXJdID0gY29sb3IuaGV4O1xuICAgIHRoaXMuX3NldENvbG9yUGFsZXR0ZVVJKG5ld0NvbG9ycyk7XG4gIH07XG5cbiAgX29uQ29sb3JEZWxldGUgPSBpbmRleCA9PiB7XG4gICAgY29uc3Qge2NvbG9yc30gPSB0aGlzLnByb3BzLmN1c3RvbVBhbGV0dGU7XG4gICAgY29uc3QgbmV3Q29sb3JzID0gWy4uLmNvbG9yc107XG4gICAgaWYgKG5ld0NvbG9ycy5sZW5ndGggPiAxKSB7XG4gICAgICBuZXdDb2xvcnMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICB9XG4gICAgdGhpcy5fc2V0Q29sb3JQYWxldHRlVUkobmV3Q29sb3JzKTtcbiAgfTtcblxuICBfb25Db2xvckFkZCA9ICgpID0+IHtcbiAgICBjb25zdCB7Y29sb3JzfSA9IHRoaXMucHJvcHMuY3VzdG9tUGFsZXR0ZTtcbiAgICAvLyBhZGQgdGhlIGxhc3QgY29sb3JcbiAgICBjb25zdCBuZXdDb2xvcnMgPSBbLi4uY29sb3JzLCBjb2xvcnNbY29sb3JzLmxlbmd0aCAtIDFdXTtcbiAgICB0aGlzLl9zZXRDb2xvclBhbGV0dGVVSShuZXdDb2xvcnMpO1xuICB9O1xuXG4gIF9vblN3YXRjaENsaWNrID0gaW5kZXggPT4ge1xuICAgIHRoaXMucHJvcHMub25Ub2dnbGVTa2V0Y2hlcihpbmRleCk7XG4gIH07XG5cbiAgX29uU3dhdGNoQ2xvc2UgPSAoKSA9PiB7XG4gICAgdGhpcy5wcm9wcy5vblRvZ2dsZVNrZXRjaGVyKGZhbHNlKTtcbiAgfTtcblxuICBfb25BcHBseSA9IGV2ZW50ID0+IHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMucHJvcHMub25BcHBseSh0aGlzLnByb3BzLmN1c3RvbVBhbGV0dGUsIGV2ZW50KTtcbiAgfTtcblxuICBfb25Tb3J0RW5kID0gKHtvbGRJbmRleCwgbmV3SW5kZXh9KSA9PiB7XG4gICAgY29uc3Qge2NvbG9yc30gPSB0aGlzLnByb3BzLmN1c3RvbVBhbGV0dGU7XG4gICAgY29uc3QgbmV3Q29sb3JzID0gYXJyYXlNb3ZlKGNvbG9ycywgb2xkSW5kZXgsIG5ld0luZGV4KTtcbiAgICB0aGlzLl9zZXRDb2xvclBhbGV0dGVVSShuZXdDb2xvcnMpO1xuICAgIHRoaXMuc2V0U3RhdGUoe2lzU29ydGluZzogZmFsc2V9KTtcbiAgfTtcblxuICBfb25Tb3J0U3RhcnQgPSAoKSA9PiB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7aXNTb3J0aW5nOiB0cnVlfSk7XG4gIH07XG5cbiAgX2lucHV0Q29sb3JIZXggPSAoaW5kZXgsIHt0YXJnZXQ6IHt2YWx1ZX19KSA9PiB7XG4gICAgY29uc3Qge2NvbG9yc30gPSB0aGlzLnByb3BzLmN1c3RvbVBhbGV0dGU7XG4gICAgY29uc3QgbmV3Q29sb3JzID0gWy4uLmNvbG9yc107XG4gICAgbmV3Q29sb3JzW2luZGV4XSA9IHZhbHVlLnRvVXBwZXJDYXNlKCk7XG4gICAgdGhpcy5fc2V0Q29sb3JQYWxldHRlVUkobmV3Q29sb3JzKTtcbiAgfTtcblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qge2NvbG9yc30gPSB0aGlzLnByb3BzLmN1c3RvbVBhbGV0dGU7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9XCJjdXN0b20tcGFsZXR0ZS1wYW5lbFwiIHJlZj17dGhpcy5yb290fT5cbiAgICAgICAgPFN0eWxlZENvbG9yUmFuZ2U+XG4gICAgICAgICAgPENvbG9yUGFsZXR0ZSBjb2xvcnM9e2NvbG9yc30gLz5cbiAgICAgICAgPC9TdHlsZWRDb2xvclJhbmdlPlxuICAgICAgICA8V3JhcHBlZFNvcnRhYmxlQ29udGFpbmVyXG4gICAgICAgICAgY2xhc3NOYW1lPVwiY3VzdG9tLXBhbGV0dGUtY29udGFpbmVyXCJcbiAgICAgICAgICBvblNvcnRFbmQ9e3RoaXMuX29uU29ydEVuZH1cbiAgICAgICAgICBvblNvcnRTdGFydD17dGhpcy5fb25Tb3J0U3RhcnR9XG4gICAgICAgICAgbG9ja0F4aXM9XCJ5XCJcbiAgICAgICAgICBoZWxwZXJDbGFzcz1cInNvcnRpbmctY29sb3JzXCJcbiAgICAgICAgICB1c2VEcmFnSGFuZGxlXG4gICAgICAgID5cbiAgICAgICAgICB7Y29sb3JzLm1hcCgoY29sb3IsIGluZGV4KSA9PiAoXG4gICAgICAgICAgICA8U29ydGFibGVJdGVtIGtleT17aW5kZXh9IGluZGV4PXtpbmRleH0gaXNTb3J0aW5nPXt0aGlzLnN0YXRlLmlzU29ydGluZ30+XG4gICAgICAgICAgICAgIDxEcmFnSGFuZGxlIGNsYXNzTmFtZT1cImxheWVyX19kcmFnLWhhbmRsZVwiPlxuICAgICAgICAgICAgICAgIDxWZXJ0RG90cyBoZWlnaHQ9XCIyMHB4XCIgLz5cbiAgICAgICAgICAgICAgPC9EcmFnSGFuZGxlPlxuICAgICAgICAgICAgICA8U3R5bGVkU3dhdGNoIGNvbG9yPXtjb2xvcn0gb25DbGljaz17KCkgPT4gdGhpcy5fb25Td2F0Y2hDbGljayhpbmRleCl9IC8+XG4gICAgICAgICAgICAgIDxTdHlsZWRJbmxpbmVJbnB1dD5cbiAgICAgICAgICAgICAgICA8SW5saW5lSW5wdXRcbiAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImN1c3RvbS1wYWxldHRlLWhleF9faW5wdXRcIlxuICAgICAgICAgICAgICAgICAgdmFsdWU9e2NvbG9yLnRvVXBwZXJDYXNlKCl9XG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXtlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICBvbkNoYW5nZT17ZSA9PiB0aGlzLl9pbnB1dENvbG9ySGV4KGluZGV4LCBlKX1cbiAgICAgICAgICAgICAgICAgIGlkPXtgaW5wdXQtbGF5ZXItbGFiZWwtJHtpbmRleH1gfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgIDwvU3R5bGVkSW5saW5lSW5wdXQ+XG4gICAgICAgICAgICAgIDxTdHlsZWRUcmFzaFxuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cImN1c3RvbS1wYWxldHRlX190cmFzaFwiXG4gICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4gdGhpcy5fb25Db2xvckRlbGV0ZShpbmRleCl9XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8VHJhc2ggY2xhc3NOYW1lPVwidHJhc2hiaW5cIiAvPlxuICAgICAgICAgICAgICA8L1N0eWxlZFRyYXNoPlxuICAgICAgICAgICAgPC9Tb3J0YWJsZUl0ZW0+XG4gICAgICAgICAgKSl9XG4gICAgICAgIDwvV3JhcHBlZFNvcnRhYmxlQ29udGFpbmVyPlxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cImN1c3RvbS1wYWxldHRlLWFjdGlvbnNcIj5cbiAgICAgICAgICB7LyogQWRkIFN0ZXAgQnV0dG9uICovfVxuICAgICAgICAgIDxCdXR0b24gY2xhc3NOYW1lPVwiYWRkLXN0ZXBfX2J1dHRvblwiIGxpbmsgb25DbGljaz17dGhpcy5fb25Db2xvckFkZH0+XG4gICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImN1c3RvbVBhbGV0dGUuYWRkU3RlcFwiIC8+XG4gICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgPFN0eWxlZExpbmUgY2xhc3NOYW1lPVwiY3VzdG9tLXBhbGV0dGUtYWN0aW9uc19fc2VwYXJhdG9yXCIgLz5cbiAgICAgICAgICB7LyogQ2FuY2VsIG9yIENvbmZpcm0gQnV0dG9ucyAqL31cbiAgICAgICAgICA8U3R5bGVkQnV0dG9uQ29udGFpbmVyPlxuICAgICAgICAgICAgPEJ1dHRvbiBjbGFzc05hbWU9XCJjb25maXJtLWFwcGx5X19idXR0b25cIiBsaW5rIG9uQ2xpY2s9e3RoaXMuX29uQXBwbHl9PlxuICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImN1c3RvbVBhbGV0dGUuYXBwbHlcIiAvPlxuICAgICAgICAgICAgPC9CdXR0b24+XG4gICAgICAgICAgICA8QnV0dG9uIGNsYXNzTmFtZT1cImNhbmNlbC1hcHBseV9fYnV0dG9uXCIgbGluayBvbkNsaWNrPXt0aGlzLnByb3BzLm9uQ2FuY2VsfT5cbiAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2UgaWQ9XCJjdXN0b21QYWxldHRlLmNhbmNlbFwiIC8+XG4gICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICA8L1N0eWxlZEJ1dHRvbkNvbnRhaW5lcj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxQb3J0YWxlZCBpc09wZW5lZD17dGhpcy5wcm9wcy5zaG93U2tldGNoZXIgIT09IGZhbHNlfSBsZWZ0PXsyODB9IHRvcD17LTMwMH0+XG4gICAgICAgICAgPEN1c3RvbVBpY2tlclxuICAgICAgICAgICAgY29sb3I9e2NvbG9yc1t0aGlzLnByb3BzLnNob3dTa2V0Y2hlcl19XG4gICAgICAgICAgICBvbkNoYW5nZT17dGhpcy5fb25QaWNrZXJVcGRhdGV9XG4gICAgICAgICAgICBvblN3YXRjaENsb3NlPXt0aGlzLl9vblN3YXRjaENsb3NlfVxuICAgICAgICAgIC8+XG4gICAgICAgIDwvUG9ydGFsZWQ+XG4gICAgICA8L2Rpdj5cbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IEN1c3RvbVBhbGV0dGU7XG4iXX0=
|