@pie-lib/graphing 2.48.0-mui-update.0 → 3.1.0-next.0
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 +8 -116
- package/lib/__tests__/graph-with-controls.test.js +226 -0
- package/lib/__tests__/graph.test.js +187 -0
- package/lib/__tests__/grid.test.js +29 -0
- package/lib/__tests__/labels.test.js +61 -0
- package/lib/__tests__/mark-label.test.js +133 -0
- package/lib/__tests__/toggle-bar.test.js +150 -0
- package/lib/__tests__/tool-menu.test.js +101 -0
- package/lib/__tests__/undo-redo.test.js +31 -0
- package/lib/__tests__/use-debounce.test.js +24 -0
- package/lib/__tests__/utils.js +70 -0
- package/lib/__tests__/utils.test.js +123 -0
- package/lib/axis/__tests__/arrow.test.js +60 -0
- package/lib/axis/__tests__/axes.test.js +195 -0
- package/lib/axis/arrow.js +1 -1
- package/lib/axis/axes.js +1 -1
- package/lib/axis/index.js +1 -1
- package/lib/bg.js +1 -1
- package/lib/container/actions.js +1 -1
- package/lib/container/index.js +1 -1
- package/lib/container/marks.js +1 -1
- package/lib/container/middleware.js +1 -1
- package/lib/container/reducer.js +1 -1
- package/lib/coordinates-label.js +3 -1
- package/lib/coordinates-label.js.map +1 -1
- package/lib/graph-with-controls.js +1 -1
- package/lib/graph.js +1 -1
- package/lib/grid-setup.js +33 -39
- package/lib/grid-setup.js.map +1 -1
- package/lib/grid.js +1 -1
- package/lib/index.js +1 -1
- package/lib/key-legend.js +7 -8
- package/lib/key-legend.js.map +1 -1
- package/lib/label-svg-icon.js +1 -1
- package/lib/labels.js +7 -5
- package/lib/labels.js.map +1 -1
- package/lib/mark-label.js +17 -10
- package/lib/mark-label.js.map +1 -1
- package/lib/toggle-bar.js +12 -12
- package/lib/toggle-bar.js.map +1 -1
- package/lib/tool-menu.js +2 -4
- package/lib/tool-menu.js.map +1 -1
- package/lib/tools/absolute/__tests__/component.test.js +67 -0
- package/lib/tools/absolute/component.js +1 -1
- package/lib/tools/absolute/index.js +1 -1
- package/lib/tools/circle/__tests__/bg-circle.test.js +33 -0
- package/lib/tools/circle/__tests__/component.test.js +68 -0
- package/lib/tools/circle/bg-circle.js +1 -1
- package/lib/tools/circle/component.js +2 -3
- package/lib/tools/circle/component.js.map +1 -1
- package/lib/tools/circle/index.js +1 -1
- package/lib/tools/exponential/__tests__/component.test.js +66 -0
- package/lib/tools/exponential/component.js +1 -1
- package/lib/tools/exponential/index.js +1 -1
- package/lib/tools/index.js +1 -1
- package/lib/tools/line/__tests__/component.test.js +45 -0
- package/lib/tools/line/component.js +1 -1
- package/lib/tools/line/index.js +1 -1
- package/lib/tools/parabola/__tests__/component.test.js +66 -0
- package/lib/tools/parabola/component.js +1 -1
- package/lib/tools/parabola/index.js +1 -1
- package/lib/tools/point/__tests__/component.test.js +50 -0
- package/lib/tools/point/component.js +2 -2
- package/lib/tools/point/component.js.map +1 -1
- package/lib/tools/point/index.js +1 -1
- package/lib/tools/polygon/__tests__/component.test.js +85 -0
- package/lib/tools/polygon/__tests__/index.test.js +92 -0
- package/lib/tools/polygon/__tests__/line.test.js +29 -0
- package/lib/tools/polygon/__tests__/polygon.test.js +59 -0
- package/lib/tools/polygon/component.js +3 -3
- package/lib/tools/polygon/component.js.map +1 -1
- package/lib/tools/polygon/index.js +1 -1
- package/lib/tools/polygon/line.js +3 -3
- package/lib/tools/polygon/line.js.map +1 -1
- package/lib/tools/polygon/polygon.js +1 -1
- package/lib/tools/ray/__tests__/component.test.js +35 -0
- package/lib/tools/ray/component.js +1 -1
- package/lib/tools/ray/index.js +1 -1
- package/lib/tools/segment/__tests__/component.test.js +35 -0
- package/lib/tools/segment/component.js +1 -1
- package/lib/tools/segment/index.js +1 -1
- package/lib/tools/shared/__tests__/arrow-head.test.js +45 -0
- package/lib/tools/shared/arrow-head.js +1 -1
- package/lib/tools/shared/icons/CorrectSVG.js +10 -1
- package/lib/tools/shared/icons/CorrectSVG.js.map +1 -1
- package/lib/tools/shared/icons/IncorrectSVG.js +10 -1
- package/lib/tools/shared/icons/IncorrectSVG.js.map +1 -1
- package/lib/tools/shared/icons/MissingSVG.js +10 -1
- package/lib/tools/shared/icons/MissingSVG.js.map +1 -1
- package/lib/tools/shared/line/__tests__/index.test.js +124 -0
- package/lib/tools/shared/line/__tests__/line-path.test.js +62 -0
- package/lib/tools/shared/line/__tests__/with-root-edge.test.js +91 -0
- package/lib/tools/shared/line/index.js +15 -7
- package/lib/tools/shared/line/index.js.map +1 -1
- package/lib/tools/shared/line/line-path.js +2 -3
- package/lib/tools/shared/line/line-path.js.map +1 -1
- package/lib/tools/shared/line/with-root-edge.js +1 -1
- package/lib/tools/shared/point/__tests__/arrow-point.test.js +127 -0
- package/lib/tools/shared/point/__tests__/base-point.test.js +122 -0
- package/lib/tools/shared/point/arrow-point.js +2 -4
- package/lib/tools/shared/point/arrow-point.js.map +1 -1
- package/lib/tools/shared/point/arrow.js +2 -3
- package/lib/tools/shared/point/arrow.js.map +1 -1
- package/lib/tools/shared/point/base-point.js +1 -1
- package/lib/tools/shared/point/index.js +1 -1
- package/lib/tools/shared/styles.js +1 -1
- package/lib/tools/shared/types.js +1 -1
- package/lib/tools/sine/__tests__/component.test.js +72 -0
- package/lib/tools/sine/component.js +1 -1
- package/lib/tools/sine/index.js +1 -1
- package/lib/tools/vector/__tests__/component.test.js +32 -0
- package/lib/tools/vector/component.js +1 -1
- package/lib/tools/vector/index.js +1 -1
- package/lib/undo-redo.js +1 -1
- package/lib/use-debounce.js +1 -1
- package/lib/utils.js +1 -1
- package/package.json +8 -8
- package/src/__tests__/graph-with-controls.test.jsx +28 -11
- package/src/__tests__/graph.test.jsx +104 -168
- package/src/__tests__/grid.test.jsx +8 -6
- package/src/__tests__/labels.test.jsx +25 -8
- package/src/__tests__/mark-label.test.jsx +12 -17
- package/src/__tests__/toggle-bar.test.jsx +92 -17
- package/src/__tests__/tool-menu.test.jsx +61 -12
- package/src/__tests__/undo-redo.test.jsx +7 -8
- package/src/__tests__/utils.js +3 -0
- package/src/axis/__tests__/arrow.test.jsx +16 -17
- package/src/axis/__tests__/axes.test.jsx +118 -122
- package/src/coordinates-label.jsx +1 -0
- package/src/grid-setup.jsx +34 -40
- package/src/key-legend.jsx +1 -1
- package/src/labels.jsx +3 -1
- package/src/mark-label.jsx +10 -1
- package/src/toggle-bar.jsx +2 -1
- package/src/tool-menu.jsx +1 -1
- package/src/tools/circle/__tests__/bg-circle.test.jsx +7 -9
- package/src/tools/circle/__tests__/component.test.jsx +17 -189
- package/src/tools/circle/component.jsx +1 -1
- package/src/tools/line/__tests__/component.test.jsx +7 -7
- package/src/tools/point/__tests__/component.test.jsx +18 -43
- package/src/tools/point/component.jsx +1 -1
- package/src/tools/polygon/__tests__/component.test.jsx +18 -162
- package/src/tools/polygon/__tests__/line.test.jsx +7 -10
- package/src/tools/polygon/__tests__/polygon.test.jsx +7 -8
- package/src/tools/polygon/component.jsx +2 -2
- package/src/tools/polygon/line.jsx +3 -2
- package/src/tools/ray/__tests__/component.test.jsx +7 -8
- package/src/tools/segment/__tests__/component.test.jsx +7 -8
- package/src/tools/shared/__tests__/arrow-head.test.jsx +14 -17
- package/src/tools/shared/icons/CorrectSVG.jsx +10 -0
- package/src/tools/shared/icons/IncorrectSVG.jsx +10 -0
- package/src/tools/shared/icons/MissingSVG.jsx +10 -0
- package/src/tools/shared/line/__tests__/index.test.jsx +19 -165
- package/src/tools/shared/line/__tests__/line-path.test.jsx +8 -8
- package/src/tools/shared/line/__tests__/with-root-edge.test.jsx +22 -22
- package/src/tools/shared/line/index.jsx +13 -5
- package/src/tools/shared/line/line-path.jsx +1 -1
- package/src/tools/shared/point/__tests__/arrow-point.test.jsx +15 -11
- package/src/tools/shared/point/__tests__/base-point.test.jsx +14 -11
- package/src/tools/shared/point/arrow-point.jsx +1 -1
- package/src/tools/shared/point/arrow.jsx +1 -1
- package/src/tools/vector/__tests__/component.test.jsx +7 -8
- package/src/__tests__/__snapshots__/graph-with-controls.test.jsx.snap +0 -237
- package/src/__tests__/__snapshots__/graph.test.jsx.snap +0 -211
- package/src/__tests__/__snapshots__/grid.test.jsx.snap +0 -54
- package/src/__tests__/__snapshots__/labels.test.jsx.snap +0 -30
- package/src/__tests__/__snapshots__/mark-label.test.jsx.snap +0 -45
- package/src/__tests__/__snapshots__/toggle-bar.test.jsx.snap +0 -7
- package/src/__tests__/__snapshots__/tool-menu.test.jsx.snap +0 -13
- package/src/__tests__/__snapshots__/undo-redo.test.jsx.snap +0 -14
- package/src/axis/__tests__/__snapshots__/arrow.test.jsx.snap +0 -33
- package/src/axis/__tests__/__snapshots__/axes.test.jsx.snap +0 -122
- package/src/tools/circle/__tests__/__snapshots__/bg-circle.test.jsx.snap +0 -46
- package/src/tools/circle/__tests__/__snapshots__/component.test.jsx.snap +0 -293
- package/src/tools/line/__tests__/__snapshots__/component.test.jsx.snap +0 -20
- package/src/tools/point/__tests__/__snapshots__/component.test.jsx.snap +0 -40
- package/src/tools/polygon/__tests__/__snapshots__/component.test.jsx.snap +0 -415
- package/src/tools/polygon/__tests__/__snapshots__/line.test.jsx.snap +0 -45
- package/src/tools/polygon/__tests__/__snapshots__/polygon.test.jsx.snap +0 -52
- package/src/tools/ray/__tests__/__snapshots__/component.test.jsx.snap +0 -23
- package/src/tools/segment/__tests__/__snapshots__/component.test.jsx.snap +0 -14
- package/src/tools/shared/__tests__/__snapshots__/arrow-head.test.jsx.snap +0 -27
- package/src/tools/shared/line/__tests__/__snapshots__/index.test.jsx.snap +0 -360
- package/src/tools/shared/line/__tests__/__snapshots__/line-path.test.jsx.snap +0 -58
- package/src/tools/shared/line/__tests__/__snapshots__/with-root-edge.test.jsx.snap +0 -63
- package/src/tools/shared/point/__tests__/__snapshots__/arrow-point.test.jsx.snap +0 -56
- package/src/tools/shared/point/__tests__/__snapshots__/base-point.test.jsx.snap +0 -44
- package/src/tools/vector/__tests__/__snapshots__/component.test.jsx.snap +0 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CorrectSVG.js","names":["_react","_interopRequireDefault","require","CorrectSVG","_ref","scale","x","y","createElement","width","height","viewBox","fill","stroke","style","pointerEvents","xmlns","d","_default","exports"],"sources":["../../../../src/tools/shared/icons/CorrectSVG.jsx"],"sourcesContent":["import React from 'react';\n\nconst CorrectSVG = ({ scale, x, y }) => (\n <svg\n width=\"11\"\n height=\"13\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n stroke=\"#ffffff\"\n x={scale.x(x) - 5}\n y={scale.y(y) - 6}\n style={{ pointerEvents: 'none' }}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M10.1953 2.46875C10.3125 2.35156 10.5 2.35156 10.5938 2.46875L11.2734 3.125C11.3672 3.24219 11.3672 3.42969 11.2734 3.52344L4.24219 10.5547C4.125 10.6719 3.96094 10.6719 3.84375 10.5547L0.703125 7.4375C0.609375 7.32031 0.609375 7.13281 0.703125 7.03906L1.38281 6.35938C1.47656 6.26562 1.66406 6.26562 1.78125 6.35938L4.03125 8.63281L10.1953 2.46875Z\"\n fill=\"white\"\n />\n </svg>\n);\n\nexport default CorrectSVG;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,
|
|
1
|
+
{"version":3,"file":"CorrectSVG.js","names":["_react","_interopRequireDefault","require","_propTypes","CorrectSVG","_ref","scale","x","y","createElement","width","height","viewBox","fill","stroke","style","pointerEvents","xmlns","d","propTypes","PropTypes","shape","func","number","_default","exports"],"sources":["../../../../src/tools/shared/icons/CorrectSVG.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst CorrectSVG = ({ scale, x, y }) => (\n <svg\n width=\"11\"\n height=\"13\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n stroke=\"#ffffff\"\n x={scale.x(x) - 5}\n y={scale.y(y) - 6}\n style={{ pointerEvents: 'none' }}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M10.1953 2.46875C10.3125 2.35156 10.5 2.35156 10.5938 2.46875L11.2734 3.125C11.3672 3.24219 11.3672 3.42969 11.2734 3.52344L4.24219 10.5547C4.125 10.6719 3.96094 10.6719 3.84375 10.5547L0.703125 7.4375C0.609375 7.32031 0.609375 7.13281 0.703125 7.03906L1.38281 6.35938C1.47656 6.26562 1.66406 6.26562 1.78125 6.35938L4.03125 8.63281L10.1953 2.46875Z\"\n fill=\"white\"\n />\n </svg>\n);\n\nCorrectSVG.propTypes = {\n scale: PropTypes.shape({\n x: PropTypes.func,\n y: PropTypes.func,\n }),\n x: PropTypes.number,\n y: PropTypes.number,\n};\n\nexport default CorrectSVG;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAME,UAAU,GAAG,SAAbA,UAAUA,CAAAC,IAAA;EAAA,IAAMC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,CAAC,GAAAF,IAAA,CAADE,CAAC;IAAEC,CAAC,GAAAH,IAAA,CAADG,CAAC;EAAA,oBAC/BR,MAAA,YAAAS,aAAA;IACEC,KAAK,EAAC,IAAI;IACVC,MAAM,EAAC,IAAI;IACXC,OAAO,EAAC,WAAW;IACnBC,IAAI,EAAC,MAAM;IACXC,MAAM,EAAC,SAAS;IAChBP,CAAC,EAAED,KAAK,CAACC,CAAC,CAACA,CAAC,CAAC,GAAG,CAAE;IAClBC,CAAC,EAAEF,KAAK,CAACE,CAAC,CAACA,CAAC,CAAC,GAAG,CAAE;IAClBO,KAAK,EAAE;MAAEC,aAAa,EAAE;IAAO,CAAE;IACjCC,KAAK,EAAC;EAA4B,gBAElCjB,MAAA,YAAAS,aAAA;IACES,CAAC,EAAC,+VAA+V;IACjWL,IAAI,EAAC;EAAO,CACb,CACE,CAAC;AAAA,CACP;AAEDT,UAAU,CAACe,SAAS,GAAG;EACrBb,KAAK,EAAEc,qBAAS,CAACC,KAAK,CAAC;IACrBd,CAAC,EAAEa,qBAAS,CAACE,IAAI;IACjBd,CAAC,EAAEY,qBAAS,CAACE;EACf,CAAC,CAAC;EACFf,CAAC,EAAEa,qBAAS,CAACG,MAAM;EACnBf,CAAC,EAAEY,qBAAS,CAACG;AACf,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEarB,UAAU","ignoreList":[]}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports["default"] = void 0;
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
10
|
var IncorrectSVG = function IncorrectSVG(_ref) {
|
|
10
11
|
var scale = _ref.scale,
|
|
11
12
|
x = _ref.x,
|
|
@@ -27,5 +28,13 @@ var IncorrectSVG = function IncorrectSVG(_ref) {
|
|
|
27
28
|
d: "M17.705 7.705l-1.41-1.41L12 10.59 7.705 6.295l-1.41 1.41L10.59 12l-4.295 4.295 1.41 1.41L12 13.41l4.295 4.295 1.41-1.41L13.41 12l4.295-4.295z"
|
|
28
29
|
}));
|
|
29
30
|
};
|
|
31
|
+
IncorrectSVG.propTypes = {
|
|
32
|
+
scale: _propTypes["default"].shape({
|
|
33
|
+
x: _propTypes["default"].func,
|
|
34
|
+
y: _propTypes["default"].func
|
|
35
|
+
}),
|
|
36
|
+
x: _propTypes["default"].number,
|
|
37
|
+
y: _propTypes["default"].number
|
|
38
|
+
};
|
|
30
39
|
var _default = exports["default"] = IncorrectSVG;
|
|
31
|
-
//# sourceMappingURL=
|
|
40
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9wcm9wVHlwZXMiLCJJbmNvcnJlY3RTVkciLCJfcmVmIiwic2NhbGUiLCJ4IiwieSIsImNyZWF0ZUVsZW1lbnQiLCJ3aWR0aCIsImhlaWdodCIsInZpZXdCb3giLCJmaWxsIiwic3Ryb2tlIiwic3Ryb2tlV2lkdGgiLCJzdHlsZSIsInBvaW50ZXJFdmVudHMiLCJ4bWxucyIsImQiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJzaGFwZSIsImZ1bmMiLCJudW1iZXIiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdG9vbHMvc2hhcmVkL2ljb25zL0luY29ycmVjdFNWRy5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5cbmNvbnN0IEluY29ycmVjdFNWRyA9ICh7IHNjYWxlLCB4LCB5IH0pID0+IChcbiAgPHN2Z1xuICAgIHdpZHRoPVwiMTRweFwiXG4gICAgaGVpZ2h0PVwiMTRweFwiXG4gICAgdmlld0JveD1cIjAgMCAyNCAyNFwiXG4gICAgZmlsbD1cIm5vbmVcIlxuICAgIHN0cm9rZT1cIiNmZmZmZmZcIlxuICAgIHN0cm9rZVdpZHRoPVwiMlwiXG4gICAgeD17c2NhbGUueCh4KSAtIDd9XG4gICAgeT17c2NhbGUueSh5KSAtIDd9XG4gICAgc3R5bGU9e3sgcG9pbnRlckV2ZW50czogJ25vbmUnIH19XG4gICAgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiXG4gID5cbiAgICA8cGF0aCBkPVwiTTE3LjcwNSA3LjcwNWwtMS40MS0xLjQxTDEyIDEwLjU5IDcuNzA1IDYuMjk1bC0xLjQxIDEuNDFMMTAuNTkgMTJsLTQuMjk1IDQuMjk1IDEuNDEgMS40MUwxMiAxMy40MWw0LjI5NSA0LjI5NSAxLjQxLTEuNDFMMTMuNDEgMTJsNC4yOTUtNC4yOTV6XCI+PC9wYXRoPlxuICA8L3N2Zz5cbik7XG5cbkluY29ycmVjdFNWRy5wcm9wVHlwZXMgPSB7XG4gIHNjYWxlOiBQcm9wVHlwZXMuc2hhcGUoe1xuICAgIHg6IFByb3BUeXBlcy5mdW5jLFxuICAgIHk6IFByb3BUeXBlcy5mdW5jLFxuICB9KSxcbiAgeDogUHJvcFR5cGVzLm51bWJlcixcbiAgeTogUHJvcFR5cGVzLm51bWJlcixcbn07XG5cbmV4cG9ydCBkZWZhdWx0IEluY29ycmVjdFNWRztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFVBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQU1FLFlBQVksR0FBRyxTQUFmQSxZQUFZQSxDQUFBQyxJQUFBO0VBQUEsSUFBTUMsS0FBSyxHQUFBRCxJQUFBLENBQUxDLEtBQUs7SUFBRUMsQ0FBQyxHQUFBRixJQUFBLENBQURFLENBQUM7SUFBRUMsQ0FBQyxHQUFBSCxJQUFBLENBQURHLENBQUM7RUFBQSxvQkFDakNSLE1BQUEsWUFBQVMsYUFBQTtJQUNFQyxLQUFLLEVBQUMsTUFBTTtJQUNaQyxNQUFNLEVBQUMsTUFBTTtJQUNiQyxPQUFPLEVBQUMsV0FBVztJQUNuQkMsSUFBSSxFQUFDLE1BQU07SUFDWEMsTUFBTSxFQUFDLFNBQVM7SUFDaEJDLFdBQVcsRUFBQyxHQUFHO0lBQ2ZSLENBQUMsRUFBRUQsS0FBSyxDQUFDQyxDQUFDLENBQUNBLENBQUMsQ0FBQyxHQUFHLENBQUU7SUFDbEJDLENBQUMsRUFBRUYsS0FBSyxDQUFDRSxDQUFDLENBQUNBLENBQUMsQ0FBQyxHQUFHLENBQUU7SUFDbEJRLEtBQUssRUFBRTtNQUFFQyxhQUFhLEVBQUU7SUFBTyxDQUFFO0lBQ2pDQyxLQUFLLEVBQUM7RUFBNEIsZ0JBRWxDbEIsTUFBQSxZQUFBUyxhQUFBO0lBQU1VLENBQUMsRUFBQztFQUErSSxDQUFPLENBQzNKLENBQUM7QUFBQSxDQUNQO0FBRURmLFlBQVksQ0FBQ2dCLFNBQVMsR0FBRztFQUN2QmQsS0FBSyxFQUFFZSxxQkFBUyxDQUFDQyxLQUFLLENBQUM7SUFDckJmLENBQUMsRUFBRWMscUJBQVMsQ0FBQ0UsSUFBSTtJQUNqQmYsQ0FBQyxFQUFFYSxxQkFBUyxDQUFDRTtFQUNmLENBQUMsQ0FBQztFQUNGaEIsQ0FBQyxFQUFFYyxxQkFBUyxDQUFDRyxNQUFNO0VBQ25CaEIsQ0FBQyxFQUFFYSxxQkFBUyxDQUFDRztBQUNmLENBQUM7QUFBQyxJQUFBQyxRQUFBLEdBQUFDLE9BQUEsY0FFYXRCLFlBQVkiLCJpZ25vcmVMaXN0IjpbXX0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IncorrectSVG.js","names":["_react","_interopRequireDefault","require","IncorrectSVG","_ref","scale","x","y","createElement","width","height","viewBox","fill","stroke","strokeWidth","style","pointerEvents","xmlns","d","_default","exports"],"sources":["../../../../src/tools/shared/icons/IncorrectSVG.jsx"],"sourcesContent":["import React from 'react';\n\nconst IncorrectSVG = ({ scale, x, y }) => (\n <svg\n width=\"14px\"\n height=\"14px\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"#ffffff\"\n strokeWidth=\"2\"\n x={scale.x(x) - 7}\n y={scale.y(y) - 7}\n style={{ pointerEvents: 'none' }}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path d=\"M17.705 7.705l-1.41-1.41L12 10.59 7.705 6.295l-1.41 1.41L10.59 12l-4.295 4.295 1.41 1.41L12 13.41l4.295 4.295 1.41-1.41L13.41 12l4.295-4.295z\"></path>\n </svg>\n);\n\nexport default IncorrectSVG;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,
|
|
1
|
+
{"version":3,"file":"IncorrectSVG.js","names":["_react","_interopRequireDefault","require","_propTypes","IncorrectSVG","_ref","scale","x","y","createElement","width","height","viewBox","fill","stroke","strokeWidth","style","pointerEvents","xmlns","d","propTypes","PropTypes","shape","func","number","_default","exports"],"sources":["../../../../src/tools/shared/icons/IncorrectSVG.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst IncorrectSVG = ({ scale, x, y }) => (\n <svg\n width=\"14px\"\n height=\"14px\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"#ffffff\"\n strokeWidth=\"2\"\n x={scale.x(x) - 7}\n y={scale.y(y) - 7}\n style={{ pointerEvents: 'none' }}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path d=\"M17.705 7.705l-1.41-1.41L12 10.59 7.705 6.295l-1.41 1.41L10.59 12l-4.295 4.295 1.41 1.41L12 13.41l4.295 4.295 1.41-1.41L13.41 12l4.295-4.295z\"></path>\n </svg>\n);\n\nIncorrectSVG.propTypes = {\n scale: PropTypes.shape({\n x: PropTypes.func,\n y: PropTypes.func,\n }),\n x: PropTypes.number,\n y: PropTypes.number,\n};\n\nexport default IncorrectSVG;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAME,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA;EAAA,IAAMC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,CAAC,GAAAF,IAAA,CAADE,CAAC;IAAEC,CAAC,GAAAH,IAAA,CAADG,CAAC;EAAA,oBACjCR,MAAA,YAAAS,aAAA;IACEC,KAAK,EAAC,MAAM;IACZC,MAAM,EAAC,MAAM;IACbC,OAAO,EAAC,WAAW;IACnBC,IAAI,EAAC,MAAM;IACXC,MAAM,EAAC,SAAS;IAChBC,WAAW,EAAC,GAAG;IACfR,CAAC,EAAED,KAAK,CAACC,CAAC,CAACA,CAAC,CAAC,GAAG,CAAE;IAClBC,CAAC,EAAEF,KAAK,CAACE,CAAC,CAACA,CAAC,CAAC,GAAG,CAAE;IAClBQ,KAAK,EAAE;MAAEC,aAAa,EAAE;IAAO,CAAE;IACjCC,KAAK,EAAC;EAA4B,gBAElClB,MAAA,YAAAS,aAAA;IAAMU,CAAC,EAAC;EAA+I,CAAO,CAC3J,CAAC;AAAA,CACP;AAEDf,YAAY,CAACgB,SAAS,GAAG;EACvBd,KAAK,EAAEe,qBAAS,CAACC,KAAK,CAAC;IACrBf,CAAC,EAAEc,qBAAS,CAACE,IAAI;IACjBf,CAAC,EAAEa,qBAAS,CAACE;EACf,CAAC,CAAC;EACFhB,CAAC,EAAEc,qBAAS,CAACG,MAAM;EACnBhB,CAAC,EAAEa,qBAAS,CAACG;AACf,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEatB,YAAY","ignoreList":[]}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports["default"] = void 0;
|
|
8
8
|
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
10
|
var MissingSVG = function MissingSVG(_ref) {
|
|
10
11
|
var scale = _ref.scale,
|
|
11
12
|
x = _ref.x,
|
|
@@ -26,5 +27,13 @@ var MissingSVG = function MissingSVG(_ref) {
|
|
|
26
27
|
fill: "white"
|
|
27
28
|
}));
|
|
28
29
|
};
|
|
30
|
+
MissingSVG.propTypes = {
|
|
31
|
+
scale: _propTypes["default"].shape({
|
|
32
|
+
x: _propTypes["default"].func,
|
|
33
|
+
y: _propTypes["default"].func
|
|
34
|
+
}),
|
|
35
|
+
x: _propTypes["default"].number,
|
|
36
|
+
y: _propTypes["default"].number
|
|
37
|
+
};
|
|
29
38
|
var _default = exports["default"] = MissingSVG;
|
|
30
|
-
//# sourceMappingURL=
|
|
39
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9wcm9wVHlwZXMiLCJNaXNzaW5nU1ZHIiwiX3JlZiIsInNjYWxlIiwieCIsInkiLCJjcmVhdGVFbGVtZW50Iiwid2lkdGgiLCJoZWlnaHQiLCJ2aWV3Qm94IiwiZmlsbCIsInhtbG5zIiwic3R5bGUiLCJwb2ludGVyRXZlbnRzIiwiZCIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsInNoYXBlIiwiZnVuYyIsIm51bWJlciIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90b29scy9zaGFyZWQvaWNvbnMvTWlzc2luZ1NWRy5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5cbmNvbnN0IE1pc3NpbmdTVkcgPSAoeyBzY2FsZSwgeCwgeSB9KSA9PiAoXG4gIDxzdmdcbiAgICB3aWR0aD1cIjlcIlxuICAgIGhlaWdodD1cIjEwXCJcbiAgICB2aWV3Qm94PVwiMCAwIDkgMTBcIlxuICAgIGZpbGw9XCJub25lXCJcbiAgICB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCJcbiAgICB4PXtzY2FsZS54KHgpIC0gNC41fVxuICAgIHk9e3NjYWxlLnkoeSkgLSA1fVxuICAgIHN0eWxlPXt7IHBvaW50ZXJFdmVudHM6ICdub25lJyB9fVxuICA+XG4gICAgPHBhdGhcbiAgICAgIGQ9XCJNMC4xMjUgMy43NjU2MlYxLjM0Mzc1QzAuMTI1IDEuMDg5ODQgMC4zMjAzMTIgMC44NzUgMC41OTM3NSAwLjg3NUgzLjAxNTYyQzMuMTMyODEgMC44NzUgMy4yNSAwLjk5MjE4OCAzLjI1IDEuMTA5MzhWMS44OTA2MkMzLjI1IDIuMDI3MzQgMy4xMzI4MSAyLjEyNSAzLjAxNTYyIDIuMTI1SDEuMzc1VjMuNzY1NjJDMS4zNzUgMy45MDIzNCAxLjI1NzgxIDQgMS4xNDA2MiA0SDAuMzU5Mzc1QzAuMjIyNjU2IDQgMC4xMjUgMy45MDIzNCAwLjEyNSAzLjc2NTYyWk01Ljc1IDEuMTA5MzhDNS43NSAwLjk5MjE4OCA1Ljg0NzY2IDAuODc1IDUuOTg0MzggMC44NzVIOC40MDYyNUM4LjY2MDE2IDAuODc1IDguODc1IDEuMDg5ODQgOC44NzUgMS4zNDM3NVYzLjc2NTYyQzguODc1IDMuOTAyMzQgOC43NTc4MSA0IDguNjQwNjIgNEg3Ljg1OTM4QzcuNzIyNjYgNCA3LjYyNSAzLjkwMjM0IDcuNjI1IDMuNzY1NjJWMi4xMjVINS45ODQzOEM1Ljg0NzY2IDIuMTI1IDUuNzUgMi4wMjczNCA1Ljc1IDEuODkwNjJWMS4xMDkzOFpNOC42NDA2MiA2LjVDOC43NTc4MSA2LjUgOC44NzUgNi42MTcxOSA4Ljg3NSA2LjczNDM4VjkuMTU2MjVDOC44NzUgOS40Mjk2OSA4LjY2MDE2IDkuNjI1IDguNDA2MjUgOS42MjVINS45ODQzOEM1Ljg0NzY2IDkuNjI1IDUuNzUgOS41MjczNCA1Ljc1IDkuMzkwNjJWOC42MDkzOEM1Ljc1IDguNDkyMTkgNS44NDc2NiA4LjM3NSA1Ljk4NDM4IDguMzc1SDcuNjI1VjYuNzM0MzhDNy42MjUgNi42MTcxOSA3LjcyMjY2IDYuNSA3Ljg1OTM4IDYuNUg4LjY0MDYyWk0zLjI1IDkuMzkwNjJDMy4yNSA5LjUyNzM0IDMuMTMyODEgOS42MjUgMy4wMTU2MiA5LjYyNUgwLjU5Mzc1QzAuMzIwMzEyIDkuNjI1IDAuMTI1IDkuNDI5NjkgMC4xMjUgOS4xNTYyNVY2LjczNDM4QzAuMTI1IDYuNjE3MTkgMC4yMjI2NTYgNi41IDAuMzU5Mzc1IDYuNUgxLjE0MDYyQzEuMjU3ODEgNi41IDEuMzc1IDYuNjE3MTkgMS4zNzUgNi43MzQzOFY4LjM3NUgzLjAxNTYyQzMuMTMyODEgOC4zNzUgMy4yNSA4LjQ5MjE5IDMuMjUgOC42MDkzOFY5LjM5MDYyWlwiXG4gICAgICBmaWxsPVwid2hpdGVcIlxuICAgIC8+XG4gIDwvc3ZnPlxuKTtcblxuTWlzc2luZ1NWRy5wcm9wVHlwZXMgPSB7XG4gIHNjYWxlOiBQcm9wVHlwZXMuc2hhcGUoe1xuICAgIHg6IFByb3BUeXBlcy5mdW5jLFxuICAgIHk6IFByb3BUeXBlcy5mdW5jLFxuICB9KSxcbiAgeDogUHJvcFR5cGVzLm51bWJlcixcbiAgeTogUHJvcFR5cGVzLm51bWJlcixcbn07XG5cbmV4cG9ydCBkZWZhdWx0IE1pc3NpbmdTVkc7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxVQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFNRSxVQUFVLEdBQUcsU0FBYkEsVUFBVUEsQ0FBQUMsSUFBQTtFQUFBLElBQU1DLEtBQUssR0FBQUQsSUFBQSxDQUFMQyxLQUFLO0lBQUVDLENBQUMsR0FBQUYsSUFBQSxDQUFERSxDQUFDO0lBQUVDLENBQUMsR0FBQUgsSUFBQSxDQUFERyxDQUFDO0VBQUEsb0JBQy9CUixNQUFBLFlBQUFTLGFBQUE7SUFDRUMsS0FBSyxFQUFDLEdBQUc7SUFDVEMsTUFBTSxFQUFDLElBQUk7SUFDWEMsT0FBTyxFQUFDLFVBQVU7SUFDbEJDLElBQUksRUFBQyxNQUFNO0lBQ1hDLEtBQUssRUFBQyw0QkFBNEI7SUFDbENQLENBQUMsRUFBRUQsS0FBSyxDQUFDQyxDQUFDLENBQUNBLENBQUMsQ0FBQyxHQUFHLEdBQUk7SUFDcEJDLENBQUMsRUFBRUYsS0FBSyxDQUFDRSxDQUFDLENBQUNBLENBQUMsQ0FBQyxHQUFHLENBQUU7SUFDbEJPLEtBQUssRUFBRTtNQUFFQyxhQUFhLEVBQUU7SUFBTztFQUFFLGdCQUVqQ2hCLE1BQUEsWUFBQVMsYUFBQTtJQUNFUSxDQUFDLEVBQUMsa2hDQUFraEM7SUFDcGhDSixJQUFJLEVBQUM7RUFBTyxDQUNiLENBQ0UsQ0FBQztBQUFBLENBQ1A7QUFFRFQsVUFBVSxDQUFDYyxTQUFTLEdBQUc7RUFDckJaLEtBQUssRUFBRWEscUJBQVMsQ0FBQ0MsS0FBSyxDQUFDO0lBQ3JCYixDQUFDLEVBQUVZLHFCQUFTLENBQUNFLElBQUk7SUFDakJiLENBQUMsRUFBRVcscUJBQVMsQ0FBQ0U7RUFDZixDQUFDLENBQUM7RUFDRmQsQ0FBQyxFQUFFWSxxQkFBUyxDQUFDRyxNQUFNO0VBQ25CZCxDQUFDLEVBQUVXLHFCQUFTLENBQUNHO0FBQ2YsQ0FBQztBQUFDLElBQUFDLFFBQUEsR0FBQUMsT0FBQSxjQUVhcEIsVUFBVSIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MissingSVG.js","names":["_react","_interopRequireDefault","require","MissingSVG","_ref","scale","x","y","createElement","width","height","viewBox","fill","xmlns","style","pointerEvents","d","_default","exports"],"sources":["../../../../src/tools/shared/icons/MissingSVG.jsx"],"sourcesContent":["import React from 'react';\n\nconst MissingSVG = ({ scale, x, y }) => (\n <svg\n width=\"9\"\n height=\"10\"\n viewBox=\"0 0 9 10\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n x={scale.x(x) - 4.5}\n y={scale.y(y) - 5}\n style={{ pointerEvents: 'none' }}\n >\n <path\n d=\"M0.125 3.76562V1.34375C0.125 1.08984 0.320312 0.875 0.59375 0.875H3.01562C3.13281 0.875 3.25 0.992188 3.25 1.10938V1.89062C3.25 2.02734 3.13281 2.125 3.01562 2.125H1.375V3.76562C1.375 3.90234 1.25781 4 1.14062 4H0.359375C0.222656 4 0.125 3.90234 0.125 3.76562ZM5.75 1.10938C5.75 0.992188 5.84766 0.875 5.98438 0.875H8.40625C8.66016 0.875 8.875 1.08984 8.875 1.34375V3.76562C8.875 3.90234 8.75781 4 8.64062 4H7.85938C7.72266 4 7.625 3.90234 7.625 3.76562V2.125H5.98438C5.84766 2.125 5.75 2.02734 5.75 1.89062V1.10938ZM8.64062 6.5C8.75781 6.5 8.875 6.61719 8.875 6.73438V9.15625C8.875 9.42969 8.66016 9.625 8.40625 9.625H5.98438C5.84766 9.625 5.75 9.52734 5.75 9.39062V8.60938C5.75 8.49219 5.84766 8.375 5.98438 8.375H7.625V6.73438C7.625 6.61719 7.72266 6.5 7.85938 6.5H8.64062ZM3.25 9.39062C3.25 9.52734 3.13281 9.625 3.01562 9.625H0.59375C0.320312 9.625 0.125 9.42969 0.125 9.15625V6.73438C0.125 6.61719 0.222656 6.5 0.359375 6.5H1.14062C1.25781 6.5 1.375 6.61719 1.375 6.73438V8.375H3.01562C3.13281 8.375 3.25 8.49219 3.25 8.60938V9.39062Z\"\n fill=\"white\"\n />\n </svg>\n);\n\nexport default MissingSVG;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,
|
|
1
|
+
{"version":3,"file":"MissingSVG.js","names":["_react","_interopRequireDefault","require","_propTypes","MissingSVG","_ref","scale","x","y","createElement","width","height","viewBox","fill","xmlns","style","pointerEvents","d","propTypes","PropTypes","shape","func","number","_default","exports"],"sources":["../../../../src/tools/shared/icons/MissingSVG.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst MissingSVG = ({ scale, x, y }) => (\n <svg\n width=\"9\"\n height=\"10\"\n viewBox=\"0 0 9 10\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n x={scale.x(x) - 4.5}\n y={scale.y(y) - 5}\n style={{ pointerEvents: 'none' }}\n >\n <path\n d=\"M0.125 3.76562V1.34375C0.125 1.08984 0.320312 0.875 0.59375 0.875H3.01562C3.13281 0.875 3.25 0.992188 3.25 1.10938V1.89062C3.25 2.02734 3.13281 2.125 3.01562 2.125H1.375V3.76562C1.375 3.90234 1.25781 4 1.14062 4H0.359375C0.222656 4 0.125 3.90234 0.125 3.76562ZM5.75 1.10938C5.75 0.992188 5.84766 0.875 5.98438 0.875H8.40625C8.66016 0.875 8.875 1.08984 8.875 1.34375V3.76562C8.875 3.90234 8.75781 4 8.64062 4H7.85938C7.72266 4 7.625 3.90234 7.625 3.76562V2.125H5.98438C5.84766 2.125 5.75 2.02734 5.75 1.89062V1.10938ZM8.64062 6.5C8.75781 6.5 8.875 6.61719 8.875 6.73438V9.15625C8.875 9.42969 8.66016 9.625 8.40625 9.625H5.98438C5.84766 9.625 5.75 9.52734 5.75 9.39062V8.60938C5.75 8.49219 5.84766 8.375 5.98438 8.375H7.625V6.73438C7.625 6.61719 7.72266 6.5 7.85938 6.5H8.64062ZM3.25 9.39062C3.25 9.52734 3.13281 9.625 3.01562 9.625H0.59375C0.320312 9.625 0.125 9.42969 0.125 9.15625V6.73438C0.125 6.61719 0.222656 6.5 0.359375 6.5H1.14062C1.25781 6.5 1.375 6.61719 1.375 6.73438V8.375H3.01562C3.13281 8.375 3.25 8.49219 3.25 8.60938V9.39062Z\"\n fill=\"white\"\n />\n </svg>\n);\n\nMissingSVG.propTypes = {\n scale: PropTypes.shape({\n x: PropTypes.func,\n y: PropTypes.func,\n }),\n x: PropTypes.number,\n y: PropTypes.number,\n};\n\nexport default MissingSVG;\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAME,UAAU,GAAG,SAAbA,UAAUA,CAAAC,IAAA;EAAA,IAAMC,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,CAAC,GAAAF,IAAA,CAADE,CAAC;IAAEC,CAAC,GAAAH,IAAA,CAADG,CAAC;EAAA,oBAC/BR,MAAA,YAAAS,aAAA;IACEC,KAAK,EAAC,GAAG;IACTC,MAAM,EAAC,IAAI;IACXC,OAAO,EAAC,UAAU;IAClBC,IAAI,EAAC,MAAM;IACXC,KAAK,EAAC,4BAA4B;IAClCP,CAAC,EAAED,KAAK,CAACC,CAAC,CAACA,CAAC,CAAC,GAAG,GAAI;IACpBC,CAAC,EAAEF,KAAK,CAACE,CAAC,CAACA,CAAC,CAAC,GAAG,CAAE;IAClBO,KAAK,EAAE;MAAEC,aAAa,EAAE;IAAO;EAAE,gBAEjChB,MAAA,YAAAS,aAAA;IACEQ,CAAC,EAAC,khCAAkhC;IACphCJ,IAAI,EAAC;EAAO,CACb,CACE,CAAC;AAAA,CACP;AAEDT,UAAU,CAACc,SAAS,GAAG;EACrBZ,KAAK,EAAEa,qBAAS,CAACC,KAAK,CAAC;IACrBb,CAAC,EAAEY,qBAAS,CAACE,IAAI;IACjBb,CAAC,EAAEW,qBAAS,CAACE;EACf,CAAC,CAAC;EACFd,CAAC,EAAEY,qBAAS,CAACG,MAAM;EACnBd,CAAC,EAAEW,qBAAS,CAACG;AACf,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,cAEapB,UAAU","ignoreList":[]}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
5
|
+
var _index = require("../index");
|
|
6
|
+
var _plot = require("@pie-lib/plot");
|
|
7
|
+
var _testUtils = require("@pie-lib/test-utils");
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _utils = require("../../../../__tests__/utils");
|
|
10
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
11
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
12
|
+
var xy = _plot.utils.xy;
|
|
13
|
+
var xyLabel = function xyLabel(x, y, label) {
|
|
14
|
+
return {
|
|
15
|
+
x: x,
|
|
16
|
+
y: y,
|
|
17
|
+
label: label
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
describe('lineTool', function () {
|
|
21
|
+
describe('addPoint', function () {
|
|
22
|
+
var toolbar;
|
|
23
|
+
beforeEach(function () {
|
|
24
|
+
toolbar = (0, _index.lineTool)('lineType', function () {
|
|
25
|
+
return /*#__PURE__*/_react["default"].createElement("div", null);
|
|
26
|
+
})();
|
|
27
|
+
});
|
|
28
|
+
it('returns a building mark', function () {
|
|
29
|
+
var result = toolbar.addPoint(xy(1, 1));
|
|
30
|
+
expect(result).toEqual({
|
|
31
|
+
type: 'lineType',
|
|
32
|
+
building: true,
|
|
33
|
+
from: xy(1, 1)
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
it('returns a complete mark', function () {
|
|
37
|
+
var result = toolbar.addPoint(xy(1, 1), {
|
|
38
|
+
from: xy(0, 0)
|
|
39
|
+
});
|
|
40
|
+
expect(result).toEqual({
|
|
41
|
+
building: false,
|
|
42
|
+
from: xy(0, 0),
|
|
43
|
+
to: xy(1, 1)
|
|
44
|
+
});
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
});
|
|
48
|
+
describe('lineToolComponent', function () {
|
|
49
|
+
var Comp;
|
|
50
|
+
var mark;
|
|
51
|
+
var onChange;
|
|
52
|
+
var renderComponent = function renderComponent(extras) {
|
|
53
|
+
var defaults = {
|
|
54
|
+
mark: mark,
|
|
55
|
+
onChange: jest.fn(),
|
|
56
|
+
graphProps: (0, _utils.graphProps)()
|
|
57
|
+
};
|
|
58
|
+
var props = _objectSpread(_objectSpread({}, defaults), extras);
|
|
59
|
+
return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(Comp, props));
|
|
60
|
+
};
|
|
61
|
+
beforeEach(function () {
|
|
62
|
+
Comp = (0, _index.lineToolComponent)(function () {
|
|
63
|
+
return /*#__PURE__*/_react["default"].createElement("text", null);
|
|
64
|
+
});
|
|
65
|
+
mark = {
|
|
66
|
+
from: xy(0, 0),
|
|
67
|
+
to: xy(1, 1)
|
|
68
|
+
};
|
|
69
|
+
});
|
|
70
|
+
describe('rendering', function () {
|
|
71
|
+
it('renders without crashing', function () {
|
|
72
|
+
var _renderComponent = renderComponent(),
|
|
73
|
+
container = _renderComponent.container;
|
|
74
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
});
|
|
78
|
+
describe('lineBase', function () {
|
|
79
|
+
var Comp;
|
|
80
|
+
var onChange = jest.fn();
|
|
81
|
+
var changeMarkProps = jest.fn();
|
|
82
|
+
beforeEach(function () {
|
|
83
|
+
Comp = (0, _index.lineBase)(function () {
|
|
84
|
+
return /*#__PURE__*/_react["default"].createElement("text", null);
|
|
85
|
+
});
|
|
86
|
+
onChange.mockClear();
|
|
87
|
+
changeMarkProps.mockClear();
|
|
88
|
+
});
|
|
89
|
+
var renderComponent = function renderComponent(extras) {
|
|
90
|
+
var defaults = {
|
|
91
|
+
onChange: onChange,
|
|
92
|
+
changeMarkProps: changeMarkProps,
|
|
93
|
+
graphProps: (0, _utils.graphProps)(),
|
|
94
|
+
from: xy(0, 0),
|
|
95
|
+
to: xy(1, 1)
|
|
96
|
+
};
|
|
97
|
+
var props = _objectSpread(_objectSpread({}, defaults), extras);
|
|
98
|
+
return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(Comp, props));
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
// used to test items that have labels attached to points
|
|
102
|
+
var labelNode = document.createElement('foreignObject');
|
|
103
|
+
var renderWithLabels = function renderWithLabels() {
|
|
104
|
+
var extras = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
105
|
+
return renderComponent(_objectSpread(_objectSpread({}, extras), {}, {
|
|
106
|
+
labelNode: labelNode,
|
|
107
|
+
from: xyLabel(0, 0, 'A'),
|
|
108
|
+
to: xyLabel(1, 1, 'B')
|
|
109
|
+
}));
|
|
110
|
+
};
|
|
111
|
+
describe('rendering', function () {
|
|
112
|
+
it('renders without crashing', function () {
|
|
113
|
+
var _renderComponent2 = renderComponent(),
|
|
114
|
+
container = _renderComponent2.container;
|
|
115
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
116
|
+
});
|
|
117
|
+
it('renders with labels', function () {
|
|
118
|
+
var _renderWithLabels = renderWithLabels(),
|
|
119
|
+
container = _renderWithLabels.container;
|
|
120
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
121
|
+
});
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfaW5kZXgiLCJyZXF1aXJlIiwiX3Bsb3QiLCJfdGVzdFV0aWxzIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl91dGlscyIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwieHkiLCJ1dGlscyIsInh5TGFiZWwiLCJ4IiwieSIsImxhYmVsIiwiZGVzY3JpYmUiLCJ0b29sYmFyIiwiYmVmb3JlRWFjaCIsImxpbmVUb29sIiwiY3JlYXRlRWxlbWVudCIsIml0IiwicmVzdWx0IiwiYWRkUG9pbnQiLCJleHBlY3QiLCJ0b0VxdWFsIiwidHlwZSIsImJ1aWxkaW5nIiwiZnJvbSIsInRvIiwiQ29tcCIsIm1hcmsiLCJvbkNoYW5nZSIsInJlbmRlckNvbXBvbmVudCIsImV4dHJhcyIsImRlZmF1bHRzIiwiamVzdCIsImZuIiwiZ3JhcGhQcm9wcyIsImdldEdyYXBoUHJvcHMiLCJwcm9wcyIsInJlbmRlciIsImxpbmVUb29sQ29tcG9uZW50IiwiX3JlbmRlckNvbXBvbmVudCIsImNvbnRhaW5lciIsImZpcnN0Q2hpbGQiLCJ0b0JlSW5UaGVEb2N1bWVudCIsImNoYW5nZU1hcmtQcm9wcyIsImxpbmVCYXNlIiwibW9ja0NsZWFyIiwibGFiZWxOb2RlIiwiZG9jdW1lbnQiLCJyZW5kZXJXaXRoTGFiZWxzIiwidW5kZWZpbmVkIiwiX3JlbmRlckNvbXBvbmVudDIiLCJfcmVuZGVyV2l0aExhYmVscyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy90b29scy9zaGFyZWQvbGluZS9fX3Rlc3RzX18vaW5kZXgudGVzdC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgbGluZVRvb2wsIGxpbmVUb29sQ29tcG9uZW50LCBsaW5lQmFzZSB9IGZyb20gJy4uL2luZGV4JztcbmltcG9ydCB7IHV0aWxzIH0gZnJvbSAnQHBpZS1saWIvcGxvdCc7XG5pbXBvcnQgeyByZW5kZXIgfSBmcm9tICdAcGllLWxpYi90ZXN0LXV0aWxzJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBncmFwaFByb3BzIGFzIGdldEdyYXBoUHJvcHMgfSBmcm9tICcuLi8uLi8uLi8uLi9fX3Rlc3RzX18vdXRpbHMnO1xuXG5jb25zdCB7IHh5IH0gPSB1dGlscztcbmNvbnN0IHh5TGFiZWwgPSAoeCwgeSwgbGFiZWwpID0+ICh7IHgsIHksIGxhYmVsIH0pO1xuXG5kZXNjcmliZSgnbGluZVRvb2wnLCAoKSA9PiB7XG4gIGRlc2NyaWJlKCdhZGRQb2ludCcsICgpID0+IHtcbiAgICBsZXQgdG9vbGJhcjtcbiAgICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICAgIHRvb2xiYXIgPSBsaW5lVG9vbCgnbGluZVR5cGUnLCAoKSA9PiA8ZGl2IC8+KSgpO1xuICAgIH0pO1xuICAgIGl0KCdyZXR1cm5zIGEgYnVpbGRpbmcgbWFyaycsICgpID0+IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IHRvb2xiYXIuYWRkUG9pbnQoeHkoMSwgMSkpO1xuICAgICAgZXhwZWN0KHJlc3VsdCkudG9FcXVhbCh7XG4gICAgICAgIHR5cGU6ICdsaW5lVHlwZScsXG4gICAgICAgIGJ1aWxkaW5nOiB0cnVlLFxuICAgICAgICBmcm9tOiB4eSgxLCAxKSxcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JldHVybnMgYSBjb21wbGV0ZSBtYXJrJywgKCkgPT4ge1xuICAgICAgY29uc3QgcmVzdWx0ID0gdG9vbGJhci5hZGRQb2ludCh4eSgxLCAxKSwgeyBmcm9tOiB4eSgwLCAwKSB9KTtcbiAgICAgIGV4cGVjdChyZXN1bHQpLnRvRXF1YWwoe1xuICAgICAgICBidWlsZGluZzogZmFsc2UsXG4gICAgICAgIGZyb206IHh5KDAsIDApLFxuICAgICAgICB0bzogeHkoMSwgMSksXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcblxuZGVzY3JpYmUoJ2xpbmVUb29sQ29tcG9uZW50JywgKCkgPT4ge1xuICBsZXQgQ29tcDtcbiAgbGV0IG1hcms7XG4gIGxldCBvbkNoYW5nZTtcbiAgY29uc3QgcmVuZGVyQ29tcG9uZW50ID0gKGV4dHJhcykgPT4ge1xuICAgIGNvbnN0IGRlZmF1bHRzID0ge1xuICAgICAgbWFyayxcbiAgICAgIG9uQ2hhbmdlOiBqZXN0LmZuKCksXG4gICAgICBncmFwaFByb3BzOiBnZXRHcmFwaFByb3BzKCksXG4gICAgfTtcbiAgICBjb25zdCBwcm9wcyA9IHsgLi4uZGVmYXVsdHMsIC4uLmV4dHJhcyB9O1xuXG4gICAgcmV0dXJuIHJlbmRlcig8Q29tcCB7Li4ucHJvcHN9IC8+KTtcbiAgfTtcblxuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBDb21wID0gbGluZVRvb2xDb21wb25lbnQoKCkgPT4gPHRleHQgLz4pO1xuICAgIG1hcmsgPSB7IGZyb206IHh5KDAsIDApLCB0bzogeHkoMSwgMSkgfTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3JlbmRlcmluZycsICgpID0+IHtcbiAgICBpdCgncmVuZGVycyB3aXRob3V0IGNyYXNoaW5nJywgKCkgPT4ge1xuICAgICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlckNvbXBvbmVudCgpO1xuICAgICAgZXhwZWN0KGNvbnRhaW5lci5maXJzdENoaWxkKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuXG5kZXNjcmliZSgnbGluZUJhc2UnLCAoKSA9PiB7XG4gIGxldCBDb21wO1xuICBsZXQgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG4gIGxldCBjaGFuZ2VNYXJrUHJvcHMgPSBqZXN0LmZuKCk7XG5cbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgQ29tcCA9IGxpbmVCYXNlKCgpID0+IDx0ZXh0IC8+KTtcbiAgICBvbkNoYW5nZS5tb2NrQ2xlYXIoKTtcbiAgICBjaGFuZ2VNYXJrUHJvcHMubW9ja0NsZWFyKCk7XG4gIH0pO1xuXG4gIGNvbnN0IHJlbmRlckNvbXBvbmVudCA9IChleHRyYXMpID0+IHtcbiAgICBjb25zdCBkZWZhdWx0cyA9IHtcbiAgICAgIG9uQ2hhbmdlLFxuICAgICAgY2hhbmdlTWFya1Byb3BzLFxuICAgICAgZ3JhcGhQcm9wczogZ2V0R3JhcGhQcm9wcygpLFxuICAgICAgZnJvbTogeHkoMCwgMCksXG4gICAgICB0bzogeHkoMSwgMSksXG4gICAgfTtcbiAgICBjb25zdCBwcm9wcyA9IHsgLi4uZGVmYXVsdHMsIC4uLmV4dHJhcyB9O1xuXG4gICAgcmV0dXJuIHJlbmRlcig8Q29tcCB7Li4ucHJvcHN9IC8+KTtcbiAgfTtcblxuICAvLyB1c2VkIHRvIHRlc3QgaXRlbXMgdGhhdCBoYXZlIGxhYmVscyBhdHRhY2hlZCB0byBwb2ludHNcbiAgY29uc3QgbGFiZWxOb2RlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnZm9yZWlnbk9iamVjdCcpO1xuICBjb25zdCByZW5kZXJXaXRoTGFiZWxzID0gKGV4dHJhcyA9IHt9KSA9PlxuICAgIHJlbmRlckNvbXBvbmVudCh7XG4gICAgICAuLi5leHRyYXMsXG4gICAgICBsYWJlbE5vZGU6IGxhYmVsTm9kZSxcbiAgICAgIGZyb206IHh5TGFiZWwoMCwgMCwgJ0EnKSxcbiAgICAgIHRvOiB4eUxhYmVsKDEsIDEsICdCJyksXG4gICAgfSk7XG5cbiAgZGVzY3JpYmUoJ3JlbmRlcmluZycsICgpID0+IHtcbiAgICBpdCgncmVuZGVycyB3aXRob3V0IGNyYXNoaW5nJywgKCkgPT4ge1xuICAgICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlckNvbXBvbmVudCgpO1xuICAgICAgZXhwZWN0KGNvbnRhaW5lci5maXJzdENoaWxkKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlbmRlcnMgd2l0aCBsYWJlbHMnLCAoKSA9PiB7XG4gICAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyV2l0aExhYmVscygpO1xuICAgICAgZXhwZWN0KGNvbnRhaW5lci5maXJzdENoaWxkKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsS0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsVUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsTUFBQSxHQUFBQyxzQkFBQSxDQUFBSixPQUFBO0FBQ0EsSUFBQUssTUFBQSxHQUFBTCxPQUFBO0FBQTBFLFNBQUFNLFFBQUFDLENBQUEsRUFBQUMsQ0FBQSxRQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSixDQUFBLE9BQUFHLE1BQUEsQ0FBQUUscUJBQUEsUUFBQUMsQ0FBQSxHQUFBSCxNQUFBLENBQUFFLHFCQUFBLENBQUFMLENBQUEsR0FBQUMsQ0FBQSxLQUFBSyxDQUFBLEdBQUFBLENBQUEsQ0FBQUMsTUFBQSxXQUFBTixDQUFBLFdBQUFFLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQVIsQ0FBQSxFQUFBQyxDQUFBLEVBQUFRLFVBQUEsT0FBQVAsQ0FBQSxDQUFBUSxJQUFBLENBQUFDLEtBQUEsQ0FBQVQsQ0FBQSxFQUFBSSxDQUFBLFlBQUFKLENBQUE7QUFBQSxTQUFBVSxjQUFBWixDQUFBLGFBQUFDLENBQUEsTUFBQUEsQ0FBQSxHQUFBWSxTQUFBLENBQUFDLE1BQUEsRUFBQWIsQ0FBQSxVQUFBQyxDQUFBLFdBQUFXLFNBQUEsQ0FBQVosQ0FBQSxJQUFBWSxTQUFBLENBQUFaLENBQUEsUUFBQUEsQ0FBQSxPQUFBRixPQUFBLENBQUFJLE1BQUEsQ0FBQUQsQ0FBQSxPQUFBYSxPQUFBLFdB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
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
6
|
+
var _testUtils = require("@pie-lib/test-utils");
|
|
7
|
+
var _react = _interopRequireDefault(require("react"));
|
|
8
|
+
var _utils = require("../../../../__tests__/utils");
|
|
9
|
+
var _plot = require("@pie-lib/plot");
|
|
10
|
+
var lineUtils = _interopRequireWildcard(require("../../../../utils"));
|
|
11
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
12
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
13
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
14
|
+
var xy = _plot.utils.xy;
|
|
15
|
+
var bounds = lineUtils.bounds,
|
|
16
|
+
pointsToArea = lineUtils.pointsToArea;
|
|
17
|
+
jest.mock('../../../../utils', function () {
|
|
18
|
+
var a = jest.requireActual('../../../../utils');
|
|
19
|
+
return {
|
|
20
|
+
pointsToArea: jest.fn().mockReturnValue({}),
|
|
21
|
+
bounds: jest.fn().mockReturnValue({}),
|
|
22
|
+
point: a.point
|
|
23
|
+
};
|
|
24
|
+
});
|
|
25
|
+
jest.mock('@pie-lib/plot', function () {
|
|
26
|
+
var a = jest.requireActual('@pie-lib/plot');
|
|
27
|
+
return {
|
|
28
|
+
gridDraggable: jest.fn(function (opts) {
|
|
29
|
+
return jest.fn();
|
|
30
|
+
}),
|
|
31
|
+
types: a.types,
|
|
32
|
+
utils: a.utils
|
|
33
|
+
};
|
|
34
|
+
});
|
|
35
|
+
describe('LinePath', function () {
|
|
36
|
+
var LinePath;
|
|
37
|
+
var onChange = jest.fn();
|
|
38
|
+
beforeEach(function () {
|
|
39
|
+
LinePath = require('../line-path').LinePath;
|
|
40
|
+
});
|
|
41
|
+
var renderComponent = function renderComponent(extras) {
|
|
42
|
+
var defaults = {
|
|
43
|
+
classes: {},
|
|
44
|
+
className: 'className',
|
|
45
|
+
onChange: onChange,
|
|
46
|
+
graphProps: (0, _utils.graphProps)(),
|
|
47
|
+
from: xy(0, 0, 0),
|
|
48
|
+
to: xy(1, 1, 0),
|
|
49
|
+
data: [xy(0, 0, 0), xy(1, 1, 0)]
|
|
50
|
+
};
|
|
51
|
+
var props = _objectSpread(_objectSpread({}, defaults), extras);
|
|
52
|
+
return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(LinePath, props));
|
|
53
|
+
};
|
|
54
|
+
describe('rendering', function () {
|
|
55
|
+
it('renders without crashing', function () {
|
|
56
|
+
var _renderComponent = renderComponent(),
|
|
57
|
+
container = _renderComponent.container;
|
|
58
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdGVzdFV0aWxzIiwicmVxdWlyZSIsIl9yZWFjdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfdXRpbHMiLCJfcGxvdCIsImxpbmVVdGlscyIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiZSIsInQiLCJXZWFrTWFwIiwiciIsIm4iLCJfX2VzTW9kdWxlIiwibyIsImkiLCJmIiwiX19wcm90b19fIiwiX3R5cGVvZiIsImhhcyIsImdldCIsInNldCIsIl90IiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJvd25LZXlzIiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsImZpbHRlciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsInh5IiwidXRpbHMiLCJib3VuZHMiLCJwb2ludHNUb0FyZWEiLCJqZXN0IiwibW9jayIsImEiLCJyZXF1aXJlQWN0dWFsIiwiZm4iLCJtb2NrUmV0dXJuVmFsdWUiLCJwb2ludCIsImdyaWREcmFnZ2FibGUiLCJvcHRzIiwidHlwZXMiLCJkZXNjcmliZSIsIkxpbmVQYXRoIiwib25DaGFuZ2UiLCJiZWZvcmVFYWNoIiwicmVuZGVyQ29tcG9uZW50IiwiZXh0cmFzIiwiZGVmYXVsdHMiLCJjbGFzc2VzIiwiY2xhc3NOYW1lIiwiZ3JhcGhQcm9wcyIsImdldEdyYXBoUHJvcHMiLCJmcm9tIiwidG8iLCJkYXRhIiwicHJvcHMiLCJyZW5kZXIiLCJjcmVhdGVFbGVtZW50IiwiaXQiLCJfcmVuZGVyQ29tcG9uZW50IiwiY29udGFpbmVyIiwiZXhwZWN0IiwiZmlyc3RDaGlsZCIsInRvQmVJblRoZURvY3VtZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3Rvb2xzL3NoYXJlZC9saW5lL19fdGVzdHNfXy9saW5lLXBhdGgudGVzdC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVuZGVyIH0gZnJvbSAnQHBpZS1saWIvdGVzdC11dGlscyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgZ3JhcGhQcm9wcyBhcyBnZXRHcmFwaFByb3BzIH0gZnJvbSAnLi4vLi4vLi4vLi4vX190ZXN0c19fL3V0aWxzJztcbmltcG9ydCB7IGdyaWREcmFnZ2FibGUsIHV0aWxzIH0gZnJvbSAnQHBpZS1saWIvcGxvdCc7XG5jb25zdCB7IHh5IH0gPSB1dGlscztcblxuaW1wb3J0ICogYXMgbGluZVV0aWxzIGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzJztcblxuY29uc3QgeyBib3VuZHMsIHBvaW50c1RvQXJlYSB9ID0gbGluZVV0aWxzO1xuamVzdC5tb2NrKCcuLi8uLi8uLi8uLi91dGlscycsICgpID0+IHtcbiAgY29uc3QgYSA9IGplc3QucmVxdWlyZUFjdHVhbCgnLi4vLi4vLi4vLi4vdXRpbHMnKTtcbiAgcmV0dXJuIHtcbiAgICBwb2ludHNUb0FyZWE6IGplc3QuZm4oKS5tb2NrUmV0dXJuVmFsdWUoe30pLFxuICAgIGJvdW5kczogamVzdC5mbigpLm1vY2tSZXR1cm5WYWx1ZSh7fSksXG4gICAgcG9pbnQ6IGEucG9pbnQsXG4gIH07XG59KTtcblxuamVzdC5tb2NrKCdAcGllLWxpYi9wbG90JywgKCkgPT4ge1xuICBjb25zdCBhID0gamVzdC5yZXF1aXJlQWN0dWFsKCdAcGllLWxpYi9wbG90Jyk7XG4gIHJldHVybiB7XG4gICAgZ3JpZERyYWdnYWJsZTogamVzdC5mbigob3B0cykgPT4gamVzdC5mbigpKSxcbiAgICB0eXBlczogYS50eXBlcyxcbiAgICB1dGlsczogYS51dGlscyxcbiAgfTtcbn0pO1xuXG5kZXNjcmliZSgnTGluZVBhdGgnLCAoKSA9PiB7XG4gIGxldCBMaW5lUGF0aDtcbiAgbGV0IG9uQ2hhbmdlID0gamVzdC5mbigpO1xuICBiZWZvcmVFYWNoKCgpID0+IHtcbiAgICBMaW5lUGF0aCA9IHJlcXVpcmUoJy4uL2xpbmUtcGF0aCcpLkxpbmVQYXRoO1xuICB9KTtcbiAgY29uc3QgcmVuZGVyQ29tcG9uZW50ID0gKGV4dHJhcykgPT4ge1xuICAgIGNvbnN0IGRlZmF1bHRzID0ge1xuICAgICAgY2xhc3Nlczoge30sXG4gICAgICBjbGFzc05hbWU6ICdjbGFzc05hbWUnLFxuICAgICAgb25DaGFuZ2UsXG4gICAgICBncmFwaFByb3BzOiBnZXRHcmFwaFByb3BzKCksXG4gICAgICBmcm9tOiB4eSgwLCAwLCAwKSxcbiAgICAgIHRvOiB4eSgxLCAxLCAwKSxcbiAgICAgIGRhdGE6IFt4eSgwLCAwLCAwKSwgeHkoMSwgMSwgMCldLFxuICAgIH07XG4gICAgY29uc3QgcHJvcHMgPSB7IC4uLmRlZmF1bHRzLCAuLi5leHRyYXMgfTtcbiAgICByZXR1cm4gcmVuZGVyKDxMaW5lUGF0aCB7Li4ucHJvcHN9IC8+KTtcbiAgfTtcbiAgZGVzY3JpYmUoJ3JlbmRlcmluZycsICgpID0+IHtcbiAgICBpdCgncmVuZGVycyB3aXRob3V0IGNyYXNoaW5nJywgKCkgPT4ge1xuICAgICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlckNvbXBvbmVudCgpO1xuICAgICAgZXhwZWN0KGNvbnRhaW5lci5maXJzdENoaWxkKS50b0JlSW5UaGVEb2N1bWVudCgpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFBLElBQUFBLFVBQUEsR0FBQUMsT0FBQTtBQUNBLElBQUFDLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLEtBQUEsR0FBQUosT0FBQTtBQUdBLElBQUFLLFNBQUEsR0FBQUMsdUJBQUEsQ0FBQU4sT0FBQTtBQUErQyxTQUFBTSx3QkFBQUMsQ0FBQSxFQUFBQyxDQUFBLDZC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
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
5
|
+
var _testUtils = require("@pie-lib/test-utils");
|
|
6
|
+
var _react = _interopRequireDefault(require("react"));
|
|
7
|
+
var _withRootEdge = require("../with-root-edge");
|
|
8
|
+
var _utils = require("../../../../__tests__/utils");
|
|
9
|
+
var _plot = require("@pie-lib/plot");
|
|
10
|
+
var _index = require("../index");
|
|
11
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
13
|
+
var xy = _plot.utils.xy;
|
|
14
|
+
jest.mock('../index', function () {
|
|
15
|
+
var out = {
|
|
16
|
+
lineBase: jest.fn().mockReturnValue(function () {
|
|
17
|
+
return /*#__PURE__*/_react["default"].createElement("div", null);
|
|
18
|
+
}),
|
|
19
|
+
lineToolComponent: jest.fn().mockReturnValue(function () {
|
|
20
|
+
return /*#__PURE__*/_react["default"].createElement("div", null);
|
|
21
|
+
})
|
|
22
|
+
};
|
|
23
|
+
return out;
|
|
24
|
+
});
|
|
25
|
+
describe('rootEdgeToToFromWrapper', function () {
|
|
26
|
+
var Comp;
|
|
27
|
+
var onChange = jest.fn();
|
|
28
|
+
beforeEach(function () {
|
|
29
|
+
Comp = (0, _withRootEdge.rootEdgeToFromToWrapper)(function () {
|
|
30
|
+
return /*#__PURE__*/_react["default"].createElement("div", null);
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
var renderComponent = function renderComponent(extras) {
|
|
34
|
+
var defaults = {
|
|
35
|
+
mark: {
|
|
36
|
+
root: xy(1, 1),
|
|
37
|
+
edge: xy(2, 2)
|
|
38
|
+
},
|
|
39
|
+
onChange: onChange
|
|
40
|
+
};
|
|
41
|
+
var props = _objectSpread(_objectSpread({}, defaults), extras);
|
|
42
|
+
return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(Comp, props));
|
|
43
|
+
};
|
|
44
|
+
it('renders without crashing', function () {
|
|
45
|
+
var _renderComponent = renderComponent(),
|
|
46
|
+
container = _renderComponent.container;
|
|
47
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
48
|
+
});
|
|
49
|
+
it('passes mark as from/to', function () {
|
|
50
|
+
var _renderComponent2 = renderComponent(),
|
|
51
|
+
container = _renderComponent2.container;
|
|
52
|
+
// Component transforms root/edge to from/to internally
|
|
53
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
54
|
+
});
|
|
55
|
+
it('handles onChange with root/edge transformation', function () {
|
|
56
|
+
renderComponent();
|
|
57
|
+
// onChange transformation is tested through component behavior
|
|
58
|
+
expect(onChange).toBeDefined();
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
describe('rootEdgeComponent', function () {
|
|
62
|
+
var onChange = jest.fn();
|
|
63
|
+
var Comp;
|
|
64
|
+
var mark;
|
|
65
|
+
beforeEach(function () {
|
|
66
|
+
mark = {
|
|
67
|
+
root: xy(0, 0),
|
|
68
|
+
edge: xy(1, 1)
|
|
69
|
+
};
|
|
70
|
+
Comp = (0, _withRootEdge.rootEdgeComponent)(function () {
|
|
71
|
+
return /*#__PURE__*/_react["default"].createElement("text", null);
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
var renderComponent = function renderComponent(extras) {
|
|
75
|
+
var defaults = {
|
|
76
|
+
mark: mark,
|
|
77
|
+
graphProps: (0, _utils.graphProps)(),
|
|
78
|
+
onChange: onChange
|
|
79
|
+
};
|
|
80
|
+
var props = _objectSpread(_objectSpread({}, defaults), extras);
|
|
81
|
+
return (0, _testUtils.render)(/*#__PURE__*/_react["default"].createElement(Comp, props));
|
|
82
|
+
};
|
|
83
|
+
describe('rendering', function () {
|
|
84
|
+
it('renders without crashing', function () {
|
|
85
|
+
var _renderComponent3 = renderComponent(),
|
|
86
|
+
container = _renderComponent3.container;
|
|
87
|
+
expect(container.firstChild).toBeInTheDocument();
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfdGVzdFV0aWxzIiwicmVxdWlyZSIsIl9yZWFjdCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfd2l0aFJvb3RFZGdlIiwiX3V0aWxzIiwiX3Bsb3QiLCJfaW5kZXgiLCJvd25LZXlzIiwiZSIsInIiLCJ0IiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsIm8iLCJmaWx0ZXIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsInh5IiwidXRpbHMiLCJqZXN0IiwibW9jayIsIm91dCIsImxpbmVCYXNlIiwiZm4iLCJtb2NrUmV0dXJuVmFsdWUiLCJjcmVhdGVFbGVtZW50IiwibGluZVRvb2xDb21wb25lbnQiLCJkZXNjcmliZSIsIkNvbXAiLCJvbkNoYW5nZSIsImJlZm9yZUVhY2giLCJyb290RWRnZVRvRnJvbVRvV3JhcHBlciIsInJlbmRlckNvbXBvbmVudCIsImV4dHJhcyIsImRlZmF1bHRzIiwibWFyayIsInJvb3QiLCJlZGdlIiwicHJvcHMiLCJyZW5kZXIiLCJpdCIsIl9yZW5kZXJDb21wb25lbnQiLCJjb250YWluZXIiLCJleHBlY3QiLCJmaXJzdENoaWxkIiwidG9CZUluVGhlRG9jdW1lbnQiLCJfcmVuZGVyQ29tcG9uZW50MiIsInRvQmVEZWZpbmVkIiwicm9vdEVkZ2VDb21wb25lbnQiLCJncmFwaFByb3BzIiwiZ2V0R3JhcGhQcm9wcyIsIl9yZW5kZXJDb21wb25lbnQzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL3Rvb2xzL3NoYXJlZC9saW5lL19fdGVzdHNfXy93aXRoLXJvb3QtZWRnZS50ZXN0LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyByZW5kZXIgfSBmcm9tICdAcGllLWxpYi90ZXN0LXV0aWxzJztcbmltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyByb290RWRnZUNvbXBvbmVudCwgd2l0aFJvb3RFZGdlLCByb290RWRnZVRvRnJvbVRvV3JhcHBlciB9IGZyb20gJy4uL3dpdGgtcm9vdC1lZGdlJztcbmltcG9ydCB7IGdyYXBoUHJvcHMgYXMgZ2V0R3JhcGhQcm9wcyB9IGZyb20gJy4uLy4uLy4uLy4uL19fdGVzdHNfXy91dGlscyc7XG5pbXBvcnQgeyB1dGlscyB9IGZyb20gJ0BwaWUtbGliL3Bsb3QnO1xuaW1wb3J0IHsgbGluZVRvb2xDb21wb25lbnQsIExpbmVUb29sTW9ja0NvbXBvbmVudCB9IGZyb20gJy4uL2luZGV4JztcbmNvbnN0IHsgeHkgfSA9IHV0aWxzO1xuamVzdC5tb2NrKCcuLi9pbmRleCcsICgpID0+IHtcbiAgY29uc3Qgb3V0ID0ge1xuICAgIGxpbmVCYXNlOiBqZXN0LmZuKCkubW9ja1JldHVyblZhbHVlKCgpID0+IDxkaXYgLz4pLFxuICAgIGxpbmVUb29sQ29tcG9uZW50OiBqZXN0LmZuKCkubW9ja1JldHVyblZhbHVlKCgpID0+IDxkaXYgLz4pLFxuICB9O1xuICByZXR1cm4gb3V0O1xufSk7XG5cbmRlc2NyaWJlKCdyb290RWRnZVRvVG9Gcm9tV3JhcHBlcicsICgpID0+IHtcbiAgbGV0IENvbXA7XG4gIGxldCBvbkNoYW5nZSA9IGplc3QuZm4oKTtcbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgQ29tcCA9IHJvb3RFZGdlVG9Gcm9tVG9XcmFwcGVyKCgpID0+IDxkaXYgLz4pO1xuICB9KTtcbiAgY29uc3QgcmVuZGVyQ29tcG9uZW50ID0gKGV4dHJhcykgPT4ge1xuICAgIGNvbnN0IGRlZmF1bHRzID0ge1xuICAgICAgbWFyazogeyByb290OiB4eSgxLCAxKSwgZWRnZTogeHkoMiwgMikgfSxcbiAgICAgIG9uQ2hhbmdlLFxuICAgIH07XG4gICAgY29uc3QgcHJvcHMgPSB7IC4uLmRlZmF1bHRzLCAuLi5leHRyYXMgfTtcbiAgICByZXR1cm4gcmVuZGVyKDxDb21wIHsuLi5wcm9wc30gLz4pO1xuICB9O1xuXG4gIGl0KCdyZW5kZXJzIHdpdGhvdXQgY3Jhc2hpbmcnLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlckNvbXBvbmVudCgpO1xuICAgIGV4cGVjdChjb250YWluZXIuZmlyc3RDaGlsZCkudG9CZUluVGhlRG9jdW1lbnQoKTtcbiAgfSk7XG5cbiAgaXQoJ3Bhc3NlcyBtYXJrIGFzIGZyb20vdG8nLCAoKSA9PiB7XG4gICAgY29uc3QgeyBjb250YWluZXIgfSA9IHJlbmRlckNvbXBvbmVudCgpO1xuICAgIC8vIENvbXBvbmVudCB0cmFuc2Zvcm1zIHJvb3QvZWRnZSB0byBmcm9tL3RvIGludGVybmFsbHlcbiAgICBleHBlY3QoY29udGFpbmVyLmZpcnN0Q2hpbGQpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gIH0pO1xuXG4gIGl0KCdoYW5kbGVzIG9uQ2hhbmdlIHdpdGggcm9vdC9lZGdlIHRyYW5zZm9ybWF0aW9uJywgKCkgPT4ge1xuICAgIHJlbmRlckNvbXBvbmVudCgpO1xuICAgIC8vIG9uQ2hhbmdlIHRyYW5zZm9ybWF0aW9uIGlzIHRlc3RlZCB0aHJvdWdoIGNvbXBvbmVudCBiZWhhdmlvclxuICAgIGV4cGVjdChvbkNoYW5nZSkudG9CZURlZmluZWQoKTtcbiAgfSk7XG59KTtcblxuZGVzY3JpYmUoJ3Jvb3RFZGdlQ29tcG9uZW50JywgKCkgPT4ge1xuICBsZXQgb25DaGFuZ2UgPSBqZXN0LmZuKCk7XG4gIGxldCBDb21wO1xuICBsZXQgbWFyaztcbiAgYmVmb3JlRWFjaCgoKSA9PiB7XG4gICAgbWFyayA9IHsgcm9vdDogeHkoMCwgMCksIGVkZ2U6IHh5KDEsIDEpIH07XG4gICAgQ29tcCA9IHJvb3RFZGdlQ29tcG9uZW50KCgpID0+IDx0ZXh0IC8+KTtcbiAgfSk7XG4gIGNvbnN0IHJlbmRlckNvbXBvbmVudCA9IChleHRyYXMpID0+IHtcbiAgICBjb25zdCBkZWZhdWx0cyA9IHtcbiAgICAgIG1hcmssXG4gICAgICBncmFwaFByb3BzOiBnZXRHcmFwaFByb3BzKCksXG4gICAgICBvbkNoYW5nZSxcbiAgICB9O1xuXG4gICAgY29uc3QgcHJvcHMgPSB7IC4uLmRlZmF1bHRzLCAuLi5leHRyYXMgfTtcbiAgICByZXR1cm4gcmVuZGVyKDxDb21wIHsuLi5wcm9wc30gLz4pO1xuICB9O1xuICBkZXNjcmliZSgncmVuZGVyaW5nJywgKCkgPT4ge1xuICAgIGl0KCdyZW5kZXJzIHdpdGhvdXQgY3Jhc2hpbmcnLCAoKSA9PiB7XG4gICAgICBjb25zdCB7IGNvbnRhaW5lciB9ID0gcmVuZGVyQ29tcG9uZW50KCk7XG4gICAgICBleHBlY3QoY29udGFpbmVyLmZpcnN0Q2hpbGQpLnRvQmVJblRoZURvY3VtZW50KCk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxJQUFBQSxVQUFBLEdBQUFDLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxhQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxNQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxLQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxNQUFBLEdBQUFOLE9BQUE7QUFBb0UsU0FBQU8sUUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFFBQUFDLENBQUEsR0FBQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLENBQUEsT0FBQUcsTUFBQSxDQUFBRSxxQkFBQSxRQUFBQyxDQUFBLEdBQUFILE1BQUEsQ0FBQUUscUJBQUEsQ0FBQUwsQ0FBQSxHQUFBQyxDQUFBLEtBQUFLLENBQUEsR0FBQUEsQ0FBQSxDQUFBQyxNQUFBLFdBQUFOLENBQUEsV0FBQUUsTUFBQSxDQUFBSyx3QkFBQSxDQUFBUixDQUFBLEVBQUFDLENBQUEsRUFBQVEsVUFBQSxPQUFBUCxDQUFBLENBQUFRLElBQUEsQ0FBQUMs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SUFDQUMsTUFBTSxDQUFDRCxTQUFTLENBQUNFLFVBQVUsQ0FBQyxDQUFDQyxpQkFBaUIsQ0FBQyxDQUFDO0VBQ2xELENBQUMsQ0FBQztFQUVGTCxFQUFFLENBQUMsZ0RBQWdELEVBQUUsWUFBTTtJQUN6RFIsZUFBZSxDQUFDLENBQUM7SUFDakI7SUFDQVcsTUFBTSxDQUFDZCxRQUFRLENBQUMsQ0FBQ2tCLFdBQVcsQ0FBQyxDQUFDO0VBQ2hDLENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGcEIsUUFBUSxDQUFDLG1CQUFtQixFQUFFLFlBQU07RUFDbEMsSUFBSUUsUUFBUSxHQUFHVixJQUFJLENBQUNJLEVBQUUsQ0FBQyxDQUFDO0VBQ3hCLElBQUlLLElBQUk7RUFDUixJQUFJTyxJQUFJO0VBQ1JMLFVBQVUsQ0FBQyxZQUFNO0lBQ2ZLLElBQUksR0FBRztNQUFFQyxJQUFJLEVBQUVuQixFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztNQUFFb0IsSUFBSSxFQUFFcEIsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQUUsQ0FBQztJQUN6Q1csSUFBSSxHQUFHLElBQUFvQiwrQkFBaUIsRUFBQztNQUFBLG9CQUFNMUQsTUFBQSxZQUFBbUMsYUFBQSxhQUFPLENBQUM7SUFBQSxFQUFDO0VBQzFDLENBQUMsQ0FBQztFQUNGLElBQU1PLGVBQWUsR0FBRyxTQUFsQkEsZUFBZUEsQ0FBSUMsTUFBTSxFQUFLO0lBQ2xDLElBQU1DLFFBQVEsR0FBRztNQUNmQyxJQUFJLEVBQUpBLElBQUk7TUFDSmMsVUFBVSxFQUFFLElBQUFDLGlCQUFhLEVBQUMsQ0FBQztNQUMzQnJCLFFBQVEsRUFBUkE7SUFDRixDQUFDO0lBRUQsSUFBTVMsS0FBSyxHQUFBN0IsYUFBQSxDQUFBQSxhQUFBLEtBQVF5QixRQUFRLEdBQUtELE1BQU0sQ0FBRTtJQUN4QyxPQUFPLElBQUFNLGlCQUFNLGVBQUNqRCxNQUFBLFlBQUFtQyxhQUFBLENBQUNHLElBQUksRUFBS1UsS0FBUSxDQUFDLENBQUM7RUFDcEMsQ0FBQztFQUNEWCxRQUFRLENBQUMsV0FBVyxFQUFFLFlBQU07SUFDMUJhLEVBQUUsQ0FBQywwQkFBMEIsRUFBRSxZQUFNO01BQ25DLElBQUFXLGlCQUFBLEdBQXNCbkIsZUFBZSxDQUFDLENBQUM7UUFBL0JVLFNBQVMsR0FBQVMsaUJBQUEsQ0FBVFQsU0FBUztNQUNqQkMsTUFBTSxDQUFDRCxTQUFTLENBQUNFLFVBQVUsQ0FBQyxDQUFDQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ2xELENBQUMsQ0FBQztFQUNKLENBQUMsQ0FBQztBQUNKLENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -209,7 +209,14 @@ var lineToolComponent = exports.lineToolComponent = function lineToolComponent(C
|
|
|
209
209
|
}
|
|
210
210
|
}]);
|
|
211
211
|
}(_react["default"].Component), (0, _defineProperty2["default"])(_LineToolComponent, "propTypes", _objectSpread(_objectSpread({}, _plot.types.ToolPropTypeFields), {}, {
|
|
212
|
-
graphProps: _plot.types.GraphPropsType.isRequired
|
|
212
|
+
graphProps: _plot.types.GraphPropsType.isRequired,
|
|
213
|
+
limitLabeling: _propTypes["default"].bool,
|
|
214
|
+
changeMarkProps: _propTypes["default"].func,
|
|
215
|
+
disabled: _propTypes["default"].bool,
|
|
216
|
+
from: _plot.types.PointType,
|
|
217
|
+
to: _plot.types.PointType,
|
|
218
|
+
labelModeEnabled: _propTypes["default"].bool,
|
|
219
|
+
onClick: _propTypes["default"].func
|
|
213
220
|
})), _LineToolComponent;
|
|
214
221
|
};
|
|
215
222
|
var dragOpts = function dragOpts() {
|
|
@@ -389,7 +396,7 @@ var lineBase = exports.lineBase = function lineBase(Comp, opts) {
|
|
|
389
396
|
var toLabelNode = null;
|
|
390
397
|
var lineLabelNode = null;
|
|
391
398
|
if (labelNode) {
|
|
392
|
-
if (from &&
|
|
399
|
+
if (from && Object.prototype.hasOwnProperty.call(from, 'label')) {
|
|
393
400
|
fromLabelNode = /*#__PURE__*/_reactDom["default"].createPortal(/*#__PURE__*/_react["default"].createElement(_markLabel["default"], {
|
|
394
401
|
inputRef: function inputRef(r) {
|
|
395
402
|
return _this3.input.from = r;
|
|
@@ -404,7 +411,7 @@ var lineBase = exports.lineBase = function lineBase(Comp, opts) {
|
|
|
404
411
|
}
|
|
405
412
|
}), labelNode);
|
|
406
413
|
}
|
|
407
|
-
if (to &&
|
|
414
|
+
if (to && Object.prototype.hasOwnProperty.call(to, 'label')) {
|
|
408
415
|
toLabelNode = /*#__PURE__*/_reactDom["default"].createPortal(/*#__PURE__*/_react["default"].createElement(_markLabel["default"], {
|
|
409
416
|
inputRef: function inputRef(r) {
|
|
410
417
|
return _this3.input.to = r;
|
|
@@ -419,7 +426,7 @@ var lineBase = exports.lineBase = function lineBase(Comp, opts) {
|
|
|
419
426
|
}
|
|
420
427
|
}), labelNode);
|
|
421
428
|
}
|
|
422
|
-
if (middle &&
|
|
429
|
+
if (middle && Object.prototype.hasOwnProperty.call(middle, 'label')) {
|
|
423
430
|
lineLabelNode = /*#__PURE__*/_reactDom["default"].createPortal(/*#__PURE__*/_react["default"].createElement(_markLabel["default"], {
|
|
424
431
|
inputRef: function inputRef(r) {
|
|
425
432
|
return _this3.input.middle = r;
|
|
@@ -485,9 +492,10 @@ var lineBase = exports.lineBase = function lineBase(Comp, opts) {
|
|
|
485
492
|
onClick: _propTypes["default"].func,
|
|
486
493
|
correctness: _propTypes["default"].string,
|
|
487
494
|
disabled: _propTypes["default"].bool,
|
|
488
|
-
|
|
495
|
+
limitLabeling: _propTypes["default"].bool,
|
|
496
|
+
changeMarkProps: _propTypes["default"].func,
|
|
489
497
|
labelModeEnabled: _propTypes["default"].bool,
|
|
490
|
-
|
|
498
|
+
labelNode: _propTypes["default"].object
|
|
491
499
|
});
|
|
492
500
|
return LineBase;
|
|
493
501
|
};
|
|
@@ -535,4 +543,4 @@ var styles = exports.styles = {
|
|
|
535
543
|
});
|
|
536
544
|
}
|
|
537
545
|
};
|
|
538
|
-
//# sourceMappingURL=index.js.map
|
|
546
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9pc0VxdWFsIiwiX2Nsb25lRGVlcCIsIl9wb2ludCIsIl9wbG90IiwiX3Byb3BUeXBlcyIsIl9zdHlsZXMiLCJfcmVhY3REb20iLCJfbWFya0xhYmVsIiwiX2lzRW1wdHkiLCJfcmVuZGVyVWkiLCJfdXRpbHMiLCJfc3R5bGVzMiIsIl9jYWxsU3VwZXIiLCJ0IiwibyIsImUiLCJfZ2V0UHJvdG90eXBlT2YyIiwiX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4yIiwiX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCIsIlJlZmxlY3QiLCJjb25zdHJ1Y3QiLCJjb25zdHJ1Y3RvciIsImFwcGx5IiwiQm9vbGVhbiIsInByb3RvdHlwZSIsInZhbHVlT2YiLCJjYWxsIiwib3duS2V5cyIsInIiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwiZmlsdGVyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZW51bWVyYWJsZSIsInB1c2giLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiU3R5bGVkTGluZUdyb3VwIiwic3R5bGVkIiwiX3JlZiIsImRpc2FibGVkIiwiY29ycmVjdG5lc3MiLCJmaWxsIiwic3Ryb2tlIiwiY29sb3IiLCJkZWZhdWx0cyIsIkJMQUNLIiwic3Ryb2tlV2lkdGgiLCJ0cmFuc2l0aW9uIiwiUFJJTUFSWV9EQVJLIiwiZGlzYWJsZWRTZWNvbmRhcnkiLCJjb3JyZWN0IiwiaW5jb3JyZWN0IiwibWlzc2luZyIsInN0cm9rZURhc2hhcnJheSIsImxpbmVUb29sIiwiZXhwb3J0cyIsInR5cGUiLCJDb21wb25lbnQiLCJhZGRQb2ludCIsInBvaW50IiwibWFyayIsImVxdWFsUG9pbnRzIiwicm9vdCIsImJ1aWxkaW5nIiwiZnJvbSIsInRvIiwibGluZVRvb2xDb21wb25lbnQiLCJfTGluZVRvb2xDb21wb25lbnQiLCJfUmVhY3QkQ29tcG9uZW50IiwiTGluZVRvb2xDb21wb25lbnQiLCJwcm9wcyIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsInNldFN0YXRlIiwiX3RoaXMkcHJvcHMiLCJvbkNoYW5nZSIsInVwZGF0ZSIsInN0YXRlIiwidW5kZWZpbmVkIiwic2hvdWxkTm90Q2hhbmdlIiwic2FtZUF4ZXMiLCJ5IiwiaXNFcXVhbCIsIl9yZWYyIiwibWlkZGxlIiwiX3JlZjMiLCJfdGhpcyRwcm9wczIiLCJfaW5oZXJpdHMyIiwiX2NyZWF0ZUNsYXNzMiIsImtleSIsInZhbHVlIiwicmVuZGVyIiwiX3RoaXMkcHJvcHMzIiwiZ3JhcGhQcm9wcyIsIm9uQ2xpY2siLCJsYWJlbE5vZGUiLCJsYWJlbE1vZGVFbmFibGVkIiwiY29vcmRpbmF0ZXNPbkhvdmVyIiwibGltaXRMYWJlbGluZyIsImNsb25lRGVlcCIsImlzQmFja2dyb3VuZCIsImNyZWF0ZUVsZW1lbnQiLCJjaGFuZ2VNYXJrIiwiY2hhbmdlTWFya1Byb3BzIiwib25EcmFnU3RhcnQiLCJzdGFydERyYWciLCJvbkRyYWdTdG9wIiwic3RvcERyYWciLCJSZWFjdCIsInR5cGVzIiwiVG9vbFByb3BUeXBlRmllbGRzIiwiR3JhcGhQcm9wc1R5cGUiLCJpc1JlcXVpcmVkIiwiUHJvcFR5cGVzIiwiYm9vbCIsImZ1bmMiLCJQb2ludFR5cGUiLCJkcmFnT3B0cyIsImJvdW5kcyIsIl9yZWY0IiwiZG9tYWluIiwicmFuZ2UiLCJhcmVhIiwidXRpbHMiLCJsaW5lVG9BcmVhIiwiYW5jaG9yUG9pbnQiLCJmcm9tRGVsdGEiLCJkZWx0YSIsImFkZCIsImxpbmVCYXNlIiwiQ29tcCIsIm9wdHMiLCJEcmFnZ2FibGVDb21wIiwiZ3JpZERyYWdnYWJsZSIsIkZyb21Qb2ludCIsIkJhc2VQb2ludCIsIlRvUG9pbnQiLCJMaW5lQmFzZSIsIl9SZWFjdCRDb21wb25lbnQyIiwiX3RoaXMyIiwiX2xlbiIsImFyZ3MiLCJBcnJheSIsIl9rZXkiLCJjb25jYXQiLCJfdGhpczIkcHJvcHMiLCJnZXRNaWRkbGVPZlR3b1BvaW50cyIsIl9yZWY1IiwiZHJhZ2dlZEZyb20iLCJkcmFnZ2VkVG8iLCJfdGhpczIkcHJvcHMyIiwibGFiZWwiLCJ1cGRhdGVkIiwiX3RoaXMyJHByb3BzMyIsIm9uQ2hhbmdlUG9pbnQiLCJfdGhpczIkcHJvcHM0IiwiaXNFbXB0eSIsImRhdGEiLCJfdGhpczIkcHJvcHM1IiwiaW5wdXQiLCJmb2N1cyIsIl90aGlzMyIsIl90aGlzJHByb3BzNCIsImNvbW1vbiIsImFuZ2xlIiwidHJpZyIsInRvRGVncmVlcyIsImZyb21MYWJlbE5vZGUiLCJ0b0xhYmVsTm9kZSIsImxpbmVMYWJlbE5vZGUiLCJoYXNPd25Qcm9wZXJ0eSIsIlJlYWN0RE9NIiwiY3JlYXRlUG9ydGFsIiwiaW5wdXRSZWYiLCJsYWJlbENoYW5nZSIsIl9leHRlbmRzMiIsIm9uRHJhZyIsImRyYWdDb21wIiwiY2xpY2tQb2ludCIsIngiLCJkcmFnRnJvbSIsImRyYWdUbyIsInN0cmluZyIsIm9iamVjdCIsInN0eWxlcyIsImxpbmUiLCJhcnJvdyIsImRpc2FibGVkQXJyb3ciLCJ0aGVtZSJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90b29scy9zaGFyZWQvbGluZS9pbmRleC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBpc0VxdWFsIGZyb20gJ2xvZGFzaC9pc0VxdWFsJztcbmltcG9ydCBjbG9uZURlZXAgZnJvbSAnbG9kYXNoL2Nsb25lRGVlcCc7XG5pbXBvcnQgeyBCYXNlUG9pbnQgfSBmcm9tICcuLi9wb2ludCc7XG5pbXBvcnQgeyB0eXBlcywgdXRpbHMsIGdyaWREcmFnZ2FibGUsIHRyaWcgfSBmcm9tICdAcGllLWxpYi9wbG90JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgeyBkaXNhYmxlZCwgZGlzYWJsZWRTZWNvbmRhcnksIGNvcnJlY3QsIGluY29ycmVjdCwgbWlzc2luZyB9IGZyb20gJy4uL3N0eWxlcyc7XG5pbXBvcnQgUmVhY3RET00gZnJvbSAncmVhY3QtZG9tJztcbmltcG9ydCBNYXJrTGFiZWwgZnJvbSAnLi4vLi4vLi4vbWFyay1sYWJlbCc7XG5pbXBvcnQgaXNFbXB0eSBmcm9tICdsb2Rhc2gvaXNFbXB0eSc7XG5pbXBvcnQgeyBjb2xvciB9IGZyb20gJ0BwaWUtbGliL3JlbmRlci11aSc7XG5pbXBvcnQgeyBnZXRNaWRkbGVPZlR3b1BvaW50cywgZXF1YWxQb2ludHMsIHNhbWVBeGVzIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgc3R5bGVkIH0gZnJvbSAnQG11aS9tYXRlcmlhbC9zdHlsZXMnO1xuXG5jb25zdCBTdHlsZWRMaW5lR3JvdXAgPSBzdHlsZWQoJ2cnKSgoeyBkaXNhYmxlZCwgY29ycmVjdG5lc3MgfSkgPT4gKHtcbiAgJyYgbGluZSc6IHtcbiAgICBmaWxsOiAndHJhbnNwYXJlbnQnLFxuICAgIHN0cm9rZTogY29sb3IuZGVmYXVsdHMuQkxBQ0ssXG4gICAgc3Ryb2tlV2lkdGg6IDMsXG4gICAgdHJhbnNpdGlvbjogJ3N0cm9rZSAyMDBtcyBlYXNlLWluLCBzdHJva2Utd2lkdGggMjAwbXMgZWFzZS1pbicsXG4gICAgJyY6aG92ZXInOiB7XG4gICAgICBzdHJva2VXaWR0aDogNixcbiAgICAgIHN0cm9rZTogY29sb3IuZGVmYXVsdHMuUFJJTUFSWV9EQVJLLFxuICAgIH0sXG4gIH0sXG4gIC4uLihkaXNhYmxlZCAmJiB7XG4gICAgJyYgbGluZSc6IHtcbiAgICAgIC4uLmRpc2FibGVkU2Vjb25kYXJ5KCdzdHJva2UnKSxcbiAgICAgIHN0cm9rZVdpZHRoOiAyLFxuICAgIH0sXG4gIH0pLFxuICAuLi4oY29ycmVjdG5lc3MgPT09ICdjb3JyZWN0JyAmJiB7XG4gICAgJyYgbGluZSc6IHtcbiAgICAgIC4uLmNvcnJlY3QoJ3N0cm9rZScpLFxuICAgIH0sXG4gIH0pLFxuICAuLi4oY29ycmVjdG5lc3MgPT09ICdpbmNvcnJlY3QnICYmIHtcbiAgICAnJiBsaW5lJzoge1xuICAgICAgLi4uaW5jb3JyZWN0KCdzdHJva2UnKSxcbiAgICB9LFxuICB9KSxcbiAgLi4uKGNvcnJlY3RuZXNzID09PSAnbWlzc2luZycgJiYge1xuICAgICcmIGxpbmUnOiB7XG4gICAgICAuLi5taXNzaW5nKCdzdHJva2UnKSxcbiAgICAgIHN0cm9rZVdpZHRoOiAxLFxuICAgICAgc3Ryb2tlRGFzaGFycmF5OiAnNCAzJyxcbiAgICB9LFxuICB9KSxcbn0pKTtcblxuZXhwb3J0IGNvbnN0IGxpbmVUb29sID0gKHR5cGUsIENvbXBvbmVudCkgPT4gKCkgPT4gKHtcbiAgdHlwZSxcbiAgQ29tcG9uZW50LFxuICBhZGRQb2ludDogKHBvaW50LCBtYXJrKSA9PiB7XG4gICAgaWYgKG1hcmsgJiYgZXF1YWxQb2ludHMobWFyay5yb290LCBwb2ludCkpIHtcbiAgICAgIHJldHVybiBtYXJrO1xuICAgIH1cblxuICAgIGlmICghbWFyaykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZSxcbiAgICAgICAgYnVpbGRpbmc6IHRydWUsXG4gICAgICAgIGZyb206IHBvaW50LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAoZXF1YWxQb2ludHMocG9pbnQsIG1hcmsuZnJvbSkpIHtcbiAgICAgIHJldHVybiB7IC4uLm1hcmsgfTtcbiAgICB9XG5cbiAgICByZXR1cm4geyAuLi5tYXJrLCBidWlsZGluZzogZmFsc2UsIHRvOiBwb2ludCB9O1xuICB9LFxufSk7XG5cbmV4cG9ydCBjb25zdCBsaW5lVG9vbENvbXBvbmVudCA9IChDb21wb25lbnQpID0+IHtcbiAgcmV0dXJuIGNsYXNzIExpbmVUb29sQ29tcG9uZW50IGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgLi4udHlwZXMuVG9vbFByb3BUeXBlRmllbGRzLFxuICAgICAgZ3JhcGhQcm9wczogdHlwZXMuR3JhcGhQcm9wc1R5cGUuaXNSZXF1aXJlZCxcbiAgICAgIGxpbWl0TGFiZWxpbmc6IFByb3BUeXBlcy5ib29sLFxuICAgICAgY2hhbmdlTWFya1Byb3BzOiBQcm9wVHlwZXMuZnVuYyxcbiAgICAgIGRpc2FibGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgICAgIGZyb206IHR5cGVzLlBvaW50VHlwZSxcbiAgICAgIHRvOiB0eXBlcy5Qb2ludFR5cGUsXG4gICAgICBsYWJlbE1vZGVFbmFibGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgICAgIG9uQ2xpY2s6IFByb3BUeXBlcy5mdW5jLFxuICAgIH07XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm9wcykge1xuICAgICAgc3VwZXIocHJvcHMpO1xuICAgICAgdGhpcy5zdGF0ZSA9IHt9O1xuICAgIH1cblxuICAgIHN0YXJ0RHJhZyA9ICgpID0+IHRoaXMuc2V0U3RhdGUoeyBtYXJrOiB7IC4uLnRoaXMucHJvcHMubWFyayB9IH0pO1xuXG4gICAgc3RvcERyYWcgPSAoKSA9PiB7XG4gICAgICBjb25zdCB7IG9uQ2hhbmdlLCBtYXJrIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgdXBkYXRlID0geyAuLi50aGlzLnN0YXRlLm1hcmsgfTtcblxuICAgICAgdGhpcy5zZXRTdGF0ZSh7IG1hcms6IHVuZGVmaW5lZCB9LCAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHsgdHlwZSB9ID0gdXBkYXRlO1xuICAgICAgICBsZXQgc2hvdWxkTm90Q2hhbmdlID1cbiAgICAgICAgICB0eXBlICYmXG4gICAgICAgICAgKHR5cGUgPT09ICdwYXJhYm9sYScgfHwgdHlwZSA9PT0gJ3NpbmUnIHx8IHR5cGUgPT09ICdhYnNvbHV0ZScgfHwgdHlwZSA9PT0gJ2V4cG9uZW50aWFsJykgJiZcbiAgICAgICAgICBzYW1lQXhlcyh1cGRhdGUuZnJvbSwgdXBkYXRlLnRvKTtcbiAgICAgICAgaWYgKCFzaG91bGROb3RDaGFuZ2UgJiYgdHlwZSAmJiB0eXBlID09PSAnZXhwb25lbnRpYWwnICYmIHVwZGF0ZS5mcm9tICYmIHVwZGF0ZS50bykge1xuICAgICAgICAgIHNob3VsZE5vdENoYW5nZSA9IHVwZGF0ZS5mcm9tLnkgPT09IDAgfHwgdXBkYXRlLnRvLnkgPT09IDAgfHwgdXBkYXRlLmZyb20ueSAqIHVwZGF0ZS50by55IDwgMDtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIWlzRXF1YWwobWFyaywgdXBkYXRlKSAmJiAhc2hvdWxkTm90Q2hhbmdlKSB7XG4gICAgICAgICAgb25DaGFuZ2UobWFyaywgdXBkYXRlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfTtcblxuICAgIGNoYW5nZU1hcmsgPSAoeyBmcm9tLCB0bywgbWlkZGxlIH0pID0+IHtcbiAgICAgIGxldCBtYXJrID0geyAuLi50aGlzLnN0YXRlLm1hcmssIGZyb20sIHRvIH07XG5cbiAgICAgIGlmIChtaWRkbGUpIHtcbiAgICAgICAgbWFyayA9IHsgLi4ubWFyaywgbWlkZGxlIH07XG4gICAgICB9XG5cbiAgICAgIHRoaXMuc2V0U3RhdGUoeyBtYXJrIH0pO1xuICAgIH07XG5cbiAgICBjaGFuZ2VNYXJrUHJvcHMgPSAoeyBmcm9tLCB0bywgbWlkZGxlIH0pID0+IHtcbiAgICAgIGNvbnN0IHsgb25DaGFuZ2UsIG1hcmsgfSA9IHRoaXMucHJvcHM7XG4gICAgICBsZXQgdXBkYXRlID0geyAuLi5tYXJrLCAuLi50aGlzLnN0YXRlLm1hcmsgfTtcblxuICAgICAgaWYgKGZyb20pIHtcbiAgICAgICAgdXBkYXRlID0geyAuLi51cGRhdGUsIGZyb20gfTtcbiAgICAgIH1cblxuICAgICAgaWYgKHRvKSB7XG4gICAgICAgIHVwZGF0ZSA9IHsgLi4udXBkYXRlLCB0byB9O1xuICAgICAgfVxuXG4gICAgICBpZiAobWlkZGxlKSB7XG4gICAgICAgIHVwZGF0ZSA9IHsgLi4udXBkYXRlLCBtaWRkbGUgfTtcbiAgICAgIH1cblxuICAgICAgaWYgKCFpc0VxdWFsKG1hcmssIHVwZGF0ZSkpIHtcbiAgICAgICAgb25DaGFuZ2UobWFyaywgdXBkYXRlKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgcmVuZGVyKCkge1xuICAgICAgY29uc3QgeyBncmFwaFByb3BzLCBvbkNsaWNrLCBsYWJlbE5vZGUsIGxhYmVsTW9kZUVuYWJsZWQsIGNvb3JkaW5hdGVzT25Ib3ZlciwgbGltaXRMYWJlbGluZyB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IG1hcmsgPSB0aGlzLnN0YXRlLm1hcmsgPyB0aGlzLnN0YXRlLm1hcmsgOiB0aGlzLnByb3BzLm1hcms7XG5cbiAgICAgIGNvbnN0IGZyb20gPSBjbG9uZURlZXAobWFyay5mcm9tKTtcbiAgICAgIGNvbnN0IHRvID0gY2xvbmVEZWVwKG1hcmsudG8pO1xuICAgICAgY29uc3QgbWlkZGxlID0gY2xvbmVEZWVwKG1hcmsubWlkZGxlKTtcblxuICAgICAgLy8gU0VUIERJU0FCTEVEXG4gICAgICAvLyBpZiBpdCdzIGEgYmFja2dyb3VuZCBtYXJrLCB3ZSBuZWVkIHRvIGZvcmNlIGRpc2FibGUgaXRcbiAgICAgIGlmIChmcm9tICYmIG1hcmsuaXNCYWNrZ3JvdW5kKSB7XG4gICAgICAgIGZyb20uZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAodG8gJiYgbWFyay5pc0JhY2tncm91bmQpIHtcbiAgICAgICAgdG8uZGlzYWJsZWQgPSB0cnVlO1xuICAgICAgfVxuXG4gICAgICBpZiAobWlkZGxlICYmIG1hcmsuaXNCYWNrZ3JvdW5kKSB7XG4gICAgICAgIG1pZGRsZS5kaXNhYmxlZCA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiAoXG4gICAgICAgIDxDb21wb25lbnRcbiAgICAgICAgICBkaXNhYmxlZD17bWFyay5kaXNhYmxlZH1cbiAgICAgICAgICBjb29yZGluYXRlc09uSG92ZXI9e2Nvb3JkaW5hdGVzT25Ib3Zlcn1cbiAgICAgICAgICBjb3JyZWN0bmVzcz17bWFyay5jb3JyZWN0bmVzc31cbiAgICAgICAgICBmcm9tPXtmcm9tfVxuICAgICAgICAgIHRvPXt0b31cbiAgICAgICAgICBtaWRkbGU9e21pZGRsZX1cbiAgICAgICAgICBncmFwaFByb3BzPXtncmFwaFByb3BzfVxuICAgICAgICAgIG9uQ2hhbmdlPXt0aGlzLmNoYW5nZU1hcmt9XG4gICAgICAgICAgY2hhbmdlTWFya1Byb3BzPXt0aGlzLmNoYW5nZU1hcmtQcm9wc31cbiAgICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgICAgIG9uRHJhZ1N0YXJ0PXt0aGlzLnN0YXJ0RHJhZ31cbiAgICAgICAgICBvbkRyYWdTdG9wPXt0aGlzLnN0b3BEcmFnfVxuICAgICAgICAgIGxhYmVsTm9kZT17bGFiZWxOb2RlfVxuICAgICAgICAgIGxhYmVsTW9kZUVuYWJsZWQ9e2xhYmVsTW9kZUVuYWJsZWR9XG4gICAgICAgICAgbGltaXRMYWJlbGluZz17bGltaXRMYWJlbGluZ31cbiAgICAgICAgLz5cbiAgICAgICk7XG4gICAgfVxuICB9O1xufTtcblxuY29uc3QgZHJhZ09wdHMgPSAoKSA9PiAoe1xuICBib3VuZHM6IChwcm9wcywgeyBkb21haW4sIHJhbmdlIH0pID0+IHtcbiAgICBjb25zdCBhcmVhID0gdXRpbHMubGluZVRvQXJlYShwcm9wcy5mcm9tLCBwcm9wcy50byk7XG4gICAgcmV0dXJuIHV0aWxzLmJvdW5kcyhhcmVhLCBkb21haW4sIHJhbmdlKTtcbiAgfSxcbiAgYW5jaG9yUG9pbnQ6IChwcm9wcykgPT4ge1xuICAgIGNvbnN0IHsgZnJvbSB9ID0gcHJvcHM7XG4gICAgcmV0dXJuIGZyb207XG4gIH0sXG4gIGZyb21EZWx0YTogKHByb3BzLCBkZWx0YSkgPT4ge1xuICAgIGNvbnN0IHsgZnJvbSwgdG8gfSA9IHByb3BzO1xuICAgIHJldHVybiB7XG4gICAgICBmcm9tOiB1dGlscy5wb2ludChmcm9tKS5hZGQodXRpbHMucG9pbnQoZGVsdGEpKSxcbiAgICAgIHRvOiB1dGlscy5wb2ludCh0bykuYWRkKHV0aWxzLnBvaW50KGRlbHRhKSksXG4gICAgfTtcbiAgfSxcbn0pO1xuXG5leHBvcnQgY29uc3QgbGluZUJhc2UgPSAoQ29tcCwgb3B0cykgPT4ge1xuICBjb25zdCBEcmFnZ2FibGVDb21wID0gZ3JpZERyYWdnYWJsZShkcmFnT3B0cygpKShDb21wKTtcblxuICBjb25zdCBGcm9tUG9pbnQgPSBvcHRzICYmIG9wdHMuZnJvbSA/IG9wdHMuZnJvbSA6IEJhc2VQb2ludDtcbiAgY29uc3QgVG9Qb2ludCA9IG9wdHMgJiYgb3B0cy50byA/IG9wdHMudG8gOiBCYXNlUG9pbnQ7XG5cbiAgY2xhc3MgTGluZUJhc2UgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuICAgIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgICBjb29yZGluYXRlc09uSG92ZXI6IFByb3BUeXBlcy5ib29sLFxuICAgICAgZ3JhcGhQcm9wczogdHlwZXMuR3JhcGhQcm9wc1R5cGUsXG4gICAgICBmcm9tOiB0eXBlcy5Qb2ludFR5cGUsXG4gICAgICB0bzogdHlwZXMuUG9pbnRUeXBlLFxuICAgICAgbWlkZGxlOiB0eXBlcy5Qb2ludFR5cGUsXG4gICAgICBvbkNoYW5nZTogUHJvcFR5cGVzLmZ1bmMsXG4gICAgICBvbkRyYWdTdGFydDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgICBvbkRyYWdTdG9wOiBQcm9wVHlwZXMuZnVuYyxcbiAgICAgIG9uQ2xpY2s6IFByb3BUeXBlcy5mdW5jLFxuICAgICAgY29ycmVjdG5lc3M6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgICBkaXNhYmxlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBsaW1pdExhYmVsaW5nOiBQcm9wVHlwZXMuYm9vbCxcbiAgICAgIGNoYW5nZU1hcmtQcm9wczogUHJvcFR5cGVzLmZ1bmMsXG4gICAgICBsYWJlbE1vZGVFbmFibGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgICAgIGxhYmVsTm9kZTogUHJvcFR5cGVzLm9iamVjdCxcbiAgICB9O1xuXG4gICAgb25DaGFuZ2VQb2ludCA9IChwb2ludCkgPT4ge1xuICAgICAgY29uc3QgeyBtaWRkbGUsIG9uQ2hhbmdlIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgeyBmcm9tLCB0byB9ID0gcG9pbnQ7XG5cbiAgICAgIC8vIGJlY2F1c2UgcG9pbnQuZnJvbS5sYWJlbCBhbmQgcG9pbnQudG8ubGFiZWwgY2FuIGJlIGRpZmZlcmVudFxuICAgICAgaWYgKCFlcXVhbFBvaW50cyhmcm9tLCB0bykpIHtcbiAgICAgICAgaWYgKG1pZGRsZSkge1xuICAgICAgICAgIHBvaW50Lm1pZGRsZSA9IHsgLi4ubWlkZGxlLCAuLi5nZXRNaWRkbGVPZlR3b1BvaW50cyhmcm9tLCB0bykgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIG9uQ2hhbmdlKHBvaW50KTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgZHJhZ0NvbXAgPSAoeyBmcm9tOiBkcmFnZ2VkRnJvbSwgdG86IGRyYWdnZWRUbyB9KSA9PiB7XG4gICAgICBjb25zdCB7IGZyb20sIHRvLCBvbkNoYW5nZSwgbWlkZGxlIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoZnJvbS5sYWJlbCkge1xuICAgICAgICBkcmFnZ2VkRnJvbS5sYWJlbCA9IGZyb20ubGFiZWw7XG4gICAgICB9XG5cbiAgICAgIGlmICh0by5sYWJlbCkge1xuICAgICAgICBkcmFnZ2VkVG8ubGFiZWwgPSB0by5sYWJlbDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdXBkYXRlZCA9IHsgZnJvbTogZHJhZ2dlZEZyb20sIHRvOiBkcmFnZ2VkVG8gfTtcblxuICAgICAgaWYgKG1pZGRsZSkge1xuICAgICAgICB1cGRhdGVkLm1pZGRsZSA9IHsgLi4ubWlkZGxlLCAuLi5nZXRNaWRkbGVPZlR3b1BvaW50cyhkcmFnZ2VkRnJvbSwgZHJhZ2dlZFRvKSB9O1xuICAgICAgfVxuXG4gICAgICBvbkNoYW5nZSh1cGRhdGVkKTtcbiAgICB9O1xuXG4gICAgZHJhZ0Zyb20gPSAoZHJhZ2dlZEZyb20pID0+IHtcbiAgICAgIGNvbnN0IHsgZnJvbSwgdG8gfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChmcm9tLmxhYmVsKSB7XG4gICAgICAgIGRyYWdnZWRGcm9tLmxhYmVsID0gZnJvbS5sYWJlbDtcbiAgICAgIH1cblxuICAgICAgaWYgKCFlcXVhbFBvaW50cyhkcmFnZ2VkRnJvbSwgdG8pKSB7XG4gICAgICAgIHRoaXMub25DaGFuZ2VQb2ludCh7IGZyb206IGRyYWdnZWRGcm9tLCB0bzogdG8gfSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIGRyYWdUbyA9IChkcmFnZ2VkVG8pID0+IHtcbiAgICAgIGNvbnN0IHsgZnJvbSwgdG8gfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmICh0by5sYWJlbCkge1xuICAgICAgICBkcmFnZ2VkVG8ubGFiZWwgPSB0by5sYWJlbDtcbiAgICAgIH1cblxuICAgICAgaWYgKCFlcXVhbFBvaW50cyhmcm9tLCBkcmFnZ2VkVG8pKSB7XG4gICAgICAgIHRoaXMub25DaGFuZ2VQb2ludCh7IGZyb206IGZyb20sIHRvOiBkcmFnZ2VkVG8gfSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIGxhYmVsQ2hhbmdlID0gKHBvaW50LCB0eXBlKSA9PiB7XG4gICAgICBjb25zdCB7IGNoYW5nZU1hcmtQcm9wcyB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IHVwZGF0ZSA9IHsgLi4ucG9pbnQgfTtcblxuICAgICAgaWYgKCFwb2ludC5sYWJlbCB8fCBpc0VtcHR5KHBvaW50LmxhYmVsKSkge1xuICAgICAgICBkZWxldGUgdXBkYXRlLmxhYmVsO1xuICAgICAgfVxuXG4gICAgICBjaGFuZ2VNYXJrUHJvcHMoeyBbdHlwZV06IHVwZGF0ZSB9KTtcbiAgICB9O1xuXG4gICAgY2xpY2tQb2ludCA9IChwb2ludCwgdHlwZSwgZGF0YSkgPT4ge1xuICAgICAgY29uc3QgeyBjaGFuZ2VNYXJrUHJvcHMsIGRpc2FibGVkLCBmcm9tLCB0bywgbGFiZWxNb2RlRW5hYmxlZCwgbGltaXRMYWJlbGluZywgb25DbGljayB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKCFsYWJlbE1vZGVFbmFibGVkKSB7XG4gICAgICAgIG9uQ2xpY2socG9pbnQgfHwgZGF0YSk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKGRpc2FibGVkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgLy8gbGltaXQgbGFiZWxpbmcgdGhlIHBvaW50cyBvZiB0aGUgbGluZVxuICAgICAgaWYgKGxpbWl0TGFiZWxpbmcpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAodHlwZSA9PT0gJ21pZGRsZScgJiYgIXBvaW50ICYmIGZyb20gJiYgdG8pIHtcbiAgICAgICAgcG9pbnQgPSB7IC4uLnBvaW50LCAuLi5nZXRNaWRkbGVPZlR3b1BvaW50cyhmcm9tLCB0bykgfTtcbiAgICAgIH1cblxuICAgICAgY2hhbmdlTWFya1Byb3BzKHsgZnJvbSwgdG8sIFt0eXBlXTogeyBsYWJlbDogJycsIC4uLnBvaW50IH0gfSk7XG5cbiAgICAgIGlmICh0aGlzLmlucHV0W3R5cGVdKSB7XG4gICAgICAgIHRoaXMuaW5wdXRbdHlwZV0uZm9jdXMoKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gSU1QT1JUQU5ULCBkbyBub3QgcmVtb3ZlXG4gICAgaW5wdXQgPSB7fTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgY29vcmRpbmF0ZXNPbkhvdmVyLFxuICAgICAgICBncmFwaFByb3BzLFxuICAgICAgICBvbkRyYWdTdGFydCxcbiAgICAgICAgb25EcmFnU3RvcCxcbiAgICAgICAgZnJvbSxcbiAgICAgICAgdG8sXG4gICAgICAgIG1pZGRsZSxcbiAgICAgICAgZGlzYWJsZWQsXG4gICAgICAgIGNvcnJlY3RuZXNzLFxuICAgICAgICBvbkNsaWNrLFxuICAgICAgICBsYWJlbE5vZGUsXG4gICAgICAgIGxhYmVsTW9kZUVuYWJsZWQsXG4gICAgICB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IGNvbW1vbiA9IHsgZ3JhcGhQcm9wcywgb25EcmFnU3RhcnQsIG9uRHJhZ1N0b3AsIGRpc2FibGVkLCBjb3JyZWN0bmVzcywgb25DbGljayB9O1xuICAgICAgY29uc3QgYW5nbGUgPSB0byA/IHRyaWcudG9EZWdyZWVzKHRyaWcuYW5nbGUoZnJvbSwgdG8pKSA6IDA7XG5cbiAgICAgIGxldCBmcm9tTGFiZWxOb2RlID0gbnVsbDtcbiAgICAgIGxldCB0b0xhYmVsTm9kZSA9IG51bGw7XG4gICAgICBsZXQgbGluZUxhYmVsTm9kZSA9IG51bGw7XG5cbiAgICAgIGlmIChsYWJlbE5vZGUpIHtcbiAgICAgICAgaWYgKGZyb20gJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGZyb20sICdsYWJlbCcpKSB7XG4gICAgICAgICAgZnJvbUxhYmVsTm9kZSA9IFJlYWN0RE9NLmNyZWF0ZVBvcnRhbChcbiAgICAgICAgICAgIDxNYXJrTGFiZWxcbiAgICAgICAgICAgICAgaW5wdXRSZWY9eyhyKSA9PiAodGhpcy5pbnB1dC5mcm9tID0gcil9XG4gICAgICAgICAgICAgIGRpc2FibGVkPXshbGFiZWxNb2RlRW5hYmxlZH1cbiAgICAgICAgICAgICAgbWFyaz17ZnJvbX1cbiAgICAgICAgICAgICAgZ3JhcGhQcm9wcz17Z3JhcGhQcm9wc31cbiAgICAgICAgICAgICAgb25DaGFuZ2U9eyhsYWJlbCkgPT4gdGhpcy5sYWJlbENoYW5nZSh7IC4uLmZyb20sIGxhYmVsIH0sICdmcm9tJyl9XG4gICAgICAgICAgICAvPixcbiAgICAgICAgICAgIGxhYmVsTm9kZSxcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRvICYmIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0bywgJ2xhYmVsJykpIHtcbiAgICAgICAgICB0b0xhYmVsTm9kZSA9IFJlYWN0RE9NLmNyZWF0ZVBvcnRhbChcbiAgICAgICAgICAgIDxNYXJrTGFiZWxcbiAgICAgICAgICAgICAgaW5wdXRSZWY9eyhyKSA9PiAodGhpcy5pbnB1dC50byA9IHIpfVxuICAgICAgICAgICAgICBkaXNhYmxlZD17IWxhYmVsTW9kZUVuYWJsZWR9XG4gICAgICAgICAgICAgIG1hcms9e3RvfVxuICAgICAgICAgICAgICBncmFwaFByb3BzPXtncmFwaFByb3BzfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17KGxhYmVsKSA9PiB0aGlzLmxhYmVsQ2hhbmdlKHsgLi4udG8sIGxhYmVsIH0sICd0bycpfVxuICAgICAgICAgICAgLz4sXG4gICAgICAgICAgICBsYWJlbE5vZGUsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtaWRkbGUgJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG1pZGRsZSwgJ2xhYmVsJykpIHtcbiAgICAgICAgICBsaW5lTGFiZWxOb2RlID0gUmVhY3RET00uY3JlYXRlUG9ydGFsKFxuICAgICAgICAgICAgPE1hcmtMYWJlbFxuICAgICAgICAgICAgICBpbnB1dFJlZj17KHIpID0+ICh0aGlzLmlucHV0Lm1pZGRsZSA9IHIpfVxuICAgICAgICAgICAgICBkaXNhYmxlZD17IWxhYmVsTW9kZUVuYWJsZWR9XG4gICAgICAgICAgICAgIG1hcms9e21pZGRsZX1cbiAgICAgICAgICAgICAgZ3JhcGhQcm9wcz17Z3JhcGhQcm9wc31cbiAgICAgICAgICAgICAgb25DaGFuZ2U9eyhsYWJlbCkgPT4gdGhpcy5sYWJlbENoYW5nZSh7IC4uLm1pZGRsZSwgbGFiZWwgfSwgJ21pZGRsZScpfVxuICAgICAgICAgICAgLz4sXG4gICAgICAgICAgICBsYWJlbE5vZGUsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICByZXR1cm4gKFxuICAgICAgICA8U3R5bGVkTGluZUdyb3VwIGRpc2FibGVkPXtkaXNhYmxlZH0gY29ycmVjdG5lc3M9e2NvcnJlY3RuZXNzfT5cbiAgICAgICAgICB7dG8gJiYgKFxuICAgICAgICAgICAgPERyYWdnYWJsZUNvbXBcbiAgICAgICAgICAgICAgZnJvbT17ZnJvbX1cbiAgICAgICAgICAgICAgdG89e3RvfVxuICAgICAgICAgICAgICBtaWRkbGU9e21pZGRsZX1cbiAgICAgICAgICAgICAgb25EcmFnPXt0aGlzLmRyYWdDb21wfVxuICAgICAgICAgICAgICB7Li4uY29tbW9ufVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoZGF0YSkgPT4gdGhpcy5jbGlja1BvaW50KG1pZGRsZSwgJ21pZGRsZScsIGRhdGEpfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIHtsaW5lTGFiZWxOb2RlfVxuXG4gICAgICAgICAgPEZyb21Qb2ludFxuICAgICAgICAgICAgeD17ZnJvbS54fVxuICAgICAgICAgICAgeT17ZnJvbS55fVxuICAgICAgICAgICAgbGFiZWxOb2RlPXtsYWJlbE5vZGV9XG4gICAgICAgICAgICBjb29yZGluYXRlc09uSG92ZXI9e2Nvb3JkaW5hdGVzT25Ib3Zlcn1cbiAgICAgICAgICAgIG9uRHJhZz17dGhpcy5kcmFnRnJvbX1cbiAgICAgICAgICAgIHsuLi5jb21tb259XG4gICAgICAgICAgICBvbkNsaWNrPXsoZGF0YSkgPT4gdGhpcy5jbGlja1BvaW50KGZyb20sICdmcm9tJywgZGF0YSl9XG4gICAgICAgICAgLz5cbiAgICAgICAgICB7ZnJvbUxhYmVsTm9kZX1cblxuICAgICAgICAgIHt0byAmJiAoXG4gICAgICAgICAgICA8VG9Qb2ludFxuICAgICAgICAgICAgICB4PXt0by54fVxuICAgICAgICAgICAgICB5PXt0by55fVxuICAgICAgICAgICAgICBhbmdsZT17YW5nbGV9IC8vYW5nbGUgKyA0NX1cbiAgICAgICAgICAgICAgbGFiZWxOb2RlPXtsYWJlbE5vZGV9XG4gICAgICAgICAgICAgIGNvb3JkaW5hdGVzT25Ib3Zlcj17Y29vcmRpbmF0ZXNPbkhvdmVyfVxuICAgICAgICAgICAgICBvbkRyYWc9e3RoaXMuZHJhZ1RvfVxuICAgICAgICAgICAgICB7Li4uY29tbW9ufVxuICAgICAgICAgICAgICBvbkNsaWNrPXsoZGF0YSkgPT4gdGhpcy5jbGlja1BvaW50KHRvLCAndG8nLCBkYXRhKX1cbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgKX1cbiAgICAgICAgICB7dG9MYWJlbE5vZGV9XG4gICAgICAgIDwvU3R5bGVkTGluZUdyb3VwPlxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gTGluZUJhc2U7XG59O1xuXG5leHBvcnQgY29uc3Qgc3R5bGVzID0ge1xuICBsaW5lOiAoKSA9PiAoe1xuICAgIGZpbGw6ICd0cmFuc3BhcmVudCcsXG4gICAgc3Ryb2tlOiBjb2xvci5kZWZhdWx0cy5CTEFDSyxcbiAgICBzdHJva2VXaWR0aDogMyxcbiAgICB0cmFuc2l0aW9uOiAnc3Ryb2tlIDIwMG1zIGVhc2UtaW4sIHN0cm9rZS13aWR0aCAyMDBtcyBlYXNlLWluJyxcbiAgICAnJjpob3Zlcic6IHtcbiAgICAgIHN0cm9rZVdpZHRoOiA2LFxuICAgICAgc3Ryb2tlOiBjb2xvci5kZWZhdWx0cy5QUklNQVJZX0RBUkssXG4gICAgfSxcbiAgfSksXG4gIGFycm93OiAoKSA9PiAoe1xuICAgIGZpbGw6IGNvbG9yLmRlZmF1bHRzLkJMQUNLLFxuICB9KSxcbiAgZGlzYWJsZWRBcnJvdzogKCkgPT4gKHtcbiAgICAuLi5kaXNhYmxlZFNlY29uZGFyeSgpLFxuICB9KSxcbiAgZGlzYWJsZWRTZWNvbmRhcnk6ICgpID0+ICh7XG4gICAgLi4uZGlzYWJsZWRTZWNvbmRhcnkoJ3N0cm9rZScpLFxuICAgIHN0cm9rZVdpZHRoOiAyLFxuICB9KSxcbiAgZGlzYWJsZWQ6ICgpID0+ICh7XG4gICAgLi4uZGlzYWJsZWQoJ3N0cm9rZScpLFxuICAgIHN0cm9rZVdpZHRoOiAyLFxuICB9KSxcbiAgY29ycmVjdDogKHRoZW1lLCBrZXkpID0+ICh7XG4gICAgLi4uY29ycmVjdChrZXkpLFxuICB9KSxcbiAgaW5jb3JyZWN0OiAodGhlbWUsIGtleSkgPT4gKHtcbiAgICAuLi5pbmNvcnJlY3Qoa2V5KSxcbiAgfSksXG4gIG1pc3Npbmc6ICh0aGVtZSwga2V5KSA9PiAoe1xuICAgIC4uLm1pc3Npbmcoa2V5KSxcbiAgICBzdHJva2VXaWR0aDogMSxcbiAgICBzdHJva2VEYXNoYXJyYXk6ICc0IDMnLFxuICB9KSxcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsUUFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUUsVUFBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUcsTUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksS0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssVUFBQSxHQUFBTixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQU0sT0FBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sU0FBQSxHQUFBUixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVEsVUFBQSxHQUFBVCxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVMsUUFBQSxHQUFBVixzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQVUsU0FBQSxHQUFBVixPQUFBO0FBQ0EsSUFBQVcsTUFBQSxHQUFBWCxPQUFBO0FBQ0EsSUFBQVksUUFBQSxHQUFBWixPQUFBO0FBQThDLFNBQUFhLFdBQUFDLENBQUEsRUFBQUMsQ0FBQSxFQUFBQyxDQUFBLFdBQUFELENBQUEsT0FBQUUsZ0JBQUEsYUFBQUYsQ0FBQSxPQUFBRywyQkFBQSxhQUFBSixDQUFBLEVBQUFLLHlCQUFBLEtBQUFDLE9BQUEsQ0FBQUMsU0FBQSxDQUFBTixDQUFBLEVBQUFDLENBQUEsWUFBQUMsZ0JBQUEsYUFBQUgsQ0FBQSxFQUFBUSxXQUFBLElBQUFQLENBQUEsQ0FBQVEsS0FBQSxDQUFBVCxDQUFBLEVBQUFFLENBQUE7QUFBQSxTQUFBRywwQkFBQSxjQUFBTCxDQUFBLElBQUFVLE9BQUEsQ0FBQUMsU0FBQSxDQUFBQyxPQUFBLENBQUFDLElBQUEsQ0FBQVAsT0FBQSxDQUFBQyxTQUFBLENBQUFHLE9BQUEsaUNBQUFWLENBQUEsYUFBQUsseUJBQUEsWUFBQUEsMEJBQUEsYUFBQUwsQ0FBQTtBQUFBLFNBQUFjLFFBQUFaLENBQUEsRUFBQWEsQ0FBQSxRQUFBZixDQUFBLEdBQUFnQixNQUFBLENBQUFDLElBQUEsQ0FBQWYsQ0FBQSxPQUFBYyxNQUFBLENBQUFFLHFCQUFBLFFBQUFqQixDQUFBLEdBQUFlLE1BQUEsQ0FBQUUscUJBQUEsQ0FBQWhCLENBQUEsR0FBQWEsQ0FBQSxLQUFBZCxDQUFBLEdBQUFBLENBQUEsQ0FBQWtCLE1BQUEsV0FBQUosQ0FBQSxXQUFBQyxNQUFBLENBQUFJLHdCQUFBLENBQUFsQixDQUFBLEVBQUFhLENBQUEsRUFBQU0sVUFBQSxPQUFBckIsQ0FBQSxDQUFBc0IsSUFBQSxDQUFBYixLQUFBLENBQUFULENBQUEsRUFBQUMsQ0FBQSxZQUFBRCxDQUFBO0FBQUEsU0FBQXVCLGNBQUFyQixDQUFBLGFBQUFhLENBQUEsTUFBQUEsQ0FBQSxHQUFBUyxTQUFBLENBQUFDLE1BQUEsRUFBQVYsQ0FBQSxVQUFBZixDQUFBLFdBQUF3QixTQUFBLENBQUFULENBQUEsSUFBQVMsU0FBQSxDQUFBVCxDQUFBLFFBQUFBLENBQUEsT0FBQUQsT0FBQSxDQUFBRSxNQUFBLENBQUFoQixDQUFBLE9BQUEwQixPQUFBLFdBQUFYLENBQUEsUUFBQVksZ0JBQUEsYUFBQXpCLENBQUEsRUFBQWEsQ0FBQSxFQUFBZixDQUFBLENBQUFlLENBQUEsU0FBQUMsTUFBQSxDQUFBWSx5QkFBQSxHQUFBWixNQUFBLENBQUFhLGdCQUFBLENBQUEzQixDQUFBLEVBQUFjLE1BQUEsQ0FBQVkseUJBQUEsQ0FBQTVCLENBQUEsS0FBQWMsT0FBQSxDQUFBRSxNQUFBLENBQUFoQixDQUFBLEdBQUEwQixPQUFBLFdBQUFYLENBQUEsSUFBQUMsTUFBQSxDQUFBYyxjQUFBLENBQUE1QixDQUFBLEVBQUFhLENBQUEsRUFBQUMsTUFBQSxDQUFBSSx3QkFBQSxDQUFBcEIsQ0FBQSxFQUFBZSxDQUFBLGlCQUFBYixDQUFBO0FBRTlDLElBQU02QixlQUFlLEdBQUcsSUFBQUMsZUFBTSxFQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQUFDLElBQUE7RUFBQSxJQUFHQyxRQUFRLEdBQUFELElBQUEsQ0FBUkMsUUFBUTtJQUFFQyxXQUFXLEdBQUFGLElBQUEsQ0FBWEUsV0FBVztFQUFBLE9BQUFaLGFBQUEsQ0FBQUEsYUFBQSxDQUFBQSxhQUFBLENBQUFBLGFBQUE7SUFDMUQsUUFBUSxFQUFFO01BQ1JhLElBQUksRUFBRSxhQUFhO01BQ25CQyxNQUFNLEVBQUVDLGVBQUssQ0FBQ0MsUUFBUSxDQUFDQyxLQUFLO01BQzVCQyxXQUFXLEVBQUUsQ0FBQztNQUNkQyxVQUFVLEVBQUUsa0RBQWtEO01BQzlELFNBQVMsRUFBRTtRQUNURCxXQUFXLEVBQUUsQ0FBQztRQUNkSixNQUFNLEVBQUVDLGVBQUssQ0FBQ0MsUUFBUSxDQUFDSTtNQUN6QjtJQUNGO0VBQUMsR0FDR1QsUUFBUSxJQUFJO0lBQ2QsUUFBUSxFQUFBWCxhQUFBLENBQUFBLGFBQUEsS0FDSCxJQUFBcUIseUJBQWlCLEVBQUMsUUFBUSxDQUFDO01BQzlCSCxXQUFXLEVBQUU7SUFBQztFQUVsQixDQUFDLEdBQ0dOLFdBQVcsS0FBSyxTQUFTLElBQUk7SUFDL0IsUUFBUSxFQUFBWixhQUFBLEtBQ0gsSUFBQXNCLGVBQU8sRUFBQyxRQUFRLENBQUM7RUFFeEIsQ0FBQyxHQUNHVixXQUFXLEtBQUssV0FBVyxJQUFJO0lBQ2pDLFFBQVEsRUFBQVosYUFBQSxLQUNILElBQUF1QixpQkFBUyxFQUFDLFFBQVEsQ0FBQztFQUUxQixDQUFDLEdBQ0dYLFdBQVcsS0FBSyxTQUFTLElBQUk7SUFDL0IsUUFBUSxFQUFBWixhQUFBLENBQUFBLGFBQUEsS0FDSCxJQUFBd0IsZUFBTyxFQUFDLFFBQVEsQ0FBQztNQUNwQk4sV0FBVyxFQUFFLENBQUM7TUFDZE8sZUFBZSxFQUFFO0lBQUs7RUFFMUIsQ0FBQztBQUFBLENBQ0QsQ0FBQztBQUVJLElBQU1DLFFBQVEsR0FBQUMsT0FBQSxDQUFBRCxRQUFBLEdBQUcsU0FBWEEsUUFBUUEsQ0FBSUUsSUFBSSxFQUFFQyxTQUFTO0VBQUEsT0FBSztJQUFBLE9BQU87TUFDbERELElBQUksRUFBSkEsSUFBSTtNQUNKQyxTQUFTLEVBQVRBLFNBQVM7TUFDVEMsUUFBUSxFQUFFLFNBQVZBLFFBQVFBLENBQUdDLEtBQUssRUFBRUMsSUFBSSxFQUFLO1FBQ3pCLElBQUlBLElBQUksSUFBSSxJQUFBQyxrQkFBVyxFQUFDRCxJQUFJLENBQUNFLElBQUksRUFBRUgsS0FBSyxDQUFDLEVBQUU7VUFDekMsT0FBT0MsSUFBSTtRQUNiO1FBRUEsSUFBSSxDQUFDQSxJQUFJLEVBQUU7VUFDVCxPQUFPO1lBQ0xKLElBQUksRUFBSkEsSUFBSTtZQUNKTyxRQUFRLEVBQUUsSUFBSTtZQUNkQyxJQUFJLEVBQUVMO1VBQ1IsQ0FBQztRQUNIO1FBRUEsSUFBSSxJQUFBRSxrQkFBVyxFQUFDRixLQUFLLEVBQUVDLElBQUksQ0FBQ0ksSUFBSSxDQUFDLEVBQUU7VUFDakMsT0FBQXBDLGFBQUEsS0FBWWdDLElBQUk7UUFDbEI7UUFFQSxPQUFBaEMsYUFBQSxDQUFBQSxhQUFBLEtBQVlnQyxJQUFJO1VBQUVHLFFBQVEsRUFBRSxLQUFLO1VBQUVFLEVBQUUsRUFBRU47UUFBSztNQUM5QztJQUNGLENBQUM7RUFBQSxDQUFDO0FBQUE7QUFFSyxJQUFNTyxpQkFBaUIsR0FBQVgsT0FBQSxDQUFBVyxpQkFBQSxHQUFHLFNBQXBCQSxpQkFBaUJBLENBQUlULFNBQVMsRUFBSztFQUFBLElBQUFVLGtCQUFBO0VBQzlDLE9BQUFBLGtCQUFBLDBCQUFBQyxnQkFBQTtJQWFFLFNBQUFDLGtCQUFZQyxLQUFLLEVBQUU7TUFBQSxJQUFBQyxLQUFBO01BQUEsSUFBQUMsZ0JBQUEsbUJBQUFILGlCQUFBO01BQ2pCRSxLQUFBLEdBQUFuRSxVQUFBLE9BQUFpRSxpQkFBQSxHQUFNQyxLQUFLO01BQUUsSUFBQXRDLGdCQUFBLGFBQUF1QyxLQUFBLGVBSUg7UUFBQSxPQUFNQSxLQUFBLENBQUtFLFFBQVEsQ0FBQztVQUFFYixJQUFJLEVBQUFoQyxhQUFBLEtBQU8yQyxLQUFBLENBQUtELEtBQUssQ0FBQ1YsSUFBSTtRQUFHLENBQUMsQ0FBQztNQUFBO01BQUEsSUFBQTVCLGdCQUFBLGFBQUF1QyxLQUFBLGNBRXRELFlBQU07UUFDZixJQUFBRyxXQUFBLEdBQTJCSCxLQUFBLENBQUtELEtBQUs7VUFBN0JLLFFBQVEsR0FBQUQsV0FBQSxDQUFSQyxRQUFRO1VBQUVmLElBQUksR0FBQWMsV0FBQSxDQUFKZCxJQUFJO1FBQ3RCLElBQU1nQixNQUFNLEdBQUFoRCxhQUFBLEtBQVEyQyxLQUFBLENBQUtNLEtBQUssQ0FBQ2pCLElBQUksQ0FBRTtRQUVyQ1csS0FBQSxDQUFLRSxRQUFRLENBQUM7VUFBRWIsSUFBSSxFQUFFa0I7UUFBVSxDQUFDLEVBQUUsWUFBTTtVQUN2QyxJQUFRdEIsSUFBSSxHQUFLb0IsTUFBTSxDQUFmcEIsSUFBSTtVQUNaLElBQUl1QixlQUFlLEdBQ2pCdkIsSUFBSSxLQUNIQSxJQUFJLEtBQUssVUFBVSxJQUFJQSxJQUFJLEtBQUssTUFBTSxJQUFJQSxJQUFJLEtBQUssVUFBVSxJQUFJQSxJQUFJLEtBQUssYUFBYSxDQUFDLElBQ3pGLElBQUF3QixlQUFRLEVBQUNKLE1BQU0sQ0FBQ1osSUFBSSxFQUFFWSxNQUFNLENBQUNYLEVBQUUsQ0FBQztVQUNsQyxJQUFJLENBQUNjLGVBQWUsSUFBSXZCLElBQUksSUFBSUEsSUFBSSxLQUFLLGFBQWEsSUFBSW9CLE1BQU0sQ0FBQ1osSUFBSSxJQUFJWSxNQUFNLENBQUNYLEVBQUUsRUFBRTtZQUNsRmMsZUFBZSxHQUFHSCxNQUFNLENBQUNaLElBQUksQ0FBQ2lCLENBQUMsS0FBSyxDQUFDLElBQUlMLE1BQU0sQ0FBQ1gsRUFBRSxDQUFDZ0IsQ0FBQyxLQUFLLENBQUMsSUFBSUwsTUFBTSxDQUFDWixJQUFJLENBQUNpQixDQUFDLEdBQUdMLE1BQU0sQ0FBQ1gsRUFBRSxDQUFDZ0IsQ0FBQyxHQUFHLENBQUM7VUFDL0Y7VUFDQSxJQUFJLENBQUMsSUFBQUMsbUJBQU8sRUFBQ3RCLElBQUksRUFBRWdCLE1BQU0sQ0FBQyxJQUFJLENBQUNHLGVBQWUsRUFBRTtZQUM5Q0osUUFBUSxDQUFDZixJQUFJLEVBQUVnQixNQUFNLENBQUM7VUFDeEI7UUFDRixDQUFDLENBQUM7TUFDSixDQUFDO01BQUEsSUFBQTVDLGdCQUFBLGFBQUF1QyxLQUFBLGdCQUVZLFVBQUFZLEtBQUEsRUFBMEI7UUFBQSxJQUF2Qm5CLElBQUksR0FBQW1CLEtBQUEsQ0FBSm5CLElBQUk7VUFBRUMsRUFBRSxHQUFBa0IsS0FBQSxDQUFGbEIsRUFBRTtVQUFFbUIsTUFBTSxHQUFBRCxLQUFBLENBQU5DLE1BQU07UUFDOUIsSUFBSXhCLElBQUksR0FBQWhDLGFBQUEsQ0FBQUEsYUFBQSxLQUFRMkMsS0FBQSxDQUFLTSxLQUFLLENBQUNqQixJQUFJO1VBQUVJLElBQUksRUFBSkEsSUFBSTtVQUFFQyxFQUFFLEVBQUZBO1FBQUUsRUFBRTtRQUUzQyxJQUFJbUIsTUFBTSxFQUFFO1VBQ1Z4QixJQUFJLEdBQUFoQyxhQUFBLENBQUFBLGFBQUEsS0FBUWdDLElBQUk7WUFBRXdCLE1BQU0sRUFBTkE7VUFBTSxFQUFFO1FBQzVCO1FBRUFiLEtBQUEsQ0FBS0UsUUFBUSxDQUFDO1VBQUViLElBQUksRUFBSkE7UUFBSyxDQUFDLENBQUM7TUFDekIsQ0FBQztNQUFBLElBQUE1QixnQkFBQSxhQUFBdUMsS0FBQSxxQkFFaUIsVUFBQWMsS0FBQSxFQUEwQjtRQUFBLElBQXZCckIsSUFBSSxHQUFBcUIsS0FBQSxDQUFKckIsSUFBSTtVQUFFQyxFQUFFLEdBQUFvQixLQUFBLENBQUZwQixFQUFFO1VBQUVtQixNQUFNLEdBQUFDLEtBQUEsQ0FBTkQsTUFBTTtRQUNuQyxJQUFBRSxZQUFBLEdBQTJCZixLQUFBLENBQUtELEtBQUs7VUFBN0JLLFFBQVEsR0FBQVcsWUFBQSxDQUFSWCxRQUFRO1VBQUVmLElBQUksR0FBQTBCLFlBQUEsQ0FBSjFCLElBQUk7UUFDdEIsSUFBSWdCLE1BQU0sR0FBQWhELGFBQUEsQ0FBQUEsYUFBQSxLQUFRZ0MsSUFBSSxHQUFLVyxLQUFBLENBQUtNLEtBQUssQ0FBQ2pCLElBQUksQ0FBRTtRQUU1QyxJQUFJSSxJQUFJLEVBQUU7VUFDUlksTUFBTSxHQUFBaEQsYUFBQSxDQUFBQSxhQUFBLEtBQVFnRCxNQUFNO1lBQUVaLElBQUksRUFBSkE7VUFBSSxFQUFFO1FBQzlCO1FBRUEsSUFBSUMsRUFBRSxFQUFFO1VBQ05XLE1BQU0sR0FBQWhELGFBQUEsQ0FBQUEsYUFBQSxLQUFRZ0QsTUFBTTtZQUFFWCxFQUFFLEVBQUZBO1VBQUUsRUFBRTtRQUM1QjtRQUVBLElBQUltQixNQUFNLEVBQUU7VUFDVlIsTUFBTSxHQUFBaEQsYUFBQSxDQUFBQSxhQUFBLEtBQVFnRCxNQUFNO1lBQUVRLE1BQU0sRUFBTkE7VUFBTSxFQUFFO1FBQ2hDO1FBRUEsSUFBSSxDQUFDLElBQUFGLG1CQUFPLEVBQUN0QixJQUFJLEVBQUVnQixNQUFNLENBQUMsRUFBRTtVQUMxQkQsUUFBUSxDQUFDZixJQUFJLEVBQUVnQixNQUFNLENBQUM7UUFDeEI7TUFDRixDQUFDO01BckRDTCxLQUFBLENBQUtNLEtBQUssR0FBRyxDQUFDLENBQUM7TUFBQyxPQUFBTixLQUFBO0lBQ2xCO0lBQUMsSUFBQWdCLFVBQUEsYUFBQWxCLGlCQUFBLEVBQUFELGdCQUFBO0lBQUEsV0FBQW9CLGFBQUEsYUFBQW5CLGlCQUFBO01BQUFvQixHQUFBO01BQUFDLEtBQUEsRUFzREQsU0FBQUMsTUFBTUEsQ0FBQSxFQUFHO1FBQ1AsSUFBQUMsWUFBQSxHQUFnRyxJQUFJLENBQUN0QixLQUFLO1VBQWxHdUIsVUFBVSxHQUFBRCxZQUFBLENBQVZDLFVBQVU7VUFBRUMsT0FBTyxHQUFBRixZQUFBLENBQVBFLE9BQU87VUFBRUMsU0FBUyxHQUFBSCxZQUFBLENBQVRHLFNBQVM7VUFBRUMsZ0JBQWdCLEdBQUFKLFlBQUEsQ0FBaEJJLGdCQUFnQjtVQUFFQyxrQkFBa0IsR0FBQUwsWUFBQSxDQUFsQkssa0JBQWtCO1VBQUVDLGFBQWEsR0FBQU4sWUFBQSxDQUFiTSxhQUFhO1FBQzNGLElBQU10QyxJQUFJLEdBQUcsSUFBSSxDQUFDaUIsS0FBSyxDQUFDakIsSUFBSSxHQUFHLElBQUksQ0FBQ2lCLEtBQUssQ0FBQ2pCLElBQUksR0FBRyxJQUFJLENBQUNVLEtBQUssQ0FBQ1YsSUFBSTtRQUVoRSxJQUFNSSxJQUFJLEdBQUcsSUFBQW1DLHFCQUFTLEVBQUN2QyxJQUFJLENBQUNJLElBQUksQ0FBQztRQUNqQyxJQUFNQyxFQUFFLEdBQUcsSUFBQWtDLHFCQUFTLEVBQUN2QyxJQUFJLENBQUNLLEVBQUUsQ0FBQztRQUM3QixJQUFNbUIsTUFBTSxHQUFHLElBQUFlLHFCQUFTLEVBQUN2QyxJQUFJLENBQUN3QixNQUFNLENBQUM7O1FBRXJDO1FBQ0E7UUFDQSxJQUFJcEIsSUFBSSxJQUFJSixJQUFJLENBQUN3QyxZQUFZLEVBQUU7VUFDN0JwQyxJQUFJLENBQUN6QixRQUFRLEdBQUcsSUFBSTtRQUN0QjtRQUVBLElBQUkwQixFQUFFLElBQUlMLElBQUksQ0FBQ3dDLFlBQVksRUFBRTtVQUMzQm5DLEVBQUUsQ0FBQzFCLFFBQVEsR0FBRyxJQUFJO1FBQ3BCO1FBRUEsSUFBSTZDLE1BQU0sSUFBSXhCLElBQUksQ0FBQ3dDLFlBQVksRUFBRTtVQUMvQmhCLE1BQU0sQ0FBQzdDLFFBQVEsR0FBRyxJQUFJO1FBQ3hCO1FBRUEsb0JBQ0VsRCxNQUFBLFlBQUFnSCxhQUFBLENBQUM1QyxTQUFTO1VBQ1JsQixRQUFRLEVBQUVxQixJQUFJLENBQUNyQixRQUFTO1VBQ3hCMEQsa0JBQWtCLEVBQUVBLGtCQUFtQjtVQUN2Q3pELFdBQVcsRUFBRW9CLElBQUksQ0FBQ3BCLFdBQVk7VUFDOUJ3QixJQUFJLEVBQUVBLElBQUs7VUFDWEMsRUFBRSxFQUFFQSxFQUFHO1VBQ1BtQixNQUFNLEVBQUVBLE1BQU87VUFDZlMsVUFBVSxFQUFFQSxVQUFXO1VBQ3ZCbEIsUUFBUSxFQUFFLElBQUksQ0FBQzJCLFVBQVc7VUFDMUJDLGVBQWUsRUFBRSxJQUFJLENBQUNBLGVBQWdCO1VBQ3RDVCxPQUFPLEVBQUVBLE9BQVE7VUFDakJVLFdBQVcsRUFBRSxJQUFJLENBQUNDLFNBQVU7VUFDNUJDLFVBQVUsRUFBRSxJQUFJLENBQUNDLFFBQVM7VUFDMUJaLFNBQVMsRUFBRUEsU0FBVTtVQUNyQkMsZ0JBQWdCLEVBQUVBLGdCQUFpQjtVQUNuQ0UsYUFBYSxFQUFFQTtRQUFjLENBQzlCLENBQUM7TUFFTjtJQUFDO0VBQUEsRUEvR29DVSxpQkFBSyxDQUFDbkQsU0FBUyxPQUFBekIsZ0JBQUEsYUFBQW1DLGtCQUFBLGVBQUF2QyxhQUFBLENBQUFBLGFBQUEsS0FFL0NpRixXQUFLLENBQUNDLGtCQUFrQjtJQUMzQmpCLFVBQVUsRUFBRWdCLFdBQUssQ0FBQ0UsY0FBYyxDQUFDQyxVQUFVO0lBQzNDZCxhQUFhLEVBQUVlLHFCQUFTLENBQUNDLElBQUk7SUFDN0JYLGVBQWUsRUFBRVUscUJBQVMsQ0FBQ0UsSUFBSTtJQUMvQjVFLFFBQVEsRUFBRTBFLHFCQUFTLENBQUNDLElBQUk7SUFDeEJsRCxJQUFJLEVBQUU2QyxXQUFLLENBQUNPLFNBQVM7SUFDckJuRCxFQUFFLEVBQUU0QyxXQUFLLENBQUNPLFNBQVM7SUFDbkJwQixnQkFBZ0IsRUFBRWlCLHFCQUFTLENBQUNDLElBQUk7SUFDaENwQixPQUFPLEVBQUVtQixxQkFBUyxDQUFDRTtFQUFJLEtBQUFoRCxrQkFBQTtBQXVHN0IsQ0FBQztBQUVELElBQU1rRCxRQUFRLEdBQUcsU0FBWEEsUUFBUUEsQ0FBQTtFQUFBLE9BQVU7SUFDdEJDLE1BQU0sRUFBRSxTQUFSQSxNQUFNQSxDQUFHaEQsS0FBSyxFQUFBaUQsS0FBQSxFQUF3QjtNQUFBLElBQXBCQyxNQUFNLEdBQUFELEtBQUEsQ0FBTkMsTUFBTTtRQUFFQyxLQUFLLEdBQUFGLEtBQUEsQ0FBTEUsS0FBSztNQUM3QixJQUFNQyxJQUFJLEdBQUdDLFdBQUssQ0FBQ0MsVUFBVSxDQUFDdEQsS0FBSyxDQUFDTixJQUFJLEVBQUVNLEtBQUssQ0FBQ0wsRUFBRSxDQUFDO01BQ25ELE9BQU8wRCxXQUFLLENBQUNMLE1BQU0sQ0FBQ0ksSUFBSSxFQUFFRixNQUFNLEVBQUVDLEtBQUssQ0FBQztJQUMxQyxDQUFDO0lBQ0RJLFdBQVcsRUFBRSxTQUFiQSxXQUFXQSxDQUFHdkQsS0FBSyxFQUFLO01BQ3RCLElBQVFOLElBQUksR0FBS00sS0FBSyxDQUFkTixJQUFJO01BQ1osT0FBT0EsSUFBSTtJQUNiLENBQUM7SUFDRDhELFNBQVMsRUFBRSxTQUFYQSxTQUFTQSxDQUFHeEQsS0FBSyxFQUFFeUQsS0FBSyxFQUFLO01BQzNCLElBQVEvRCxJQUFJLEdBQVNNLEtBQUssQ0FBbEJOLElBQUk7UUFBRUMsRUFBRSxHQUFLSyxLQUFLLENBQVpMLEVBQUU7TUFDaEIsT0FBTztRQUNMRCxJQUFJLEVBQUUyRCxXQUFLLENBQUNoRSxLQUFLLENBQUNLLElBQUksQ0FBQyxDQUFDZ0UsR0FBRyxDQUFDTCxXQUFLLENBQUNoRSxLQUFLLENBQUNvRSxLQUFLLENBQUMsQ0FBQztRQUMvQzlELEVBQUUsRUFBRTBELFdBQUssQ0FBQ2hFLEtBQUssQ0FBQ00sRUFBRSxDQUFDLENBQUMrRCxHQUFHLENBQUNMLFdBQUssQ0FBQ2hFLEtBQUssQ0FBQ29FLEtBQUssQ0FBQztNQUM1QyxDQUFDO0lBQ0g7RUFDRixDQUFDO0FBQUEsQ0FBQztBQUVLLElBQU1FLFFBQVEsR0FBQTFFLE9BQUEsQ0FBQTBFLFFBQUEsR0FBRyxTQUFYQSxRQUFRQSxDQUFJQyxJQUFJLEVBQUVDLElBQUksRUFBSztFQUN0QyxJQUFNQyxhQUFhLEdBQUcsSUFBQUMsbUJBQWEsRUFBQ2hCLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQ2EsSUFBSSxDQUFDO0VBRXJELElBQU1JLFNBQVMsR0FBR0gsSUFBSSxJQUFJQSxJQUFJLENBQUNuRSxJQUFJLEdBQUdtRSxJQUFJLENBQUNuRSxJQUFJLEdBQUd1RSxnQkFBUztFQUMzRCxJQUFNQyxPQUFPLEdBQUdMLElBQUksSUFBSUEsSUFBSSxDQUFDbEUsRUFBRSxHQUFHa0UsSUFBSSxDQUFDbEUsRUFBRSxHQUFHc0UsZ0JBQVM7RUFBQyxJQUVoREUsUUFBUSwwQkFBQUMsaUJBQUE7SUFBQSxTQUFBRCxTQUFBO01BQUEsSUFBQUUsTUFBQTtNQUFBLElBQUFuRSxnQkFBQSxtQkFBQWlFLFFBQUE7TUFBQSxTQUFBRyxJQUFBLEdBQUEvRyxTQUFBLENBQUFDLE1BQUEsRUFBQStHLElBQUEsT0FBQUMsS0FBQSxDQUFBRixJQUFBLEdBQUFHLElBQUEsTUFBQUEsSUFBQSxHQUFBSCxJQUFBLEVBQUFHLElBQUE7UUFBQUYsSUFBQSxDQUFBRSxJQUFBLElBQUFsSCxTQUFBLENBQUFrSCxJQUFBO01BQUE7TUFBQUosTUFBQSxHQUFBdkksVUFBQSxPQUFBcUksUUFBQSxLQUFBTyxNQUFBLENBQUFILElBQUE7TUFBQSxJQUFBN0csZ0JBQUEsYUFBQTJHLE1BQUEsbUJBbUJJLFVBQUNoRixLQUFLLEVBQUs7UUFDekIsSUFBQXNGLFlBQUEsR0FBNkJOLE1BQUEsQ0FBS3JFLEtBQUs7VUFBL0JjLE1BQU0sR0FBQTZELFlBQUEsQ0FBTjdELE1BQU07VUFBRVQsUUFBUSxHQUFBc0UsWUFBQSxDQUFSdEUsUUFBUTtRQUN4QixJQUFRWCxJQUFJLEdBQVNMLEtBQUssQ0FBbEJLLElBQUk7VUFBRUMsRUFBRSxHQUFLTixLQUFLLENBQVpNLEVBQUU7O1FBRWhCO1FBQ0EsSUFBSSxDQUFDLElBQUFKLGtCQUFXLEVBQUNHLElBQUksRUFBRUMsRUFBRSxDQUFDLEVBQUU7VUFDMUIsSUFBSW1CLE1BQU0sRUFBRTtZQUNWekIsS0FBSyxDQUFDeUIsTUFBTSxHQUFBeEQsYUFBQSxDQUFBQSxhQUFBLEtBQVF3RCxNQUFNLEdBQUssSUFBQThELDJCQUFvQixFQUFDbEYsSUFBSSxFQUFFQyxFQUFFLENBQUMsQ0FBRTtVQUNqRTtVQUVBVSxRQUFRLENBQUNoQixLQUFLLENBQUM7UUFDakI7TUFDRixDQUFDO01BQUEsSUFBQTNCLGdCQUFBLGFBQUEyRyxNQUFBLGNBRVUsVUFBQVEsS0FBQSxFQUEwQztRQUFBLElBQWpDQyxXQUFXLEdBQUFELEtBQUEsQ0FBakJuRixJQUFJO1VBQW1CcUYsU0FBUyxHQUFBRixLQUFBLENBQWJsRixFQUFFO1FBQ2pDLElBQUFxRixhQUFBLEdBQXVDWCxNQUFBLENBQUtyRSxLQUFLO1VBQXpDTixJQUFJLEdBQUFzRixhQUFBLENBQUp0RixJQUFJO1VBQUVDLEVBQUUsR0FBQXFGLGFBQUEsQ0FBRnJGLEVBQUU7VUFBRVUsUUFBUSxHQUFBMkUsYUFBQSxDQUFSM0UsUUFBUTtVQUFFUyxNQUFNLEdBQUFrRSxhQUFBLENBQU5sRSxNQUFNO1FBRWxDLElBQUlwQixJQUFJLENBQUN1RixLQUFLLEVBQUU7VUFDZEgsV0FBVyxDQUFDRyxLQUFLLEdBQUd2RixJQUFJLENBQUN1RixLQUFLO1FBQ2hDO1FBRUEsSUFBSXRGLEVBQUUsQ0FBQ3NGLEtBQUssRUFBRTtVQUNaRixTQUFTLENBQUNFLEtBQUssR0FBR3RGLEVBQUUsQ0FBQ3NGLEtBQUs7UUFDNUI7UUFFQSxJQUFNQyxPQUFPLEdBQUc7VUFBRXhGLElBQUksRUFBRW9GLFdBQVc7VUFBRW5GLEVBQUUsRUFBRW9GO1FBQVUsQ0FBQztRQUVwRCxJQUFJakUsTUFBTSxFQUFFO1VBQ1ZvRSxPQUFPLENBQUNwRSxNQUFNLEdBQUF4RCxhQUFBLENBQUFBLGFBQUEsS0FBUXdELE1BQU0sR0FBSyxJQUFBOEQsMkJBQW9CLEVBQUNFLFdBQVcsRUFBRUMsU0FBUyxDQUFDLENBQUU7UUFDakY7UUFFQTFFLFFBQVEsQ0FBQzZFLE9BQU8sQ0FBQztNQUNuQixDQUFDO01BQUEsSUFBQXhILGdCQUFBLGFBQUEyRyxNQUFBLGNBRVUsVUFBQ1MsV0FBVyxFQUFLO1FBQzFCLElBQUFLLGFBQUEsR0FBcUJkLE1BQUEsQ0FBS3JFLEtBQUs7VUFBdkJOLElBQUksR0FBQXlGLGFBQUEsQ0FBSnpGLElBQUk7VUFBRUMsRUFBRSxHQUFBd0YsYUFBQSxDQUFGeEYsRUFBRTtRQUVoQixJQUFJRCxJQUFJLENBQUN1RixLQUFLLEVBQUU7VUFDZEgsV0FBVyxDQUFDRyxLQUFLLEdBQUd2RixJQUFJLENBQUN1RixLQUFLO1FBQ2hDO1FBRUEsSUFBSSxDQUFDLElBQUExRixrQkFBVyxFQUFDdUYsV0FBVyxFQUFFbkYsRUFBRSxDQUFDLEVBQUU7VUFDakMwRSxNQUFBLENBQUtlLGFBQWEsQ0FBQztZQUFFMUYsSUFBSSxFQUFFb0YsV0FBVztZQUFFbkYsRUFBRSxFQUFFQTtVQUFHLENBQUMsQ0FBQztRQUNuRDtNQUNGLENBQUM7TUFBQSxJQUFBakMsZ0JBQUEsYUFBQTJHLE1BQUEsWUFFUSxVQUFDVSxTQUFTLEVBQUs7UUFDdEIsSUFBQU0sYUFBQSxHQUFxQmhCLE1BQUEsQ0FBS3JFLEtBQUs7VUFBdkJOLElBQUksR0FBQTJGLGFBQUEsQ0FBSjNGLElBQUk7VUFBRUMsRUFBRSxHQUFBMEYsYUFBQSxDQUFGMUYsRUFBRTtRQUVoQixJQUFJQSxFQUFFLENBQUNzRixLQUFLLEVBQUU7VUFDWkYsU0FBUyxDQUFDRSxLQUFLLEdBQUd0RixFQUFFLENBQUNzRixLQUFLO1FBQzVCO1FBRUEsSUFBSSxDQUFDLElBQUExRixrQkFBVyxFQUFDRyxJQUFJLEVBQUVxRixTQUFTLENBQUMsRUFBRTtVQUNqQ1YsTUFBQSxDQUFLZSxhQUFhLENBQUM7WUFBRTFGLElBQUksRUFBRUEsSUFBSTtZQUFFQyxFQUFFLEVBQUVvRjtVQUFVLENBQUMsQ0FBQztRQUNuRDtNQUNGLENBQUM7TUFBQSxJQUFBckgsZ0JBQUEsYUFBQTJHLE1BQUEsaUJBRWEsVUFBQ2hGLEtBQUssRUFBRUgsSUFBSSxFQUFLO1FBQzdCLElBQVErQyxlQUFlLEdBQUtvQyxNQUFBLENBQUtyRSxLQUFLLENBQTlCaUMsZUFBZTtRQUN2QixJQUFNM0IsTUFBTSxHQUFBaEQsYUFBQSxLQUFRK0IsS0FBSyxDQUFFO1FBRTNCLElBQUksQ0FBQ0EsS0FBSyxDQUFDNEYsS0FBSyxJQUFJLElBQUFLLG1CQUFPLEVBQUNqRyxLQUFLLENBQUM0RixLQUFLLENBQUMsRUFBRTtVQUN4QyxPQUFPM0UsTUFBTSxDQUFDMkUsS0FBSztRQUNyQjtRQUVBaEQsZUFBZSxLQUFBdkUsZ0JBQUEsaUJBQUl3QixJQUFJLEVBQUdvQixNQUFNLENBQUUsQ0FBQztNQUNyQyxDQUFDO01BQUEsSUFBQTVDLGdCQUFBLGFBQUEyRyxNQUFBLGdCQUVZLFVBQUNoRixLQUFLLEVBQUVILElBQUksRUFBRXFHLElBQUksRUFBSztRQUNsQyxJQUFBQyxhQUFBLEdBQTBGbkIsTUFBQSxDQUFLckUsS0FBSztVQUE1RmlDLGVBQWUsR0FBQXVELGFBQUEsQ0FBZnZELGVBQWU7VUFBRWhFLFFBQVEsR0FBQXVILGFBQUEsQ0FBUnZILFFBQVE7VUFBRXlCLElBQUksR0FBQThGLGFBQUEsQ0FBSjlGLElBQUk7VUFBRUMsRUFBRSxHQUFBNkYsYUFBQSxDQUFGN0YsRUFBRTtVQUFFK0IsZ0JBQWdCLEdBQUE4RCxhQUFBLENBQWhCOUQsZ0JBQWdCO1VBQUVFLGFBQWEsR0FBQTRELGFBQUEsQ0FBYjVELGFBQWE7VUFBRUosT0FBTyxHQUFBZ0UsYUFBQSxDQUFQaEUsT0FBTztRQUVyRixJQUFJLENBQUNFLGdCQUFnQixFQUFFO1VBQ3JCRixPQUFPLENBQUNuQyxLQUFLLElBQUlrRyxJQUFJLENBQUM7VUFDdEI7UUFDRjtRQUVBLElBQUl0SCxRQUFRLEVBQUU7VUFDWjtRQUNGOztRQUVBO1FBQ0EsSUFBSTJELGFBQWEsRUFBRTtVQUNqQjtRQUNGO1FBRUEsSUFBSTFDLElBQUksS0FBSyxRQUFRLElBQUksQ0FBQ0csS0FBSyxJQUFJSyxJQUFJLElBQUlDLEVBQUUsRUFBRTtVQUM3Q04sS0FBSyxHQUFBL0IsYUFBQSxDQUFBQSxhQUFBLEtBQVErQixLQUFLLEdBQUssSUFBQXVGLDJCQUFvQixFQUFDbEYsSUFBSSxFQUFFQyxFQUFFLENBQUMsQ0FBRTtRQUN6RDtRQUVBc0MsZUFBZSxLQUFBdkUsZ0JBQUE7VUFBR2dDLElBQUksRUFBSkEsSUFBSTtVQUFFQyxFQUFFLEVBQUZBO1FBQUUsR0FBR1QsSUFBSSxFQUFBNUIsYUFBQTtVQUFLMkgsS0FBSyxFQUFFO1FBQUUsR0FBSzVGLEtBQUssRUFBSSxDQUFDO1FBRTlELElBQUlnRixNQUFBLENBQUtvQixLQUFLLENBQUN2RyxJQUFJLENBQUMsRUFBRTtVQUNwQm1GLE1BQUEsQ0FBS29CLEtBQUssQ0FBQ3ZHLElBQUksQ0FBQyxDQUFDd0csS0FBSyxDQUFDLENBQUM7UUFDMUI7TUFDRixDQUFDO01BRUQ7TUFBQSxJQUFBaEksZ0JBQUEsYUFBQTJHLE1BQUEsV0FDUSxDQUFDLENBQUM7TUFBQSxPQUFBQSxNQUFBO0lBQUE7SUFBQSxJQUFBcEQsVUFBQSxhQUFBa0QsUUFBQSxFQUFBQyxpQkFBQTtJQUFBLFdBQUFsRCxhQUFBLGFBQUFpRCxRQUFBO01BQUFoRCxHQUFBO01BQUFDLEtBQUEsRUFFVixTQUFBQyxNQUFNQSxDQUFBLEVBQUc7UUFBQSxJQUFBc0UsTUFBQTtRQUNQLElBQUFDLFlBQUEsR0FhSSxJQUFJLENBQUM1RixLQUFLO1VBWloyQixrQkFBa0IsR0FBQWlFLFlBQUEsQ0FBbEJqRSxrQkFBa0I7VUFDbEJKLFVBQVUsR0FBQXFFLFlBQUEsQ0FBVnJFLFVBQVU7VUFDVlcsV0FBVyxHQUFBMEQsWUFBQSxDQUFYMUQsV0FBVztVQUNYRSxVQUFVLEdBQUF3RCxZQUFBLENBQVZ4RCxVQUFVO1VBQ1YxQyxJQUFJLEdBQUFrRyxZQUFBLENBQUpsRyxJQUFJO1VBQ0pDLEVBQUUsR0FBQWlHLFlBQUEsQ0FBRmpHLEVBQUU7VUFDRm1CLE1BQU0sR0FBQThFLFlBQUEsQ0FBTjlFLE1BQU07VUFDTjdDLFFBQVEsR0FBQTJILFlBQUEsQ0FBUjNILFFBQVE7VUFDUkMsV0FBVyxHQUFBMEgsWUFBQSxDQUFYMUgsV0FBVztVQUNYc0QsT0FBTyxHQUFBb0UsWUFBQSxDQUFQcEUsT0FBTztVQUNQQyxTQUFTLEdBQUFtRSxZQUFBLENBQVRuRSxTQUFTO1VBQ1RDLGdCQUFnQixHQUFBa0UsWUFBQSxDQUFoQmxFLGdCQUFnQjtRQUVsQixJQUFNbUUsTUFBTSxHQUFHO1VBQUV0RSxVQUFVLEVBQVZBLFVBQVU7VUFBRVcsV0FBVyxFQUFYQSxXQUFXO1VBQUVFLFVBQVUsRUFBVkEsVUFBVTtVQUFFbkUsUUFBUSxFQUFSQSxRQUFRO1VBQUVDLFdBQVcsRUFBWEEsV0FBVztVQUFFc0QsT0FBTyxFQUFQQTtRQUFRLENBQUM7UUFDdEYsSUFBTXNFLEtBQUssR0FBR25HLEVBQUUsR0FBR29HLFVBQUksQ0FBQ0MsU0FBUyxDQUFDRCxVQUFJLENBQUNELEtBQUssQ0FBQ3BHLElBQUksRUFBRUMsRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDO1FBRTNELElBQUlzRyxhQUFhLEdBQUcsSUFBSTtRQUN4QixJQUFJQyxXQUFXLEdBQUcsSUFBSTtRQUN0QixJQUFJQyxhQUFhLEdBQUcsSUFBSTtRQUV4QixJQUFJMUUsU0FBUyxFQUFFO1VBQ2IsSUFBSS9CLElBQUksSUFBSTNDLE1BQU0sQ0FBQ0wsU0FBUyxDQUFDMEosY0FBYyxDQUFDeEosSUFBSSxDQUFDOEMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxFQUFFO1lBQy9EdUcsYUFBYSxnQkFBR0ksb0JBQVEsQ0FBQ0MsWUFBWSxjQUNuQ3ZMLE1BQUEsWUFBQWdILGFBQUEsQ0FBQ3RHLFVBQUEsV0FBUztjQUNSOEssUUFBUSxFQUFFLFNBQVZBLFFBQVFBLENBQUd6SixDQUFDO2dCQUFBLE9BQU02SSxNQUFJLENBQUNGLEtBQUssQ0FBQy9GLElBQUksR0FBRzVDLENBQUM7Y0FBQSxDQUFFO2NBQ3ZDbUIsUUFBUSxFQUFFLENBQUN5RCxnQkFBaUI7Y0FDNUJwQyxJQUFJLEVBQUVJLElBQUs7Y0FDWDZCLFVBQVUsRUFBRUEsVUFBVztjQUN2QmxCLFFBQVEsRUFBRSxTQUFWQSxRQUFRQSxDQUFHNEUsS0FBSztnQkFBQSxPQUFLVSxNQUFJLENBQUNhLFdBQVcsQ0FBQWxKLGFBQUEsQ0FBQUEsYUFBQSxLQUFNb0MsSUFBSTtrQkFBRXVGLEtBQUssRUFBTEE7Z0JBQUssSUFBSSxNQUFNLENBQUM7Y0FBQTtZQUFDLENBQ25FLENBQUMsRUFDRnhELFNBQ0YsQ0FBQztVQUNIO1VBRUEsSUFBSTlCLEVBQUUsSUFBSTVDLE1BQU0sQ0FBQ0wsU0FBUyxDQUFDMEosY0FBYyxDQUFDeEosSUFBSSxDQUFDK0MsRUFBRSxFQUFFLE9BQU8sQ0FBQyxFQUFFO1lBQzNEdUcsV0FBVyxnQkFBR0csb0JBQVEsQ0FBQ0MsWUFBWSxjQUNqQ3ZMLE1BQUEsWUFBQWdILGFBQUEsQ0FBQ3RHLFVBQUEsV0FBUztjQUNSOEssUUFBUSxFQUFFLFNBQVZBLFFBQVFBLENBQUd6SixDQUFDO2dCQUFBLE9BQU02SSxNQUFJLENBQUNGLEtBQUssQ0FBQzlGLEVBQUUsR0FBRzdDLENBQUM7Y0FBQSxDQUFFO2NBQ3JDbUIsUUFBUSxFQUFFLENBQUN5RCxnQkFBaUI7Y0FDNUJwQyxJQUFJLEVBQUVLLEVBQUc7Y0FDVDRCLFVBQVUsRUFBRUEsVUFBVztjQUN2QmxCLFFBQVEsRUFBRSxTQUFWQSxRQUFRQSxDQUFHNEUsS0FBSztnQkFBQSxPQUFLVSxNQUFJLENBQUNhLFdBQVcsQ0FBQWxKLGFBQUEsQ0FBQUEsYUFBQSxLQUFNcUMsRUFBRTtrQkFBRXNGLEtBQUssRUFBTEE7Z0JBQUssSUFBSSxJQUFJLENBQUM7Y0FBQTtZQUFDLENBQy9ELENBQUMsRUFDRnhELFNBQ0YsQ0FBQztVQUNIO1VBRUEsSUFBSVgsTUFBTSxJQUFJL0QsTUFBTSxDQUFDTCxTQUFTLENBQUMwSixjQUFjLENBQUN4SixJQUFJLENBQUNrRSxNQUFNLEVBQUUsT0FBTyxDQUFDLEVBQUU7WUFDbkVxRixhQUFhLGdCQUFHRSxvQkFBUSxDQUFDQyxZQUFZLGNBQ25DdkwsTUFBQSxZQUFBZ0gsYUFBQSxDQUFDdEcsVUFBQSxXQUFTO2NBQ1I4SyxRQUFRLEVBQUUsU0FBVkEsUUFBUUEsQ0FBR3pKLENBQUM7Z0JBQUEsT0FBTTZJLE1BQUksQ0FBQ0YsS0FBSyxDQUFDM0UsTUFBTSxHQUFHaEUsQ0FBQztjQUFBLENBQUU7Y0FDekNtQixRQUFRLEVBQUUsQ0FBQ3lELGdCQUFpQjtjQUM1QnBDLElBQUksRUFBRXdCLE1BQU87Y0FDYlMsVUFBVSxFQUFFQSxVQUFXO2NBQ3ZCbEIsUUFBUSxFQUFFLFNBQVZBLFFBQVFBLENBQUc0RSxLQUFLO2dCQUFBLE9BQUtVLE1BQUksQ0FBQ2EsV0FBVyxDQUFBbEosYUFBQSxDQUFBQSxhQUFBLEtBQU13RCxNQUFNO2tCQUFFbUUsS0FBSyxFQUFMQTtnQkFBSyxJQUFJLFFBQVEsQ0FBQztjQUFBO1lBQUMsQ0FDdkUsQ0FBQyxFQUNGeEQsU0FDRixDQUFDO1VBQ0g7UUFDRjtRQUVBLG9CQUNFMUcsTUFBQSxZQUFBZ0gsYUFBQSxDQUFDakUsZUFBZTtVQUFDRyxRQUFRLEVBQUVBLFFBQVM7VUFBQ0MsV0FBVyxFQUFFQTtRQUFZLEdBQzNEeUIsRUFBRSxpQkFDRDVFLE1BQUEsWUFBQWdILGFBQUEsQ0FBQytCLGFBQWEsTUFBQTJDLFNBQUE7VUFDWi9HLElBQUksRUFBRUEsSUFBSztVQUNYQyxFQUFFLEVBQUVBLEVBQUc7VUFDUG1CLE1BQU0sRUFBRUEsTUFBTztVQUNmNEYsTUFBTSxFQUFFLElBQUksQ0FBQ0M7UUFBUyxHQUNsQmQsTUFBTTtVQUNWckUsT0FBTyxFQUFFLFNBQVRBLE9BQU9BLENBQUcrRCxJQUFJO1lBQUEsT0FBS0ksTUFBSSxDQUFDaUIsVUFBVSxDQUFDOUYsTUFBTSxFQUFFLFFBQVEsRUFBRXlFLElBQUksQ0FBQztVQUFBO1FBQUMsRUFDNUQsQ0FDRixFQUNBWSxhQUFhLGVBRWRwTCxNQUFBLFlBQUFnSCxhQUFBLENBQUNpQyxTQUFTLE1BQUF5QyxTQUFBO1VBQ1JJLENBQUMsRUFBRW5ILElBQUksQ0FBQ21ILENBQUU7VUFDVmxHLENBQUMsRUFBRWpCLElBQUksQ0FBQ2lCLENBQUU7VUFDVmMsU0FBUyxFQUFFQSxTQUFVO1VBQ3JCRSxrQkFBa0IsRUFBRUEsa0JBQW1CO1VBQ3ZDK0UsTUFBTSxFQUFFLElBQUksQ0FBQ0k7UUFBUyxHQUNsQmpCLE1BQU07VUFDVnJFLE9BQU8sRUFBRSxTQUFUQSxPQUFPQSxDQUFHK0QsSUFBSTtZQUFBLE9BQUtJLE1BQUksQ0FBQ2lCLFVBQVUsQ0FBQ2xILElBQUksRUFBRSxNQUFNLEVBQUU2RixJQUFJLENBQUM7VUFBQTtRQUFDLEVBQ3hELENBQUMsRUFDRFUsYUFBYSxFQUVidEcsRUFBRSxpQkFDRDVFLE1BQUEsWUFBQWdILGFBQUEsQ0FBQ21DLE9BQU8sTUFBQXVDLFNBQUE7VUFDTkksQ0FBQyxFQUFFbEgsRUFBRSxDQUFDa0gsQ0FBRTtVQUNSbEcsQ0FBQyxFQUFFaEIsRUFBRSxDQUFDZ0IsQ0FBRTtVQUNSbUYsS0FBSyxFQUFFQSxLQUFNLENBQUM7VUFBQTtVQUNkckUsU0FBUyxFQUFFQSxTQUFVO1VBQ3JCRSxrQkFBa0IsRUFBRUEsa0JBQW1CO1VBQ3ZDK0UsTUFBTSxFQUFFLElBQUksQ0FBQ0s7UUFBTyxHQUNoQmxCLE1BQU07VUFDVnJFLE9BQU8sRUFBRSxTQUFUQSxPQUFPQSxDQUFHK0QsSUFBSTtZQUFBLE9BQUtJLE1BQUksQ0FBQ2lCLFVBQVUsQ0FBQ2pILEVBQUUsRUFBRSxJQUFJLEVBQUU0RixJQUFJLENBQUM7VUFBQTtRQUFDLEVBQ3BELENBQ0YsRUFDQVcsV0FDYyxDQUFDO01BRXRCO0lBQUM7RUFBQSxFQTlOb0I1RCxpQkFBSyxDQUFDbkQsU0FBUztFQUFBLElBQUF6QixnQkFBQSxhQUFoQ3lHLFFBQVEsZUFDTztJQUNqQnhDLGtCQUFrQixFQUFFZ0IscUJBQVMsQ0FBQ0MsSUFBSTtJQUNsQ3JCLFVBQVUsRUFBRWdCLFdBQUssQ0FBQ0UsY0FBYztJQUNoQy9DLElBQUksRUFBRTZDLFdBQUssQ0FBQ08sU0FBUztJQUNyQm5ELEVBQUUsRUFBRTRDLFdBQUssQ0FBQ08sU0FBUztJQUNuQmhDLE1BQU0sRUFBRXlCLFdBQUssQ0FBQ08sU0FBUztJQUN2QnpDLFFBQVEsRUFBRXNDLHFCQUFTLENBQUNFLElBQUk7SUFDeEJYLFdBQVcsRUFBRVMscUJBQVMsQ0FBQ0UsSUFBSTtJQUMzQlQsVUFBVSxFQUFFTyxxQkFBUyxDQUFDRSxJQUFJO0lBQzFCckIsT0FBTyxFQUFFbUIscUJBQVMsQ0FBQ0UsSUFBSTtJQUN2QjNFLFdBQVcsRUFBRXlFLHFCQUFTLENBQUNxRSxNQUFNO0lBQzdCL0ksUUFBUSxFQUFFMEUscUJBQVMsQ0FBQ0MsSUFBSTtJQUN4QmhCLGFBQWEsRUFBRWUscUJBQVMsQ0FBQ0MsSUFBSTtJQUM3QlgsZUFBZSxFQUFFVSxxQkFBUyxDQUFDRSxJQUFJO0lBQy9CbkIsZ0JBQWdCLEVBQUVpQixxQkFBUyxDQUFDQyxJQUFJO0lBQ2hDbkIsU0FBUyxFQUFFa0IscUJBQVMsQ0FBQ3NFO0VBQ3ZCLENBQUM7RUFnTkgsT0FBTzlDLFFBQVE7QUFDakIsQ0FBQztBQUVNLElBQU0rQyxNQUFNLEdBQUFqSSxPQUFBLENBQUFpSSxNQUFBLEdBQUc7RUFDcEJDLElBQUksRUFBRSxTQUFOQSxJQUFJQSxDQUFBO0lBQUEsT0FBUztNQUNYaEosSUFBSSxFQUFFLGFBQWE7TUFDbkJDLE1BQU0sRUFBRUMsZUFBSyxDQUFDQyxRQUFRLENBQUNDLEtBQUs7TUFDNUJDLFdBQVcsRUFBRSxDQUFDO01BQ2RDLFVBQVUsRUFBRSxrREFBa0Q7TUFDOUQsU0FBUyxFQUFFO1FBQ1RELFdBQVcsRUFBRSxDQUFDO1FBQ2RKLE1BQU0sRUFBRUMsZUFBSyxDQUFDQyxRQUFRLENBQUNJO01BQ3pCO0lBQ0YsQ0FBQztFQUFBLENBQUM7RUFDRjBJLEtBQUssRUFBRSxTQUFQQSxLQUFLQSxDQUFBO0lBQUEsT0FBUztNQUNaakosSUFBSSxFQUFFRSxlQUFLLENBQUNDLFFBQVEsQ0FBQ0M7SUFDdkIsQ0FBQztFQUFBLENBQUM7RUFDRjhJLGFBQWEsRUFBRSxTQUFmQSxhQUFhQSxDQUFBO0lBQUEsT0FBQS9KLGFBQUEsS0FDUixJQUFBcUIseUJBQWlCLEVBQUMsQ0FBQztFQUFBLENBQ3RCO0VBQ0ZBLGlCQUFpQixFQUFFLFNBQW5CQSxpQkFBaUJBLENBQUE7SUFBQSxPQUFBckIsYUFBQSxDQUFBQSxhQUFBLEtBQ1osSUFBQXFCLHlCQUFpQixFQUFDLFFBQVEsQ0FBQztNQUM5QkgsV0FBVyxFQUFFO0lBQUM7RUFBQSxDQUNkO0VBQ0ZQLFFBQVEsRUFBRSxTQUFWQSxRQUFRQSxDQUFBO0lBQUEsT0FBQVgsYUFBQSxDQUFBQSxhQUFBLEtBQ0gsSUFBQVcsZ0JBQVEsRUFBQyxRQUFRLENBQUM7TUFDckJPLFdBQVcsRUFBRTtJQUFDO0VBQUEsQ0FDZDtFQUNGSSxPQUFPLEVBQUUsU0FBVEEsT0FBT0EsQ0FBRzBJLEtBQUssRUFBRW5HLEdBQUc7SUFBQSxPQUFBN0QsYUFBQSxLQUNmLElBQUFzQixlQUFPLEVBQUN1QyxHQUFHLENBQUM7RUFBQSxDQUNmO0VBQ0Z0QyxTQUFTLEVBQUUsU0FBWEEsU0FBU0EsQ0FBR3lJLEtBQUssRUFBRW5HLEdBQUc7SUFBQSxPQUFBN0QsYUFBQSxLQUNqQixJQUFBdUIsaUJBQVMsRUFBQ3NDLEdBQUcsQ0FBQztFQUFBLENBQ2pCO0VBQ0ZyQyxPQUFPLEVBQUUsU0FBVEEsT0FBT0EsQ0FBR3dJLEtBQUssRUFBRW5HLEdBQUc7SUFBQSxPQUFBN0QsYUFBQSxDQUFBQSxhQUFBLEtBQ2YsSUFBQXdCLGVBQU8sRUFBQ3FDLEdBQUcsQ0FBQztNQUNmM0MsV0FBVyxFQUFFLENBQUM7TUFDZE8sZUFBZSxFQUFFO0lBQUs7RUFBQTtBQUUxQixDQUFDIiwiaWdub3JlTGlzdCI6W119
|