@pie-lib/graphing-solution-set 3.1.0-next.0 → 3.1.0-next.25

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.
Files changed (108) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/NEXT.CHANGELOG.json +16 -1
  3. package/lib/axis/arrow.js +4 -1
  4. package/lib/axis/arrow.js.map +1 -1
  5. package/lib/axis/axes.js +17 -1
  6. package/lib/axis/axes.js.map +1 -1
  7. package/lib/axis/index.js +8 -1
  8. package/lib/axis/index.js.map +1 -1
  9. package/lib/bg.js +16 -7
  10. package/lib/bg.js.map +1 -1
  11. package/lib/container/actions.js +2 -1
  12. package/lib/container/actions.js.map +1 -1
  13. package/lib/container/index.js +7 -1
  14. package/lib/container/index.js.map +1 -1
  15. package/lib/container/marks.js +3 -1
  16. package/lib/container/marks.js.map +1 -1
  17. package/lib/container/middleware.js +2 -1
  18. package/lib/container/middleware.js.map +1 -1
  19. package/lib/container/reducer.js +2 -1
  20. package/lib/container/reducer.js.map +1 -1
  21. package/lib/coordinates-label.js +12 -1
  22. package/lib/coordinates-label.js.map +1 -1
  23. package/lib/graph-with-controls.js +19 -1
  24. package/lib/graph-with-controls.js.map +1 -1
  25. package/lib/graph.js +19 -1
  26. package/lib/graph.js.map +1 -1
  27. package/lib/grid-setup.js +12 -1
  28. package/lib/grid-setup.js.map +1 -1
  29. package/lib/grid.js +23 -1
  30. package/lib/grid.js.map +1 -1
  31. package/lib/index.js +8 -1
  32. package/lib/index.js.map +1 -1
  33. package/lib/labels.js +14 -1
  34. package/lib/labels.js.map +1 -1
  35. package/lib/mark-label.js +17 -1
  36. package/lib/mark-label.js.map +1 -1
  37. package/lib/toggle-bar.js +18 -1
  38. package/lib/toggle-bar.js.map +1 -1
  39. package/lib/tool-menu.js +4 -1
  40. package/lib/tool-menu.js.map +1 -1
  41. package/lib/tools/index.js +2 -1
  42. package/lib/tools/index.js.map +1 -1
  43. package/lib/tools/line/component.js +14 -1
  44. package/lib/tools/line/component.js.map +1 -1
  45. package/lib/tools/line/index.js +2 -1
  46. package/lib/tools/line/index.js.map +1 -1
  47. package/lib/tools/polygon/component.js +19 -1
  48. package/lib/tools/polygon/component.js.map +1 -1
  49. package/lib/tools/polygon/index.js +13 -1
  50. package/lib/tools/polygon/index.js.map +1 -1
  51. package/lib/tools/polygon/line.js +17 -1
  52. package/lib/tools/polygon/line.js.map +1 -1
  53. package/lib/tools/polygon/polygon.js +20 -1
  54. package/lib/tools/polygon/polygon.js.map +1 -1
  55. package/lib/tools/shared/arrow-head.js +4 -1
  56. package/lib/tools/shared/arrow-head.js.map +1 -1
  57. package/lib/tools/shared/line/index.js +14 -1
  58. package/lib/tools/shared/line/index.js.map +1 -1
  59. package/lib/tools/shared/line/line-path.js +17 -1
  60. package/lib/tools/shared/line/line-path.js.map +1 -1
  61. package/lib/tools/shared/line/with-root-edge.js +12 -1
  62. package/lib/tools/shared/line/with-root-edge.js.map +1 -1
  63. package/lib/tools/shared/point/arrow-point.js +4 -1
  64. package/lib/tools/shared/point/arrow-point.js.map +1 -1
  65. package/lib/tools/shared/point/arrow.js +4 -1
  66. package/lib/tools/shared/point/arrow.js.map +1 -1
  67. package/lib/tools/shared/point/base-point.js +12 -1
  68. package/lib/tools/shared/point/base-point.js.map +1 -1
  69. package/lib/tools/shared/point/index.js +17 -1
  70. package/lib/tools/shared/point/index.js.map +1 -1
  71. package/lib/tools/shared/styles.js +2 -1
  72. package/lib/tools/shared/styles.js.map +1 -1
  73. package/lib/tools/shared/types.js +2 -1
  74. package/lib/tools/shared/types.js.map +1 -1
  75. package/lib/undo-redo.js +3 -1
  76. package/lib/undo-redo.js.map +1 -1
  77. package/lib/use-debounce.js +3 -1
  78. package/lib/use-debounce.js.map +1 -1
  79. package/lib/utils.js +15 -1
  80. package/lib/utils.js.map +1 -1
  81. package/package.json +14 -14
  82. package/src/__tests__/graph-with-controls.test.jsx +41 -0
  83. package/src/__tests__/toggle-bar.test.jsx +41 -0
  84. package/src/bg.jsx +5 -5
  85. package/lib/__tests__/graph-with-controls.test.js +0 -199
  86. package/lib/__tests__/graph.test.js +0 -114
  87. package/lib/__tests__/grid.test.js +0 -29
  88. package/lib/__tests__/labels.test.js +0 -45
  89. package/lib/__tests__/mark-label.test.js +0 -133
  90. package/lib/__tests__/toggle-bar.test.js +0 -89
  91. package/lib/__tests__/tool-menu.test.js +0 -41
  92. package/lib/__tests__/undo-redo.test.js +0 -31
  93. package/lib/__tests__/use-debounce.test.js +0 -24
  94. package/lib/__tests__/utils.js +0 -70
  95. package/lib/__tests__/utils.test.js +0 -123
  96. package/lib/axis/__tests__/arrow.test.js +0 -60
  97. package/lib/axis/__tests__/axes.test.js +0 -162
  98. package/lib/tools/line/__tests__/component.test.js +0 -45
  99. package/lib/tools/polygon/__tests__/component.test.js +0 -81
  100. package/lib/tools/polygon/__tests__/index.test.js +0 -92
  101. package/lib/tools/polygon/__tests__/line.test.js +0 -30
  102. package/lib/tools/polygon/__tests__/polygon.test.js +0 -61
  103. package/lib/tools/shared/__tests__/arrow-head.test.js +0 -45
  104. package/lib/tools/shared/line/__tests__/index.test.js +0 -129
  105. package/lib/tools/shared/line/__tests__/line-path.test.js +0 -64
  106. package/lib/tools/shared/line/__tests__/with-root-edge.test.js +0 -83
  107. package/lib/tools/shared/point/__tests__/arrow-point.test.js +0 -127
  108. package/lib/tools/shared/point/__tests__/base-point.test.js +0 -122
@@ -1,5 +1,20 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.iterator.js");
7
+ require("core-js/modules/es.object.define-properties.js");
8
+ require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/es.reflect.construct.js");
14
+ require("core-js/modules/es.string.iterator.js");
15
+ require("core-js/modules/es.weak-map.js");
16
+ require("core-js/modules/web.dom-collections.for-each.js");
17
+ require("core-js/modules/web.dom-collections.iterator.js");
3
18
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
19
  var _typeof = require("@babel/runtime/helpers/typeof");
5
20
  Object.defineProperty(exports, "__esModule", {
@@ -14,6 +29,7 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
14
29
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
30
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
16
31
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
32
+ require("core-js/modules/es.array.includes.js");
17
33
  var _react = _interopRequireDefault(require("react"));
18
34
  var _propTypes = _interopRequireDefault(require("prop-types"));
19
35
  var _styles = require("@mui/material/styles");
@@ -111,4 +127,4 @@ var _default = exports["default"] = (0, _plot.gridDraggable)({
111
127
  };
112
128
  }
113
129
  })(Line);
114
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9wcm9wVHlwZXMiLCJfc3R5bGVzIiwiX3Bsb3QiLCJfcmVuZGVyVWkiLCJ1dGlscyIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX3N0eWxlczIiLCJfZXhjbHVkZWQiLCJlIiwidCIsIldlYWtNYXAiLCJyIiwibiIsIl9fZXNNb2R1bGUiLCJvIiwiaSIsImYiLCJfX3Byb3RvX18iLCJfdHlwZW9mIiwiaGFzIiwiZ2V0Iiwic2V0IiwiX3QiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsIl9jYWxsU3VwZXIiLCJfZ2V0UHJvdG90eXBlT2YyIiwiX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4yIiwiX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCIsIlJlZmxlY3QiLCJjb25zdHJ1Y3QiLCJjb25zdHJ1Y3RvciIsImFwcGx5IiwiQm9vbGVhbiIsInByb3RvdHlwZSIsInZhbHVlT2YiLCJvd25LZXlzIiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsImZpbHRlciIsImVudW1lcmFibGUiLCJwdXNoIiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJTdHlsZWRMaW5lIiwic3R5bGVkIiwic2hvdWxkRm9yd2FyZFByb3AiLCJwcm9wIiwiaW5jbHVkZXMiLCJfcmVmIiwiaXNEaXNhYmxlZCIsImRpc2FibGVkIiwiY29ycmVjdG5lc3MiLCJzdHJva2VXaWR0aCIsInRyYW5zaXRpb24iLCJzdHJva2UiLCJjb2xvciIsImRlZmF1bHRzIiwiU0VDT05EQVJZIiwiY29ycmVjdCIsImluY29ycmVjdCIsIm1pc3NpbmciLCJSYXdMaW5lIiwiX1JlYWN0JENvbXBvbmVudCIsIl9jbGFzc0NhbGxDaGVjazIiLCJfaW5oZXJpdHMyIiwiX2NyZWF0ZUNsYXNzMiIsImtleSIsInZhbHVlIiwicmVuZGVyIiwiX3RoaXMkcHJvcHMiLCJwcm9wcyIsImdyYXBoUHJvcHMiLCJmcm9tIiwidG8iLCJjbGFzc05hbWUiLCJyZXN0IiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzMiIsInNjYWxlIiwiY3JlYXRlRWxlbWVudCIsIl9leHRlbmRzMiIsIngxIiwieCIsInkxIiwieSIsIngyIiwieTIiLCJSZWFjdCIsIkNvbXBvbmVudCIsIlByb3BUeXBlcyIsInN0cmluZyIsInR5cGVzIiwiUG9pbnRUeXBlIiwiR3JhcGhQcm9wc1R5cGUiLCJpc1JlcXVpcmVkIiwiYm9vbCIsIkxpbmUiLCJleHBvcnRzIiwiX2RlZmF1bHQiLCJncmlkRHJhZ2dhYmxlIiwiYm91bmRzIiwiX3JlZjIiLCJkb21haW4iLCJyYW5nZSIsImFyZWEiLCJsaW5lVG9BcmVhIiwiYW5jaG9yUG9pbnQiLCJmcm9tRGVsdGEiLCJkZWx0YSIsInBvaW50IiwiYWRkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3Rvb2xzL3BvbHlnb24vbGluZS5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgeyBzdHlsZWQgfSBmcm9tICdAbXVpL21hdGVyaWFsL3N0eWxlcyc7XG5pbXBvcnQgeyB0eXBlcywgZ3JpZERyYWdnYWJsZSB9IGZyb20gJ0BwaWUtbGliL3Bsb3QnO1xuaW1wb3J0IHsgY29sb3IgfSBmcm9tICdAcGllLWxpYi9yZW5kZXItdWknO1xuaW1wb3J0ICogYXMgdXRpbHMgZnJvbSAnLi4vLi4vdXRpbHMnO1xuaW1wb3J0IHsgY29ycmVjdCwgZGlzYWJsZWQsIGluY29ycmVjdCwgbWlzc2luZyB9IGZyb20gJy4uL3NoYXJlZC9zdHlsZXMnO1xuXG5jb25zdCBTdHlsZWRMaW5lID0gc3R5bGVkKCdsaW5lJywge1xuICBzaG91bGRGb3J3YXJkUHJvcDogKHByb3ApID0+ICFbJ2Rpc2FibGVkJywgJ2NvcnJlY3RuZXNzJ10uaW5jbHVkZXMocHJvcCksXG59KSgoeyBkaXNhYmxlZDogaXNEaXNhYmxlZCwgY29ycmVjdG5lc3MgfSkgPT4gKHtcbiAgc3Ryb2tlV2lkdGg6IDYsXG4gIHRyYW5zaXRpb246ICdzdHJva2Utd2lkdGggMjAwbXMgZWFzZS1pbiwgc3Ryb2tlIDIwMG1zIGVhc2UtaW4nLFxuICBzdHJva2U6ICd0cmFuc3BhcmVudCcsXG4gICcmOmhvdmVyJzoge1xuICAgIHN0cm9rZVdpZHRoOiA3LFxuICAgIHN0cm9rZTogY29sb3IuZGVmYXVsdHMuU0VDT05EQVJZLFxuICB9LFxuICAuLi4oaXNEaXNhYmxlZCAmJiB7XG4gICAgLi4uZGlzYWJsZWQoJ3N0cm9rZScpLFxuICAgIHN0cm9rZVdpZHRoOiAyLFxuICB9KSxcbiAgLi4uKGNvcnJlY3RuZXNzID09PSAnY29ycmVjdCcgJiYgY29ycmVjdCgnc3Ryb2tlJykpLFxuICAuLi4oY29ycmVjdG5lc3MgPT09ICdpbmNvcnJlY3QnICYmIGluY29ycmVjdCgnc3Ryb2tlJykpLFxuICAuLi4oY29ycmVjdG5lc3MgPT09ICdtaXNzaW5nJyAmJiBtaXNzaW5nKCdzdHJva2UnKSksXG59KSk7XG5cbmNsYXNzIFJhd0xpbmUgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBmcm9tOiB0eXBlcy5Qb2ludFR5cGUsXG4gICAgdG86IHR5cGVzLlBvaW50VHlwZSxcbiAgICBncmFwaFByb3BzOiB0eXBlcy5HcmFwaFByb3BzVHlwZS5pc1JlcXVpcmVkLFxuICAgIGRpc2FibGVkOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBjb3JyZWN0bmVzczogUHJvcFR5cGVzLnN0cmluZyxcbiAgfTtcblxuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgIGZyb206IHt9LFxuICAgIHRvOiB7fSxcbiAgfTtcblxuICByZW5kZXIoKSB7XG4gICAgY29uc3QgeyBncmFwaFByb3BzLCBmcm9tLCB0bywgY2xhc3NOYW1lLCBkaXNhYmxlZCwgY29ycmVjdG5lc3MsIC4uLnJlc3QgfSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgeyBzY2FsZSB9ID0gZ3JhcGhQcm9wcztcbiAgICByZXR1cm4gKFxuICAgICAgPFN0eWxlZExpbmVcbiAgICAgICAgeDE9e3NjYWxlLngoZnJvbS54KX1cbiAgICAgICAgeTE9e3NjYWxlLnkoZnJvbS55KX1cbiAgICAgICAgeDI9e3NjYWxlLngodG8ueCl9XG4gICAgICAgIHkyPXtzY2FsZS55KHRvLnkpfVxuICAgICAgICBkaXNhYmxlZD17ZGlzYWJsZWR9XG4gICAgICAgIGNvcnJlY3RuZXNzPXtjb3JyZWN0bmVzc31cbiAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICAgIHsuLi5yZXN0fVxuICAgICAgLz5cbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBjb25zdCBMaW5lID0gUmF3TGluZTtcblxuZXhwb3J0IGRlZmF1bHQgZ3JpZERyYWdnYWJsZSh7XG4gIGJvdW5kczogKHByb3BzLCB7IGRvbWFpbiwgcmFuZ2UgfSkgPT4ge1xuICAgIGNvbnN0IHsgZnJvbSwgdG8gfSA9IHByb3BzO1xuICAgIGNvbnN0IGFyZWEgPSB1dGlscy5saW5lVG9BcmVhKGZyb20sIHRvKTtcbiAgICByZXR1cm4gdXRpbHMuYm91bmRzKGFyZWEsIGRvbWFpbiwgcmFuZ2UpO1xuICB9LFxuICBhbmNob3JQb2ludDogKHByb3BzKSA9PiB7XG4gICAgY29uc3QgeyBmcm9tIH0gPSBwcm9wcztcbiAgICByZXR1cm4gZnJvbTtcbiAgfSxcbiAgZnJvbURlbHRhOiAocHJvcHMsIGRlbHRhKSA9PiB7XG4gICAgY29uc3QgeyBmcm9tLCB0byB9ID0gcHJvcHM7XG4gICAgcmV0dXJuIHtcbiAgICAgIGZyb206IHV0aWxzLnBvaW50KGZyb20pLmFkZCh1dGlscy5wb2ludChkZWx0YSkpLFxuICAgICAgdG86IHV0aWxzLnBvaW50KHRvKS5hZGQodXRpbHMucG9pbnQoZGVsdGEpKSxcbiAgICB9O1xuICB9LFxufSkoTGluZSk7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxVQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxPQUFBLEdBQUFGLE9BQUE7QUFDQSxJQUFBRyxLQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxTQUFBLEdBQUFKLE9BQUE7QUFDQSxJQUFBSyxLQUFBLEdBQUFDLHVCQUFBLENBQUFOLE9BQUE7QUFDQSxJQUFBTyxRQUFBLEdBQUFQLE9BQUE7QUFBeUUsSUFBQVEsU0FBQTtBQUFBLFNBQUFGLHdCQUFBRyxDQUFBLEVBQUFDLENBQUEsNkJBQUFDLE9BQUEsTUFBQUMsQ0FBQSxPQUFBRCxPQUFBLElBQUFFLENBQUEsT0FBQUYsT0FBQSxZQUFBTCx1QkFBQSxZQUFBQSx3QkFBQUcsQ0FBQSxFQUFBQyxDQUFBLFNBQUFBLENBQUEsSUFBQUQsQ0FBQSxJQUFBQSxDQUFBLENBQUFLLFVBQUEsU0FBQUwsQ0FBQSxNQUFBTSxDQUFBLEVBQUFDLENBQUEsRUFBQUMsQ0FBQSxLQUFBQyxTQUFBLG1CQUFBVCxDQUFBLGlCQUFBQSxDQUFBLGdCQUFBVSxPQUFBLENBQUFWLENBQUEsMEJBQUFBLENBQUEsU0FBQVEsQ0FBQSxNQUFBRixDQUFBLEdBQUFMLENBQUEsR0FBQUcsQ0FBQSxHQUFBRCxDQUFBLFFBQUFHLENBQUEsQ0FBQUssR0FBQSxDQUFBWCxDQUFBLFVBQUFNLENBQUEsQ0FBQU0sR0FBQSxDQUFBWixDQUFBLEdBQUFNLENBQUEsQ0FBQU8sR0FBQSxDQUFBYixDQUFBLEVBQUFRLENBQUEsY0FBQU0sRUFBQSxJQUFBZCxDQUFBLGdCQUFBYyxFQUFBLE9BQUFDLGNBQUEsQ0FBQUMsSUFB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
130
+ //# sourceMappingURL=line.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"line.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_plot","_renderUi","utils","_interopRequireWildcard","_styles2","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledLine","styled","shouldForwardProp","prop","includes","_ref","isDisabled","disabled","correctness","strokeWidth","transition","stroke","color","defaults","SECONDARY","correct","incorrect","missing","RawLine","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","graphProps","from","to","className","rest","_objectWithoutProperties2","scale","createElement","_extends2","x1","x","y1","y","x2","y2","React","Component","PropTypes","string","types","PointType","GraphPropsType","isRequired","bool","Line","exports","_default","gridDraggable","bounds","_ref2","domain","range","area","lineToArea","anchorPoint","fromDelta","delta","point","add"],"sources":["../../../src/tools/polygon/line.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { types, gridDraggable } from '@pie-lib/plot';\nimport { color } from '@pie-lib/render-ui';\nimport * as utils from '../../utils';\nimport { correct, disabled, incorrect, missing } from '../shared/styles';\n\nconst StyledLine = styled('line', {\n shouldForwardProp: (prop) => !['disabled', 'correctness'].includes(prop),\n})(({ disabled: isDisabled, correctness }) => ({\n strokeWidth: 6,\n transition: 'stroke-width 200ms ease-in, stroke 200ms ease-in',\n stroke: 'transparent',\n '&:hover': {\n strokeWidth: 7,\n stroke: color.defaults.SECONDARY,\n },\n ...(isDisabled && {\n ...disabled('stroke'),\n strokeWidth: 2,\n }),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && missing('stroke')),\n}));\n\nclass RawLine extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n from: types.PointType,\n to: types.PointType,\n graphProps: types.GraphPropsType.isRequired,\n disabled: PropTypes.bool,\n correctness: PropTypes.string,\n };\n\n static defaultProps = {\n from: {},\n to: {},\n };\n\n render() {\n const { graphProps, from, to, className, disabled, correctness, ...rest } = this.props;\n const { scale } = graphProps;\n return (\n <StyledLine\n x1={scale.x(from.x)}\n y1={scale.y(from.y)}\n x2={scale.x(to.x)}\n y2={scale.y(to.y)}\n disabled={disabled}\n correctness={correctness}\n className={className}\n {...rest}\n />\n );\n }\n}\n\nexport const Line = RawLine;\n\nexport default gridDraggable({\n bounds: (props, { domain, range }) => {\n const { from, to } = props;\n const area = utils.lineToArea(from, to);\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { from } = props;\n return from;\n },\n fromDelta: (props, delta) => {\n const { from, to } = props;\n return {\n from: utils.point(from).add(utils.point(delta)),\n to: utils.point(to).add(utils.point(delta)),\n };\n },\n})(Line);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"line.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_plot","_renderUi","utils","_interopRequireWildcard","_styles2","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledLine","styled","shouldForwardProp","prop","includes","_ref","isDisabled","disabled","correctness","strokeWidth","transition","stroke","color","defaults","SECONDARY","correct","incorrect","missing","RawLine","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","graphProps","from","to","className","rest","_objectWithoutProperties2","scale","createElement","_extends2","x1","x","y1","y","x2","y2","React","Component","PropTypes","string","types","PointType","GraphPropsType","isRequired","bool","Line","exports","_default","gridDraggable","bounds","_ref2","domain","range","area","lineToArea","anchorPoint","fromDelta","delta","point","add"],"sources":["../../../src/tools/polygon/line.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { types, gridDraggable } from '@pie-lib/plot';\nimport { color } from '@pie-lib/render-ui';\nimport * as utils from '../../utils';\nimport { correct, disabled, incorrect, missing } from '../shared/styles';\n\nconst StyledLine = styled('line', {\n shouldForwardProp: (prop) => !['disabled', 'correctness'].includes(prop),\n})(({ disabled: isDisabled, correctness }) => ({\n strokeWidth: 6,\n transition: 'stroke-width 200ms ease-in, stroke 200ms ease-in',\n stroke: 'transparent',\n '&:hover': {\n strokeWidth: 7,\n stroke: color.defaults.SECONDARY,\n },\n ...(isDisabled && {\n ...disabled('stroke'),\n strokeWidth: 2,\n }),\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n ...(correctness === 'missing' && missing('stroke')),\n}));\n\nclass RawLine extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n from: types.PointType,\n to: types.PointType,\n graphProps: types.GraphPropsType.isRequired,\n disabled: PropTypes.bool,\n correctness: PropTypes.string,\n };\n\n static defaultProps = {\n from: {},\n to: {},\n };\n\n render() {\n const { graphProps, from, to, className, disabled, correctness, ...rest } = this.props;\n const { scale } = graphProps;\n return (\n <StyledLine\n x1={scale.x(from.x)}\n y1={scale.y(from.y)}\n x2={scale.x(to.x)}\n y2={scale.y(to.y)}\n disabled={disabled}\n correctness={correctness}\n className={className}\n {...rest}\n />\n );\n }\n}\n\nexport const Line = RawLine;\n\nexport default gridDraggable({\n bounds: (props, { domain, range }) => {\n const { from, to } = props;\n const area = utils.lineToArea(from, to);\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { from } = props;\n return from;\n },\n fromDelta: (props, delta) => {\n const { from, to } = props;\n return {\n from: utils.point(from).add(utils.point(delta)),\n to: utils.point(to).add(utils.point(delta)),\n };\n },\n})(Line);\n"],"mappings":"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","ignoreList":[]}
@@ -1,5 +1,19 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.iterator.js");
7
+ require("core-js/modules/es.object.define-properties.js");
8
+ require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.reflect.construct.js");
13
+ require("core-js/modules/es.string.iterator.js");
14
+ require("core-js/modules/es.weak-map.js");
15
+ require("core-js/modules/web.dom-collections.for-each.js");
16
+ require("core-js/modules/web.dom-collections.iterator.js");
3
17
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
18
  var _typeof = require("@babel/runtime/helpers/typeof");
5
19
  Object.defineProperty(exports, "__esModule", {
@@ -14,6 +28,11 @@ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime
14
28
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
29
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
16
30
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
31
+ require("core-js/modules/es.array.concat.js");
32
+ require("core-js/modules/es.array.includes.js");
33
+ require("core-js/modules/es.array.join.js");
34
+ require("core-js/modules/es.array.map.js");
35
+ require("core-js/modules/es.object.to-string.js");
17
36
  var _react = _interopRequireDefault(require("react"));
18
37
  var _propTypes = _interopRequireDefault(require("prop-types"));
19
38
  var _styles = require("@mui/material/styles");
@@ -128,4 +147,4 @@ var _default = exports["default"] = (0, _plot.gridDraggable)({
128
147
  });
129
148
  }
130
149
  })(Polygon);
131
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9wcm9wVHlwZXMiLCJfc3R5bGVzIiwiX3Bsb3QiLCJ1dGlscyIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwiX3JlbmRlclVpIiwiX3N0eWxlczIiLCJfZXhjbHVkZWQiLCJlIiwidCIsIldlYWtNYXAiLCJyIiwibiIsIl9fZXNNb2R1bGUiLCJvIiwiaSIsImYiLCJfX3Byb3RvX18iLCJfdHlwZW9mIiwiaGFzIiwiZ2V0Iiwic2V0IiwiX3QiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsIl9jYWxsU3VwZXIiLCJfZ2V0UHJvdG90eXBlT2YyIiwiX3Bvc3NpYmxlQ29uc3RydWN0b3JSZXR1cm4yIiwiX2lzTmF0aXZlUmVmbGVjdENvbnN0cnVjdCIsIlJlZmxlY3QiLCJjb25zdHJ1Y3QiLCJjb25zdHJ1Y3RvciIsImFwcGx5IiwiQm9vbGVhbiIsInByb3RvdHlwZSIsInZhbHVlT2YiLCJvd25LZXlzIiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsImZpbHRlciIsImVudW1lcmFibGUiLCJwdXNoIiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJTdHlsZWRQb2x5Z29uIiwic3R5bGVkIiwic2hvdWxkRm9yd2FyZFByb3AiLCJwcm9wIiwiaW5jbHVkZXMiLCJfcmVmIiwiaXNTb2x1dGlvbiIsImNvcnJlY3RuZXNzIiwiZmlsbCIsInN0cm9rZVdpZHRoIiwic3Ryb2tlIiwiY29sb3IiLCJkZWZhdWx0cyIsIlNFQ09OREFSWV9MSUdIVCIsImNvcnJlY3QiLCJpbmNvcnJlY3QiLCJTdHlsZWRQb2x5bGluZSIsIl9yZWYyIiwiZ2V0UG9pbnRTdHJpbmciLCJleHBvcnRzIiwicG9pbnRzIiwic2NhbGUiLCJtYXAiLCJwIiwic2NhbGVkUG9pbnQiLCJ4IiwieSIsImNvbmNhdCIsImpvaW4iLCJSYXdQb2x5Z29uIiwiX1JlYWN0JENvbXBvbmVudCIsIl9jbGFzc0NhbGxDaGVjazIiLCJfaW5oZXJpdHMyIiwiX2NyZWF0ZUNsYXNzMiIsImtleSIsInZhbHVlIiwicmVuZGVyIiwiX3RoaXMkcHJvcHMiLCJwcm9wcyIsImNsYXNzTmFtZSIsImdyYXBoUHJvcHMiLCJjbG9zZWQiLCJyZXN0IiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzMiIsInBvaW50U3RyaW5nIiwiQ29tcG9uZW50IiwiY3JlYXRlRWxlbWVudCIsIl9leHRlbmRzMiIsIlJlYWN0IiwiUHJvcFR5cGVzIiwic3RyaW5nIiwiYm9vbCIsImFycmF5T2YiLCJ0eXBlcyIsIlBvaW50VHlwZSIsIkdyYXBoUHJvcHNUeXBlIiwiaXNSZXF1aXJlZCIsIlBvbHlnb24iLCJfZGVmYXVsdCIsImdyaWREcmFnZ2FibGUiLCJib3VuZHMiLCJfcmVmMyIsImRvbWFpbiIsInJhbmdlIiwiYXJlYSIsInBvbHlnb25Ub0FyZWEiLCJhbmNob3JQb2ludCIsImZyb21EZWx0YSIsImRlbHRhIiwicG9pbnQiLCJhZGQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdG9vbHMvcG9seWdvbi9wb2x5Z29uLmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7IHN0eWxlZCB9IGZyb20gJ0BtdWkvbWF0ZXJpYWwvc3R5bGVzJztcbmltcG9ydCB7IGdyaWREcmFnZ2FibGUsIHR5cGVzIH0gZnJvbSAnQHBpZS1saWIvcGxvdCc7XG5pbXBvcnQgKiBhcyB1dGlscyBmcm9tICcuLi8uLi91dGlscyc7XG5pbXBvcnQgeyBjb2xvciB9IGZyb20gJ0BwaWUtbGliL3JlbmRlci11aSc7XG5pbXBvcnQgeyBjb3JyZWN0LCBpbmNvcnJlY3QgfSBmcm9tICcuLi9zaGFyZWQvc3R5bGVzJztcblxuY29uc3QgU3R5bGVkUG9seWdvbiA9IHN0eWxlZCgncG9seWdvbicsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IChwcm9wKSA9PiAhWydpc1NvbHV0aW9uJywgJ2NvcnJlY3RuZXNzJ10uaW5jbHVkZXMocHJvcCksXG59KSgoeyBpc1NvbHV0aW9uLCBjb3JyZWN0bmVzcyB9KSA9PiAoe1xuICBmaWxsOiBpc1NvbHV0aW9uID8gJ3JnYig2MCwgNzMsIDE1MCwgMC42KScgOiAndHJhbnNwYXJlbnQnLFxuICBzdHJva2VXaWR0aDogMixcbiAgc3Ryb2tlOiBjb2xvci5kZWZhdWx0cy5TRUNPTkRBUllfTElHSFQsXG4gICcmOmhvdmVyJzoge1xuICAgIGZpbGw6IGlzU29sdXRpb24gPyAncmdiKDYwLCA3MywgMTUwLCAwLjYpJyA6ICdyZ2IoMCwgMCwgMCwgMC4yNSknLFxuICB9LFxuICAuLi4oY29ycmVjdG5lc3MgPT09ICdjb3JyZWN0JyAmJiBjb3JyZWN0KCdzdHJva2UnKSksXG4gIC4uLihjb3JyZWN0bmVzcyA9PT0gJ2luY29ycmVjdCcgJiYgaW5jb3JyZWN0KCdzdHJva2UnKSksXG59KSk7XG5cbmNvbnN0IFN0eWxlZFBvbHlsaW5lID0gc3R5bGVkKCdwb2x5bGluZScsIHtcbiAgc2hvdWxkRm9yd2FyZFByb3A6IChwcm9wKSA9PiAhWydpc1NvbHV0aW9uJywgJ2NvcnJlY3RuZXNzJ10uaW5jbHVkZXMocHJvcCksXG59KSgoeyBpc1NvbHV0aW9uLCBjb3JyZWN0bmVzcyB9KSA9PiAoe1xuICBmaWxsOiBpc1NvbHV0aW9uID8gJ3JnYig2MCwgNzMsIDE1MCwgMC42KScgOiAndHJhbnNwYXJlbnQnLFxuICBzdHJva2VXaWR0aDogMixcbiAgc3Ryb2tlOiBjb2xvci5kZWZhdWx0cy5TRUNPTkRBUllfTElHSFQsXG4gICcmOmhvdmVyJzoge1xuICAgIGZpbGw6IGlzU29sdXRpb24gPyAncmdiKDYwLCA3MywgMTUwLCAwLjYpJyA6ICdyZ2IoMCwgMCwgMCwgMC4yNSknLFxuICB9LFxuICAuLi4oY29ycmVjdG5lc3MgPT09ICdjb3JyZWN0JyAmJiBjb3JyZWN0KCdzdHJva2UnKSksXG4gIC4uLihjb3JyZWN0bmVzcyA9PT0gJ2luY29ycmVjdCcgJiYgaW5jb3JyZWN0KCdzdHJva2UnKSksXG59KSk7XG5cbmV4cG9ydCBjb25zdCBnZXRQb2ludFN0cmluZyA9IChwb2ludHMsIHNjYWxlKSA9PiB7XG4gIHJldHVybiAocG9pbnRzIHx8IFtdKVxuICAgIC5tYXAoKHApID0+IHtcbiAgICAgIGNvbnN0IHNjYWxlZFBvaW50ID0ge1xuICAgICAgICB4OiBzY2FsZS54KHAueCksXG4gICAgICAgIHk6IHNjYWxlLnkocC55KSxcbiAgICAgIH07XG4gICAgICByZXR1cm4gYCR7c2NhbGVkUG9pbnQueH0sJHtzY2FsZWRQb2ludC55fWA7XG4gICAgfSlcbiAgICAuam9pbignICcpO1xufTtcblxuZXhwb3J0IGNsYXNzIFJhd1BvbHlnb24gZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIGNsYXNzTmFtZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBpc1NvbHV0aW9uOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBwb2ludHM6IFByb3BUeXBlcy5hcnJheU9mKHR5cGVzLlBvaW50VHlwZSksXG4gICAgZ3JhcGhQcm9wczogdHlwZXMuR3JhcGhQcm9wc1R5cGUuaXNSZXF1aXJlZCxcbiAgICBjbG9zZWQ6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWQsXG4gICAgY29ycmVjdG5lc3M6IFByb3BUeXBlcy5zdHJpbmcsXG4gIH07XG5cbiAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICBwb2ludHM6IFtdLFxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7IHBvaW50cywgY2xhc3NOYW1lLCBjb3JyZWN0bmVzcywgZ3JhcGhQcm9wcywgY2xvc2VkLCBpc1NvbHV0aW9uLCAuLi5yZXN0IH0gPSB0aGlzLnByb3BzO1xuICAgIGNvbnN0IHsgc2NhbGUgfSA9IGdyYXBoUHJvcHM7XG5cbiAgICBjb25zdCBwb2ludFN0cmluZyA9IGdldFBvaW50U3RyaW5nKHBvaW50cywgc2NhbGUpO1xuICAgIGNvbnN0IENvbXBvbmVudCA9IGNsb3NlZCA/IFN0eWxlZFBvbHlnb24gOiBTdHlsZWRQb2x5bGluZTtcbiAgICByZXR1cm4gKFxuICAgICAgPENvbXBvbmVudFxuICAgICAgICBwb2ludHM9e3BvaW50U3RyaW5nfVxuICAgICAgICBpc1NvbHV0aW9uPXtpc1NvbHV0aW9ufVxuICAgICAgICBjb3JyZWN0bmVzcz17Y29ycmVjdG5lc3N9XG4gICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lfVxuICAgICAgICB7Li4ucmVzdH1cbiAgICAgIC8+XG4gICAgKTtcbiAgfVxufVxuXG5leHBvcnQgY29uc3QgUG9seWdvbiA9IFJhd1BvbHlnb247XG5cbmV4cG9ydCBkZWZhdWx0IGdyaWREcmFnZ2FibGUoe1xuICBib3VuZHM6IChwcm9wcywgeyBkb21haW4sIHJhbmdlIH0pID0+IHtcbiAgICBjb25zdCB7IHBvaW50cyB9ID0gcHJvcHM7XG4gICAgY29uc3QgYXJlYSA9IHV0aWxzLnBvbHlnb25Ub0FyZWEocG9pbnRzKTtcbiAgICByZXR1cm4gdXRpbHMuYm91bmRzKGFyZWEsIGRvbWFpbiwgcmFuZ2UpO1xuICB9LFxuICBhbmNob3JQb2ludDogKHByb3BzKSA9PiB7XG4gICAgY29uc3QgeyBwb2ludHMgfSA9IHByb3BzO1xuICAgIHJldHVybiBwb2ludHNbMF07XG4gIH0sXG4gIGZyb21EZWx0YTogKHByb3BzLCBkZWx0YSkgPT4ge1xuICAgIGNvbnN0IHsgcG9pbnRzIH0gPSBwcm9wcztcblxuICAgIHJldHVybiBwb2ludHMubWFwKChwKSA9PiB1dGlscy5wb2ludChwKS5hZGQodXRpbHMucG9pbnQoZGVsdGEpKSk7XG4gIH0sXG59KShQb2x5Z29uKTtcbiJdLCJtYXBwaW5n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
150
+ //# sourceMappingURL=polygon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"polygon.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_plot","utils","_interopRequireWildcard","_renderUi","_styles2","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledPolygon","styled","shouldForwardProp","prop","includes","_ref","isSolution","correctness","fill","strokeWidth","stroke","color","defaults","SECONDARY_LIGHT","correct","incorrect","StyledPolyline","_ref2","getPointString","exports","points","scale","map","p","scaledPoint","x","y","concat","join","RawPolygon","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","className","graphProps","closed","rest","_objectWithoutProperties2","pointString","Component","createElement","_extends2","React","PropTypes","string","bool","arrayOf","types","PointType","GraphPropsType","isRequired","Polygon","_default","gridDraggable","bounds","_ref3","domain","range","area","polygonToArea","anchorPoint","fromDelta","delta","point","add"],"sources":["../../../src/tools/polygon/polygon.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { gridDraggable, types } from '@pie-lib/plot';\nimport * as utils from '../../utils';\nimport { color } from '@pie-lib/render-ui';\nimport { correct, incorrect } from '../shared/styles';\n\nconst StyledPolygon = styled('polygon', {\n shouldForwardProp: (prop) => !['isSolution', 'correctness'].includes(prop),\n})(({ isSolution, correctness }) => ({\n fill: isSolution ? 'rgb(60, 73, 150, 0.6)' : 'transparent',\n strokeWidth: 2,\n stroke: color.defaults.SECONDARY_LIGHT,\n '&:hover': {\n fill: isSolution ? 'rgb(60, 73, 150, 0.6)' : 'rgb(0, 0, 0, 0.25)',\n },\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n}));\n\nconst StyledPolyline = styled('polyline', {\n shouldForwardProp: (prop) => !['isSolution', 'correctness'].includes(prop),\n})(({ isSolution, correctness }) => ({\n fill: isSolution ? 'rgb(60, 73, 150, 0.6)' : 'transparent',\n strokeWidth: 2,\n stroke: color.defaults.SECONDARY_LIGHT,\n '&:hover': {\n fill: isSolution ? 'rgb(60, 73, 150, 0.6)' : 'rgb(0, 0, 0, 0.25)',\n },\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n}));\n\nexport const getPointString = (points, scale) => {\n return (points || [])\n .map((p) => {\n const scaledPoint = {\n x: scale.x(p.x),\n y: scale.y(p.y),\n };\n return `${scaledPoint.x},${scaledPoint.y}`;\n })\n .join(' ');\n};\n\nexport class RawPolygon extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n isSolution: PropTypes.bool,\n points: PropTypes.arrayOf(types.PointType),\n graphProps: types.GraphPropsType.isRequired,\n closed: PropTypes.bool.isRequired,\n correctness: PropTypes.string,\n };\n\n static defaultProps = {\n points: [],\n };\n\n render() {\n const { points, className, correctness, graphProps, closed, isSolution, ...rest } = this.props;\n const { scale } = graphProps;\n\n const pointString = getPointString(points, scale);\n const Component = closed ? StyledPolygon : StyledPolyline;\n return (\n <Component\n points={pointString}\n isSolution={isSolution}\n correctness={correctness}\n className={className}\n {...rest}\n />\n );\n }\n}\n\nexport const Polygon = RawPolygon;\n\nexport default gridDraggable({\n bounds: (props, { domain, range }) => {\n const { points } = props;\n const area = utils.polygonToArea(points);\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { points } = props;\n return points[0];\n },\n fromDelta: (props, delta) => {\n const { points } = props;\n\n return points.map((p) => utils.point(p).add(utils.point(delta)));\n },\n})(Polygon);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"polygon.js","names":["_react","_interopRequireDefault","require","_propTypes","_styles","_plot","utils","_interopRequireWildcard","_renderUi","_styles2","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_callSuper","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","StyledPolygon","styled","shouldForwardProp","prop","includes","_ref","isSolution","correctness","fill","strokeWidth","stroke","color","defaults","SECONDARY_LIGHT","correct","incorrect","StyledPolyline","_ref2","getPointString","exports","points","scale","map","p","scaledPoint","x","y","concat","join","RawPolygon","_React$Component","_classCallCheck2","_inherits2","_createClass2","key","value","render","_this$props","props","className","graphProps","closed","rest","_objectWithoutProperties2","pointString","Component","createElement","_extends2","React","PropTypes","string","bool","arrayOf","types","PointType","GraphPropsType","isRequired","Polygon","_default","gridDraggable","bounds","_ref3","domain","range","area","polygonToArea","anchorPoint","fromDelta","delta","point","add"],"sources":["../../../src/tools/polygon/polygon.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { styled } from '@mui/material/styles';\nimport { gridDraggable, types } from '@pie-lib/plot';\nimport * as utils from '../../utils';\nimport { color } from '@pie-lib/render-ui';\nimport { correct, incorrect } from '../shared/styles';\n\nconst StyledPolygon = styled('polygon', {\n shouldForwardProp: (prop) => !['isSolution', 'correctness'].includes(prop),\n})(({ isSolution, correctness }) => ({\n fill: isSolution ? 'rgb(60, 73, 150, 0.6)' : 'transparent',\n strokeWidth: 2,\n stroke: color.defaults.SECONDARY_LIGHT,\n '&:hover': {\n fill: isSolution ? 'rgb(60, 73, 150, 0.6)' : 'rgb(0, 0, 0, 0.25)',\n },\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n}));\n\nconst StyledPolyline = styled('polyline', {\n shouldForwardProp: (prop) => !['isSolution', 'correctness'].includes(prop),\n})(({ isSolution, correctness }) => ({\n fill: isSolution ? 'rgb(60, 73, 150, 0.6)' : 'transparent',\n strokeWidth: 2,\n stroke: color.defaults.SECONDARY_LIGHT,\n '&:hover': {\n fill: isSolution ? 'rgb(60, 73, 150, 0.6)' : 'rgb(0, 0, 0, 0.25)',\n },\n ...(correctness === 'correct' && correct('stroke')),\n ...(correctness === 'incorrect' && incorrect('stroke')),\n}));\n\nexport const getPointString = (points, scale) => {\n return (points || [])\n .map((p) => {\n const scaledPoint = {\n x: scale.x(p.x),\n y: scale.y(p.y),\n };\n return `${scaledPoint.x},${scaledPoint.y}`;\n })\n .join(' ');\n};\n\nexport class RawPolygon extends React.Component {\n static propTypes = {\n className: PropTypes.string,\n isSolution: PropTypes.bool,\n points: PropTypes.arrayOf(types.PointType),\n graphProps: types.GraphPropsType.isRequired,\n closed: PropTypes.bool.isRequired,\n correctness: PropTypes.string,\n };\n\n static defaultProps = {\n points: [],\n };\n\n render() {\n const { points, className, correctness, graphProps, closed, isSolution, ...rest } = this.props;\n const { scale } = graphProps;\n\n const pointString = getPointString(points, scale);\n const Component = closed ? StyledPolygon : StyledPolyline;\n return (\n <Component\n points={pointString}\n isSolution={isSolution}\n correctness={correctness}\n className={className}\n {...rest}\n />\n );\n }\n}\n\nexport const Polygon = RawPolygon;\n\nexport default gridDraggable({\n bounds: (props, { domain, range }) => {\n const { points } = props;\n const area = utils.polygonToArea(points);\n return utils.bounds(area, domain, range);\n },\n anchorPoint: (props) => {\n const { points } = props;\n return points[0];\n },\n fromDelta: (props, delta) => {\n const { points } = props;\n\n return points.map((p) => utils.point(p).add(utils.point(delta)));\n },\n})(Polygon);\n"],"mappings":"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","ignoreList":[]}
@@ -1,10 +1,13 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.object.define-property.js");
3
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.genUid = exports.ArrowMarker = exports.ArrowHead = void 0;
9
+ require("core-js/modules/es.array.concat.js");
10
+ require("core-js/modules/es.number.to-fixed.js");
8
11
  var _react = _interopRequireDefault(require("react"));
9
12
  var _propTypes = _interopRequireDefault(require("prop-types"));
10
13
  var _renderUi = require("@pie-lib/render-ui");
@@ -59,4 +62,4 @@ ArrowMarker.propTypes = {
59
62
  ArrowMarker.defaultProps = {
60
63
  size: 5
61
64
  };
62
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9wcm9wVHlwZXMiLCJfcmVuZGVyVWkiLCJBcnJvd0hlYWQiLCJleHBvcnRzIiwiX3JlZiIsInNpemUiLCJ0cmFuc2Zvcm0iLCJwb2ludHMiLCJjcmVhdGVFbGVtZW50IiwiY29uY2F0IiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwic3RyaW5nIiwibnVtYmVyIiwiZGVmYXVsdFByb3BzIiwiZ2VuVWlkIiwidiIsIk1hdGgiLCJyYW5kb20iLCJ0b0ZpeGVkIiwiQXJyb3dNYXJrZXIiLCJfcmVmMiIsImlkIiwiY2xhc3NOYW1lIiwidmlld0JveCIsInJlZlgiLCJyZWZZIiwibWFya2VyV2lkdGgiLCJtYXJrZXJIZWlnaHQiLCJvcmllbnQiLCJzdHlsZSIsImZpbGwiLCJjb2xvciIsImRlZmF1bHRzIiwiQkxBQ0siXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvdG9vbHMvc2hhcmVkL2Fycm93LWhlYWQuanN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHsgY29sb3IgfSBmcm9tICdAcGllLWxpYi9yZW5kZXItdWknO1xuXG5leHBvcnQgY29uc3QgQXJyb3dIZWFkID0gKHsgc2l6ZSwgdHJhbnNmb3JtLCBwb2ludHMgfSkgPT4gKFxuICA8cG9seWdvbiBwb2ludHM9e3BvaW50cyB8fCBgMCwwICR7c2l6ZX0sJHtzaXplIC8gMn0gMCwke3NpemV9YH0gdHJhbnNmb3JtPXt0cmFuc2Zvcm19IC8+XG4pO1xuQXJyb3dIZWFkLnByb3BUeXBlcyA9IHtcbiAgcG9pbnRzOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBzaXplOiBQcm9wVHlwZXMubnVtYmVyLFxuICB0cmFuc2Zvcm06IFByb3BUeXBlcy5zdHJpbmcsXG59O1xuQXJyb3dIZWFkLmRlZmF1bHRQcm9wcyA9IHtcbiAgcG9pbnRzOiAnJyxcbiAgc2l6ZTogMTAsXG4gIHRyYW5zZm9ybTogJycsXG59O1xuZXhwb3J0IGNvbnN0IGdlblVpZCA9ICgpID0+IHtcbiAgY29uc3QgdiA9IChNYXRoLnJhbmRvbSgpICogMTAwMCkudG9GaXhlZCgwKTtcbiAgcmV0dXJuIGBhcnJvdy0ke3Z9YDtcbn07XG5leHBvcnQgY29uc3QgQXJyb3dNYXJrZXIgPSAoeyBpZCwgc2l6ZSwgY2xhc3NOYW1lIH0pID0+IHtcbiAgcmV0dXJuIChcbiAgICA8bWFya2VyXG4gICAgICBpZD17aWR9XG4gICAgICB2aWV3Qm94PXtgMCAwICR7c2l6ZX0gJHtzaXplfWB9XG4gICAgICByZWZYPXtzaXplIC8gMn1cbiAgICAgIHJlZlk9e3NpemUgLyAyfVxuICAgICAgbWFya2VyV2lkdGg9e3NpemV9XG4gICAgICBtYXJrZXJIZWlnaHQ9e3NpemV9XG4gICAgICBvcmllbnQ9XCJhdXRvLXN0YXJ0LXJldmVyc2VcIlxuICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWV9XG4gICAgICBzdHlsZT17eyBmaWxsOiBjb2xvci5kZWZhdWx0cy5CTEFDSyB9fVxuICAgID5cbiAgICAgIDxBcnJvd0hlYWQgc2l6ZT17c2l6ZX0gLz5cbiAgICA8L21hcmtlcj5cbiAgKTtcbn07XG5BcnJvd01hcmtlci5wcm9wVHlwZXMgPSB7XG4gIGlkOiBQcm9wVHlwZXMuc3RyaW5nLFxuICBzaXplOiBQcm9wVHlwZXMubnVtYmVyLFxuICBjbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG59O1xuQXJyb3dNYXJrZXIuZGVmYXVsdFByb3BzID0ge1xuICBzaXplOiA1LFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFVBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLFNBQUEsR0FBQUYsT0FBQTtBQUVPLElBQU1HLFNBQVMsR0FBQUMsT0FBQSxDQUFBRCxTQUFBLEdB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
65
+ //# sourceMappingURL=arrow-head.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"arrow-head.js","names":["_react","_interopRequireDefault","require","_propTypes","_renderUi","ArrowHead","exports","_ref","size","transform","points","createElement","concat","propTypes","PropTypes","string","number","defaultProps","genUid","v","Math","random","toFixed","ArrowMarker","_ref2","id","className","viewBox","refX","refY","markerWidth","markerHeight","orient","style","fill","color","defaults","BLACK"],"sources":["../../../src/tools/shared/arrow-head.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { color } from '@pie-lib/render-ui';\n\nexport const ArrowHead = ({ size, transform, points }) => (\n <polygon points={points || `0,0 ${size},${size / 2} 0,${size}`} transform={transform} />\n);\nArrowHead.propTypes = {\n points: PropTypes.string,\n size: PropTypes.number,\n transform: PropTypes.string,\n};\nArrowHead.defaultProps = {\n points: '',\n size: 10,\n transform: '',\n};\nexport const genUid = () => {\n const v = (Math.random() * 1000).toFixed(0);\n return `arrow-${v}`;\n};\nexport const ArrowMarker = ({ id, size, className }) => {\n return (\n <marker\n id={id}\n viewBox={`0 0 ${size} ${size}`}\n refX={size / 2}\n refY={size / 2}\n markerWidth={size}\n markerHeight={size}\n orient=\"auto-start-reverse\"\n className={className}\n style={{ fill: color.defaults.BLACK }}\n >\n <ArrowHead size={size} />\n </marker>\n );\n};\nArrowMarker.propTypes = {\n id: PropTypes.string,\n size: PropTypes.number,\n className: PropTypes.string,\n};\nArrowMarker.defaultProps = {\n size: 5,\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AAEO,IAAMG,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG,SAAZA,SAASA,CAAAE,IAAA;EAAA,IAAMC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,SAAS,GAAAF,IAAA,CAATE,SAAS;IAAEC,MAAM,GAAAH,IAAA,CAANG,MAAM;EAAA,oBACjDV,MAAA,YAAAW,aAAA;IAASD,MAAM,EAAEA,MAAM,WAAAE,MAAA,CAAWJ,IAAI,OAAAI,MAAA,CAAIJ,IAAI,GAAG,CAAC,SAAAI,MAAA,CAAMJ,IAAI,CAAG;IAACC,SAAS,EAAEA;EAAU,CAAE,CAAC;AAAA,CACzF;AACDJ,SAAS,CAACQ,SAAS,GAAG;EACpBH,MAAM,EAAEI,qBAAS,CAACC,MAAM;EACxBP,IAAI,EAAEM,qBAAS,CAACE,MAAM;EACtBP,SAAS,EAAEK,qBAAS,CAACC;AACvB,CAAC;AACDV,SAAS,CAACY,YAAY,GAAG;EACvBP,MAAM,EAAE,EAAE;EACVF,IAAI,EAAE,EAAE;EACRC,SAAS,EAAE;AACb,CAAC;AACM,IAAMS,MAAM,GAAAZ,OAAA,CAAAY,MAAA,GAAG,SAATA,MAAMA,CAAA,EAAS;EAC1B,IAAMC,CAAC,GAAG,CAACC,IAAI,CAACC,MAAM,CAAC,CAAC,GAAG,IAAI,EAAEC,OAAO,CAAC,CAAC,CAAC;EAC3C,gBAAAV,MAAA,CAAgBO,CAAC;AACnB,CAAC;AACM,IAAMI,WAAW,GAAAjB,OAAA,CAAAiB,WAAA,GAAG,SAAdA,WAAWA,CAAAC,KAAA,EAAgC;EAAA,IAA1BC,EAAE,GAAAD,KAAA,CAAFC,EAAE;IAAEjB,IAAI,GAAAgB,KAAA,CAAJhB,IAAI;IAAEkB,SAAS,GAAAF,KAAA,CAATE,SAAS;EAC/C,oBACE1B,MAAA,YAAAW,aAAA;IACEc,EAAE,EAAEA,EAAG;IACPE,OAAO,SAAAf,MAAA,CAASJ,IAAI,OAAAI,MAAA,CAAIJ,IAAI,CAAG;IAC/BoB,IAAI,EAAEpB,IAAI,GAAG,CAAE;IACfqB,IAAI,EAAErB,IAAI,GAAG,CAAE;IACfsB,WAAW,EAAEtB,IAAK;IAClBuB,YAAY,EAAEvB,IAAK;IACnBwB,MAAM,EAAC,oBAAoB;IAC3BN,SAAS,EAAEA,SAAU;IACrBO,KAAK,EAAE;MAAEC,IAAI,EAAEC,eAAK,CAACC,QAAQ,CAACC;IAAM;EAAE,gBAEtCrC,MAAA,YAAAW,aAAA,CAACN,SAAS;IAACG,IAAI,EAAEA;EAAK,CAAE,CAClB,CAAC;AAEb,CAAC;AACDe,WAAW,CAACV,SAAS,GAAG;EACtBY,EAAE,EAAEX,qBAAS,CAACC,MAAM;EACpBP,IAAI,EAAEM,qBAAS,CAACE,MAAM;EACtBU,SAAS,EAAEZ,qBAAS,CAACC;AACvB,CAAC;AACDQ,WAAW,CAACN,YAAY,GAAG;EACzBT,IAAI,EAAE;AACR,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"arrow-head.js","names":["_react","_interopRequireDefault","require","_propTypes","_renderUi","ArrowHead","exports","_ref","size","transform","points","createElement","concat","propTypes","PropTypes","string","number","defaultProps","genUid","v","Math","random","toFixed","ArrowMarker","_ref2","id","className","viewBox","refX","refY","markerWidth","markerHeight","orient","style","fill","color","defaults","BLACK"],"sources":["../../../src/tools/shared/arrow-head.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { color } from '@pie-lib/render-ui';\n\nexport const ArrowHead = ({ size, transform, points }) => (\n <polygon points={points || `0,0 ${size},${size / 2} 0,${size}`} transform={transform} />\n);\nArrowHead.propTypes = {\n points: PropTypes.string,\n size: PropTypes.number,\n transform: PropTypes.string,\n};\nArrowHead.defaultProps = {\n points: '',\n size: 10,\n transform: '',\n};\nexport const genUid = () => {\n const v = (Math.random() * 1000).toFixed(0);\n return `arrow-${v}`;\n};\nexport const ArrowMarker = ({ id, size, className }) => {\n return (\n <marker\n id={id}\n viewBox={`0 0 ${size} ${size}`}\n refX={size / 2}\n refY={size / 2}\n markerWidth={size}\n markerHeight={size}\n orient=\"auto-start-reverse\"\n className={className}\n style={{ fill: color.defaults.BLACK }}\n >\n <ArrowHead size={size} />\n </marker>\n );\n};\nArrowMarker.propTypes = {\n id: PropTypes.string,\n size: PropTypes.number,\n className: PropTypes.string,\n};\nArrowMarker.defaultProps = {\n size: 5,\n};\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AAEO,IAAMG,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAG,SAAZA,SAASA,CAAAE,IAAA;EAAA,IAAMC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,SAAS,GAAAF,IAAA,CAATE,SAAS;IAAEC,MAAM,GAAAH,IAAA,CAANG,MAAM;EAAA,oBACjDV,MAAA,YAAAW,aAAA;IAASD,MAAM,EAAEA,MAAM,WAAAE,MAAA,CAAWJ,IAAI,OAAAI,MAAA,CAAIJ,IAAI,GAAG,CAAC,SAAAI,MAAA,CAAMJ,IAAI,CAAG;IAACC,SAAS,EAAEA;EAAU,CAAE,CAAC;AAAA,CACzF;AACDJ,SAAS,CAACQ,SAAS,GAAG;EACpBH,MAAM,EAAEI,qBAAS,CAACC,MAAM;EACxBP,IAAI,EAAEM,qBAAS,CAACE,MAAM;EACtBP,SAAS,EAAEK,qBAAS,CAACC;AACvB,CAAC;AACDV,SAAS,CAACY,YAAY,GAAG;EACvBP,MAAM,EAAE,EAAE;EACVF,IAAI,EAAE,EAAE;EACRC,SAAS,EAAE;AACb,CAAC;AACM,IAAMS,MAAM,GAAAZ,OAAA,CAAAY,MAAA,GAAG,SAATA,MAAMA,CAAA,EAAS;EAC1B,IAAMC,CAAC,GAAG,CAACC,IAAI,CAACC,MAAM,CAAC,CAAC,GAAG,IAAI,EAAEC,OAAO,CAAC,CAAC,CAAC;EAC3C,gBAAAV,MAAA,CAAgBO,CAAC;AACnB,CAAC;AACM,IAAMI,WAAW,GAAAjB,OAAA,CAAAiB,WAAA,GAAG,SAAdA,WAAWA,CAAAC,KAAA,EAAgC;EAAA,IAA1BC,EAAE,GAAAD,KAAA,CAAFC,EAAE;IAAEjB,IAAI,GAAAgB,KAAA,CAAJhB,IAAI;IAAEkB,SAAS,GAAAF,KAAA,CAATE,SAAS;EAC/C,oBACE1B,MAAA,YAAAW,aAAA;IACEc,EAAE,EAAEA,EAAG;IACPE,OAAO,SAAAf,MAAA,CAASJ,IAAI,OAAAI,MAAA,CAAIJ,IAAI,CAAG;IAC/BoB,IAAI,EAAEpB,IAAI,GAAG,CAAE;IACfqB,IAAI,EAAErB,IAAI,GAAG,CAAE;IACfsB,WAAW,EAAEtB,IAAK;IAClBuB,YAAY,EAAEvB,IAAK;IACnBwB,MAAM,EAAC,oBAAoB;IAC3BN,SAAS,EAAEA,SAAU;IACrBO,KAAK,EAAE;MAAEC,IAAI,EAAEC,eAAK,CAACC,QAAQ,CAACC;IAAM;EAAE,gBAEtCrC,MAAA,YAAAW,aAAA,CAACN,SAAS;IAACG,IAAI,EAAEA;EAAK,CAAE,CAClB,CAAC;AAEb,CAAC;AACDe,WAAW,CAACV,SAAS,GAAG;EACtBY,EAAE,EAAEX,qBAAS,CAACC,MAAM;EACpBP,IAAI,EAAEM,qBAAS,CAACE,MAAM;EACtBU,SAAS,EAAEZ,qBAAS,CAACC;AACvB,CAAC;AACDQ,WAAW,CAACN,YAAY,GAAG;EACzBT,IAAI,EAAE;AACR,CAAC","ignoreList":[]}
@@ -1,10 +1,23 @@
1
1
  "use strict";
2
2
 
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.object.define-properties.js");
7
+ require("core-js/modules/es.object.define-property.js");
8
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
10
+ require("core-js/modules/es.object.keys.js");
11
+ require("core-js/modules/es.object.to-string.js");
12
+ require("core-js/modules/es.reflect.construct.js");
13
+ require("core-js/modules/web.dom-collections.for-each.js");
3
14
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
15
  Object.defineProperty(exports, "__esModule", {
5
16
  value: true
6
17
  });
7
18
  exports.styles = exports.lineToolComponent = exports.lineTool = exports.lineBase = void 0;
19
+ require("core-js/modules/es.array.concat.js");
20
+ require("core-js/modules/es.array.fill.js");
8
21
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
22
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
23
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
@@ -538,4 +551,4 @@ var styles = exports.styles = {
538
551
  return _objectSpread({}, (0, _styles.missing)(key));
539
552
  }
540
553
  };
541
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9pc0VxdWFsIiwiX2Nsb25lRGVlcCIsIl9wb2ludCIsIl9wbG90IiwiX3Byb3BUeXBlcyIsIl9zdHlsZXMiLCJfcmVhY3REb20iLCJfbWFya0xhYmVsIiwiX2lzRW1wdHkiLCJfcmVuZGVyVWkiLCJfdXRpbHMiLCJfY2FsbFN1cGVyIiwidCIsIm8iLCJlIiwiX2dldFByb3RvdHlwZU9mMiIsIl9wb3NzaWJsZUNvbnN0cnVjdG9yUmV0dXJuMiIsIl9pc05hdGl2ZVJlZmxlY3RDb25zdHJ1Y3QiLCJSZWZsZWN0IiwiY29uc3RydWN0IiwiY29uc3RydWN0b3IiLCJhcHBseSIsIkJvb2xlYW4iLCJwcm90b3R5cGUiLCJ2YWx1ZU9mIiwiY2FsbCIsIm93bktleXMiLCJyIiwiT2JqZWN0Iiwia2V5cyIsImdldE93blByb3BlcnR5U3ltYm9scyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiX29iamVjdFNwcmVhZCIsImFyZ3VtZW50cyIsImxlbmd0aCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkyIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsImxpbmVUb29sIiwiZXhwb3J0cyIsInR5cGUiLCJDb21wb25lbnQiLCJhZGRQb2ludCIsInBvaW50IiwibWFyayIsImVxdWFsUG9pbnRzIiwicm9vdCIsImJ1aWxkaW5nIiwiZnJvbSIsInRvIiwibGluZVRvb2xDb21wb25lbnQiLCJfTGluZVRvb2xDb21wb25lbnQiLCJfUmVhY3QkQ29tcG9uZW50IiwiTGluZVRvb2xDb21wb25lbnQiLCJwcm9wcyIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrMiIsInNldFN0YXRlIiwiX3RoaXMkcHJvcHMiLCJvbkNoYW5nZSIsInVwZGF0ZSIsInN0YXRlIiwidW5kZWZpbmVkIiwic2hvdWxkTm90Q2hhbmdlIiwic2FtZUF4ZXMiLCJ5IiwiaXNFcXVhbCIsIl9yZWYiLCJtaWRkbGUiLCJfcmVmMiIsIl90aGlzJHByb3BzMiIsIl9pbmhlcml0czIiLCJfY3JlYXRlQ2xhc3MyIiwia2V5IiwidmFsdWUiLCJyZW5kZXIiLCJfdGhpcyRwcm9wczMiLCJncmFwaFByb3BzIiwib25DbGljayIsImxhYmVsTm9kZSIsImxhYmVsTW9kZUVuYWJsZWQiLCJjb29yZGluYXRlc09uSG92ZXIiLCJnc3NMaW5lRGF0YSIsImNsb25lRGVlcCIsImlzQmFja2dyb3VuZCIsImRpc2FibGVkIiwiY3JlYXRlRWxlbWVudCIsImNvcnJlY3RuZXNzIiwiZmlsbCIsImNoYW5nZU1hcmsiLCJjaGFuZ2VNYXJrUHJvcHMiLCJvbkRyYWdTdGFydCIsInN0YXJ0RHJhZyIsIm9uRHJhZ1N0b3AiLCJzdG9wRHJhZyIsIlJlYWN0IiwidHlwZXMiLCJUb29sUHJvcFR5cGVGaWVsZHMiLCJHcmFwaFByb3BzVHlwZSIsImlzUmVxdWlyZWQiLCJkcmFnT3B0cyIsImJvdW5kcyIsIl9yZWYzIiwiZG9tYWluIiwicmFuZ2UiLCJhcmVhIiwidXRpbHMiLCJsaW5lVG9BcmVhIiwiYW5jaG9yUG9pbnQiLCJmcm9tRGVsdGEiLCJkZWx0YSIsImFkZCIsImxpbmVCYXNlIiwiQ29tcCIsIm9wdHMiLCJEcmFnZ2FibGVDb21wIiwiZ3JpZERyYWdnYWJsZSIsIkZyb21Qb2ludCIsIkJhc2VQb2ludCIsIlRvUG9pbnQiLCJMaW5lQmFzZSIsIl9SZWFjdCRDb21wb25lbnQyIiwiX3RoaXMyIiwiX2xlbiIsImFyZ3MiLCJBcnJheSIsIl9rZXkiLCJjb25jYXQiLCJfdGhpczIkcHJvcHMiLCJnZXRNaWRkbGVPZlR3b1BvaW50cyIsIl9yZWY0IiwiZHJhZ2dlZEZyb20iLCJkcmFnZ2VkVG8iLCJfdGhpczIkcHJvcHMyIiwibGFiZWwiLCJ1cGRhdGVkIiwiX3RoaXMyJHByb3BzMyIsIm9uQ2hhbmdlUG9pbnQiLCJfdGhpczIkcHJvcHM0IiwiaXNFbXB0eSIsImRhdGEiLCJfdGhpczIkcHJvcHM1IiwiaW5wdXQiLCJmb2N1cyIsIl90aGlzMyIsIl90aGlzJHByb3BzNCIsImNvbW1vbiIsInNlbGVjdGVkVG9vbCIsImFuZ2xlIiwidHJpZyIsInRvRGVncmVlcyIsImZyb21MYWJlbE5vZGUiLCJ0b0xhYmVsTm9kZSIsImxpbmVMYWJlbE5vZGUiLCJoYXNPd25Qcm9wZXJ0eSIsIlJlYWN0RE9NIiwiY3JlYXRlUG9ydGFsIiwiaW5wdXRSZWYiLCJsYWJlbENoYW5nZSIsIl9leHRlbmRzMiIsIngiLCJvbkRyYWciLCJkcmFnQ29tcCIsImNsaWNrUG9pbnQiLCJkcmFnRnJvbSIsImRyYWdUbyIsIlByb3BUeXBlcyIsImJvb2wiLCJQb2ludFR5cGUiLCJmdW5jIiwic3RyaW5nIiwib2JqZWN0Iiwic3R5bGVzIiwibGluZSIsInN0cm9rZSIsImNvbG9yIiwiZGVmYXVsdHMiLCJCTEFDSyIsInN0cm9rZVdpZHRoIiwidHJhbnNpdGlvbiIsImRhc2hlZExpbmUiLCJzdHJva2VEYXNoYXJyYXkiLCJhcnJvdyIsIlNFQ09OREFSWSIsImRpc2FibGVkQXJyb3ciLCJjb3JyZWN0IiwidGhlbWUiLCJpbmNvcnJlY3QiLCJtaXNzaW5nIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3Rvb2xzL3NoYXJlZC9saW5lL2luZGV4LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IGlzRXF1YWwgZnJvbSAnbG9kYXNoL2lzRXF1YWwnO1xuaW1wb3J0IGNsb25lRGVlcCBmcm9tICdsb2Rhc2gvY2xvbmVEZWVwJztcbmltcG9ydCB7IEJhc2VQb2ludCB9IGZyb20gJy4uL3BvaW50JztcbmltcG9ydCB7IHR5cGVzLCB1dGlscywgZ3JpZERyYWdnYWJsZSwgdHJpZyB9IGZyb20gJ0BwaWUtbGliL3Bsb3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7IGRpc2FibGVkLCBjb3JyZWN0LCBpbmNvcnJlY3QsIG1pc3NpbmcgfSBmcm9tICcuLi9zdHlsZXMnO1xuaW1wb3J0IFJlYWN0RE9NIGZyb20gJ3JlYWN0LWRvbSc7XG5pbXBvcnQgTWFya0xhYmVsIGZyb20gJy4uLy4uLy4uL21hcmstbGFiZWwnO1xuaW1wb3J0IGlzRW1wdHkgZnJvbSAnbG9kYXNoL2lzRW1wdHknO1xuaW1wb3J0IHsgY29sb3IgfSBmcm9tICdAcGllLWxpYi9yZW5kZXItdWknO1xuaW1wb3J0IHsgZ2V0TWlkZGxlT2ZUd29Qb2ludHMsIGVxdWFsUG9pbnRzLCBzYW1lQXhlcyB9IGZyb20gJy4uLy4uLy4uL3V0aWxzJztcblxuZXhwb3J0IGNvbnN0IGxpbmVUb29sID0gKHR5cGUsIENvbXBvbmVudCkgPT4gKCkgPT4gKHtcbiAgdHlwZSxcbiAgQ29tcG9uZW50LFxuICBhZGRQb2ludDogKHBvaW50LCBtYXJrKSA9PiB7XG4gICAgaWYgKG1hcmsgJiYgZXF1YWxQb2ludHMobWFyay5yb290LCBwb2ludCkpIHtcbiAgICAgIHJldHVybiBtYXJrO1xuICAgIH1cblxuICAgIGlmICghbWFyaykge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZSxcbiAgICAgICAgYnVpbGRpbmc6IHRydWUsXG4gICAgICAgIGZyb206IHBvaW50LFxuICAgICAgfTtcbiAgICB9XG5cbiAgICBpZiAoZXF1YWxQb2ludHMocG9pbnQsIG1hcmsuZnJvbSkpIHtcbiAgICAgIHJldHVybiB7IC4uLm1hcmsgfTtcbiAgICB9XG5cbiAgICByZXR1cm4geyAuLi5tYXJrLCBidWlsZGluZzogZmFsc2UsIHRvOiBwb2ludCB9O1xuICB9LFxufSk7XG5cbmV4cG9ydCBjb25zdCBsaW5lVG9vbENvbXBvbmVudCA9IChDb21wb25lbnQpID0+IHtcbiAgcmV0dXJuIGNsYXNzIExpbmVUb29sQ29tcG9uZW50IGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgLi4udHlwZXMuVG9vbFByb3BUeXBlRmllbGRzLFxuICAgICAgZ3JhcGhQcm9wczogdHlwZXMuR3JhcGhQcm9wc1R5cGUuaXNSZXF1aXJlZCxcbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IocHJvcHMpIHtcbiAgICAgIHN1cGVyKHByb3BzKTtcbiAgICAgIHRoaXMuc3RhdGUgPSB7fTtcbiAgICB9XG5cbiAgICBzdGFydERyYWcgPSAoKSA9PiB0aGlzLnNldFN0YXRlKHsgbWFyazogeyAuLi50aGlzLnByb3BzLm1hcmsgfSB9KTtcblxuICAgIHN0b3BEcmFnID0gKCkgPT4ge1xuICAgICAgY29uc3QgeyBvbkNoYW5nZSwgbWFyayB9ID0gdGhpcy5wcm9wcztcbiAgICAgIGNvbnN0IHVwZGF0ZSA9IHsgLi4udGhpcy5zdGF0ZS5tYXJrIH07XG5cbiAgICAgIHRoaXMuc2V0U3RhdGUoeyBtYXJrOiB1bmRlZmluZWQgfSwgKCkgPT4ge1xuICAgICAgICBjb25zdCB7IHR5cGUgfSA9IHVwZGF0ZTtcbiAgICAgICAgbGV0IHNob3VsZE5vdENoYW5nZSA9XG4gICAgICAgICAgdHlwZSAmJlxuICAgICAgICAgICh0eXBlID09PSAncGFyYWJvbGEnIHx8IHR5cGUgPT09ICdzaW5lJyB8fCB0eXBlID09PSAnYWJzb2x1dGUnIHx8IHR5cGUgPT09ICdleHBvbmVudGlhbCcpICYmXG4gICAgICAgICAgc2FtZUF4ZXModXBkYXRlLmZyb20sIHVwZGF0ZS50byk7XG4gICAgICAgIGlmICghc2hvdWxkTm90Q2hhbmdlICYmIHR5cGUgJiYgdHlwZSA9PT0gJ2V4cG9uZW50aWFsJyAmJiB1cGRhdGUuZnJvbSAmJiB1cGRhdGUudG8pIHtcbiAgICAgICAgICBzaG91bGROb3RDaGFuZ2UgPSB1cGRhdGUuZnJvbS55ID09PSAwIHx8IHVwZGF0ZS50by55ID09PSAwIHx8IHVwZGF0ZS5mcm9tLnkgKiB1cGRhdGUudG8ueSA8IDA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFpc0VxdWFsKG1hcmssIHVwZGF0ZSkgJiYgIXNob3VsZE5vdENoYW5nZSkge1xuICAgICAgICAgIG9uQ2hhbmdlKG1hcmssIHVwZGF0ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH07XG5cbiAgICBjaGFuZ2VNYXJrID0gKHsgZnJvbSwgdG8sIG1pZGRsZSB9KSA9PiB7XG4gICAgICBsZXQgbWFyayA9IHsgLi4udGhpcy5zdGF0ZS5tYXJrLCBmcm9tLCB0byB9O1xuXG4gICAgICBpZiAobWlkZGxlKSB7XG4gICAgICAgIG1hcmsgPSB7IC4uLm1hcmssIG1pZGRsZSB9O1xuICAgICAgfVxuXG4gICAgICB0aGlzLnNldFN0YXRlKHsgbWFyayB9KTtcbiAgICB9O1xuXG4gICAgY2hhbmdlTWFya1Byb3BzID0gKHsgZnJvbSwgdG8sIG1pZGRsZSB9KSA9PiB7XG4gICAgICBjb25zdCB7IG9uQ2hhbmdlLCBtYXJrIH0gPSB0aGlzLnByb3BzO1xuICAgICAgbGV0IHVwZGF0ZSA9IHsgLi4ubWFyaywgLi4udGhpcy5zdGF0ZS5tYXJrIH07XG5cbiAgICAgIGlmIChmcm9tKSB7XG4gICAgICAgIHVwZGF0ZSA9IHsgLi4udXBkYXRlLCBmcm9tIH07XG4gICAgICB9XG5cbiAgICAgIGlmICh0bykge1xuICAgICAgICB1cGRhdGUgPSB7IC4uLnVwZGF0ZSwgdG8gfTtcbiAgICAgIH1cblxuICAgICAgaWYgKG1pZGRsZSkge1xuICAgICAgICB1cGRhdGUgPSB7IC4uLnVwZGF0ZSwgbWlkZGxlIH07XG4gICAgICB9XG5cbiAgICAgIGlmICghaXNFcXVhbChtYXJrLCB1cGRhdGUpKSB7XG4gICAgICAgIG9uQ2hhbmdlKG1hcmssIHVwZGF0ZSk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHsgZ3JhcGhQcm9wcywgb25DbGljaywgbGFiZWxOb2RlLCBsYWJlbE1vZGVFbmFibGVkLCBjb29yZGluYXRlc09uSG92ZXIsIGdzc0xpbmVEYXRhIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgbWFyayA9IHRoaXMuc3RhdGUubWFyayA/IHRoaXMuc3RhdGUubWFyayA6IHRoaXMucHJvcHMubWFyaztcblxuICAgICAgY29uc3QgZnJvbSA9IGNsb25lRGVlcChtYXJrLmZyb20pO1xuICAgICAgY29uc3QgdG8gPSBjbG9uZURlZXAobWFyay50byk7XG4gICAgICBjb25zdCBtaWRkbGUgPSBjbG9uZURlZXAobWFyay5taWRkbGUpO1xuXG4gICAgICAvLyBTRVQgRElTQUJMRURcbiAgICAgIC8vIGlmIGl0J3MgYSBiYWNrZ3JvdW5kIG1hcmssIHdlIG5lZWQgdG8gZm9yY2UgZGlzYWJsZSBpdFxuICAgICAgaWYgKGZyb20gJiYgbWFyay5pc0JhY2tncm91bmQpIHtcbiAgICAgICAgZnJvbS5kaXNhYmxlZCA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIGlmICh0byAmJiBtYXJrLmlzQmFja2dyb3VuZCkge1xuICAgICAgICB0by5kaXNhYmxlZCA9IHRydWU7XG4gICAgICB9XG5cbiAgICAgIGlmIChtaWRkbGUgJiYgbWFyay5pc0JhY2tncm91bmQpIHtcbiAgICAgICAgbWlkZGxlLmRpc2FibGVkID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIChcbiAgICAgICAgPENvbXBvbmVudFxuICAgICAgICAgIGRpc2FibGVkPXttYXJrLmRpc2FibGVkfVxuICAgICAgICAgIGNvb3JkaW5hdGVzT25Ib3Zlcj17Y29vcmRpbmF0ZXNPbkhvdmVyfVxuICAgICAgICAgIGNvcnJlY3RuZXNzPXttYXJrLmNvcnJlY3RuZXNzfVxuICAgICAgICAgIGZyb209e2Zyb219XG4gICAgICAgICAgdG89e3RvfVxuICAgICAgICAgIG1pZGRsZT17bWlkZGxlfVxuICAgICAgICAgIGdyYXBoUHJvcHM9e2dyYXBoUHJvcHN9XG4gICAgICAgICAgZmlsbD17bWFyayAmJiBtYXJrLmZpbGx9XG4gICAgICAgICAgZ3NzTGluZURhdGE9e2dzc0xpbmVEYXRhfVxuICAgICAgICAgIG9uQ2hhbmdlPXt0aGlzLmNoYW5nZU1hcmt9XG4gICAgICAgICAgY2hhbmdlTWFya1Byb3BzPXt0aGlzLmNoYW5nZU1hcmtQcm9wc31cbiAgICAgICAgICBvbkNsaWNrPXtvbkNsaWNrfVxuICAgICAgICAgIG9uRHJhZ1N0YXJ0PXt0aGlzLnN0YXJ0RHJhZ31cbiAgICAgICAgICBvbkRyYWdTdG9wPXt0aGlzLnN0b3BEcmFnfVxuICAgICAgICAgIGxhYmVsTm9kZT17bGFiZWxOb2RlfVxuICAgICAgICAgIGxhYmVsTW9kZUVuYWJsZWQ9e2xhYmVsTW9kZUVuYWJsZWR9XG4gICAgICAgIC8+XG4gICAgICApO1xuICAgIH1cbiAgfTtcbn07XG5cbmNvbnN0IGRyYWdPcHRzID0gKCkgPT4gKHtcbiAgYm91bmRzOiAocHJvcHMsIHsgZG9tYWluLCByYW5nZSB9KSA9PiB7XG4gICAgY29uc3QgYXJlYSA9IHV0aWxzLmxpbmVUb0FyZWEocHJvcHMuZnJvbSwgcHJvcHMudG8pO1xuICAgIHJldHVybiB1dGlscy5ib3VuZHMoYXJlYSwgZG9tYWluLCByYW5nZSk7XG4gIH0sXG4gIGFuY2hvclBvaW50OiAocHJvcHMpID0+IHtcbiAgICBjb25zdCB7IGZyb20gfSA9IHByb3BzO1xuICAgIHJldHVybiBmcm9tO1xuICB9LFxuICBmcm9tRGVsdGE6IChwcm9wcywgZGVsdGEpID0+IHtcbiAgICBjb25zdCB7IGZyb20sIHRvIH0gPSBwcm9wcztcbiAgICByZXR1cm4ge1xuICAgICAgZnJvbTogdXRpbHMucG9pbnQoZnJvbSkuYWRkKHV0aWxzLnBvaW50KGRlbHRhKSksXG4gICAgICB0bzogdXRpbHMucG9pbnQodG8pLmFkZCh1dGlscy5wb2ludChkZWx0YSkpLFxuICAgIH07XG4gIH0sXG59KTtcblxuZXhwb3J0IGNvbnN0IGxpbmVCYXNlID0gKENvbXAsIG9wdHMpID0+IHtcbiAgY29uc3QgRHJhZ2dhYmxlQ29tcCA9IGdyaWREcmFnZ2FibGUoZHJhZ09wdHMoKSkoQ29tcCk7XG5cbiAgY29uc3QgRnJvbVBvaW50ID0gb3B0cyAmJiBvcHRzLmZyb20gPyBvcHRzLmZyb20gOiBCYXNlUG9pbnQ7XG4gIGNvbnN0IFRvUG9pbnQgPSBvcHRzICYmIG9wdHMudG8gPyBvcHRzLnRvIDogQmFzZVBvaW50O1xuXG4gIGNsYXNzIExpbmVCYXNlIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50IHtcbiAgICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgICAgY29vcmRpbmF0ZXNPbkhvdmVyOiBQcm9wVHlwZXMuYm9vbCxcbiAgICAgIGdyYXBoUHJvcHM6IHR5cGVzLkdyYXBoUHJvcHNUeXBlLFxuICAgICAgZnJvbTogdHlwZXMuUG9pbnRUeXBlLFxuICAgICAgdG86IHR5cGVzLlBvaW50VHlwZSxcbiAgICAgIG1pZGRsZTogdHlwZXMuUG9pbnRUeXBlLFxuICAgICAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLFxuICAgICAgb25EcmFnU3RhcnQ6IFByb3BUeXBlcy5mdW5jLFxuICAgICAgb25EcmFnU3RvcDogUHJvcFR5cGVzLmZ1bmMsXG4gICAgICBvbkNsaWNrOiBQcm9wVHlwZXMuZnVuYyxcbiAgICAgIGNvcnJlY3RuZXNzOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgICAgZmlsbDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICAgIGdzc0xpbmVEYXRhOiBQcm9wVHlwZXMub2JqZWN0LFxuICAgICAgZGlzYWJsZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgICAgbGFiZWxOb2RlOiBQcm9wVHlwZXMub2JqZWN0LFxuICAgICAgbGFiZWxNb2RlRW5hYmxlZDogUHJvcFR5cGVzLmJvb2wsXG4gICAgICBjaGFuZ2VNYXJrUHJvcHM6IFByb3BUeXBlcy5mdW5jLFxuICAgIH07XG5cbiAgICBvbkNoYW5nZVBvaW50ID0gKHBvaW50KSA9PiB7XG4gICAgICBjb25zdCB7IG1pZGRsZSwgb25DaGFuZ2UgfSA9IHRoaXMucHJvcHM7XG4gICAgICBjb25zdCB7IGZyb20sIHRvIH0gPSBwb2ludDtcblxuICAgICAgLy8gYmVjYXVzZSBwb2ludC5mcm9tLmxhYmVsIGFuZCBwb2ludC50by5sYWJlbCBjYW4gYmUgZGlmZmVyZW50XG4gICAgICBpZiAoIWVxdWFsUG9pbnRzKGZyb20sIHRvKSkge1xuICAgICAgICBpZiAobWlkZGxlKSB7XG4gICAgICAgICAgcG9pbnQubWlkZGxlID0geyAuLi5taWRkbGUsIC4uLmdldE1pZGRsZU9mVHdvUG9pbnRzKGZyb20sIHRvKSB9O1xuICAgICAgICB9XG5cbiAgICAgICAgb25DaGFuZ2UocG9pbnQpO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBkcmFnQ29tcCA9ICh7IGZyb206IGRyYWdnZWRGcm9tLCB0bzogZHJhZ2dlZFRvIH0pID0+IHtcbiAgICAgIGNvbnN0IHsgZnJvbSwgdG8sIG9uQ2hhbmdlLCBtaWRkbGUgfSA9IHRoaXMucHJvcHM7XG5cbiAgICAgIGlmIChmcm9tLmxhYmVsKSB7XG4gICAgICAgIGRyYWdnZWRGcm9tLmxhYmVsID0gZnJvbS5sYWJlbDtcbiAgICAgIH1cblxuICAgICAgaWYgKHRvLmxhYmVsKSB7XG4gICAgICAgIGRyYWdnZWRUby5sYWJlbCA9IHRvLmxhYmVsO1xuICAgICAgfVxuXG4gICAgICBjb25zdCB1cGRhdGVkID0geyBmcm9tOiBkcmFnZ2VkRnJvbSwgdG86IGRyYWdnZWRUbyB9O1xuXG4gICAgICBpZiAobWlkZGxlKSB7XG4gICAgICAgIHVwZGF0ZWQubWlkZGxlID0geyAuLi5taWRkbGUsIC4uLmdldE1pZGRsZU9mVHdvUG9pbnRzKGRyYWdnZWRGcm9tLCBkcmFnZ2VkVG8pIH07XG4gICAgICB9XG5cbiAgICAgIG9uQ2hhbmdlKHVwZGF0ZWQpO1xuICAgIH07XG5cbiAgICBkcmFnRnJvbSA9IChkcmFnZ2VkRnJvbSkgPT4ge1xuICAgICAgY29uc3QgeyBmcm9tLCB0byB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKGZyb20ubGFiZWwpIHtcbiAgICAgICAgZHJhZ2dlZEZyb20ubGFiZWwgPSBmcm9tLmxhYmVsO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWVxdWFsUG9pbnRzKGRyYWdnZWRGcm9tLCB0bykpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZVBvaW50KHsgZnJvbTogZHJhZ2dlZEZyb20sIHRvOiB0byB9KTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgZHJhZ1RvID0gKGRyYWdnZWRUbykgPT4ge1xuICAgICAgY29uc3QgeyBmcm9tLCB0byB9ID0gdGhpcy5wcm9wcztcblxuICAgICAgaWYgKHRvLmxhYmVsKSB7XG4gICAgICAgIGRyYWdnZWRUby5sYWJlbCA9IHRvLmxhYmVsO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWVxdWFsUG9pbnRzKGZyb20sIGRyYWdnZWRUbykpIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZVBvaW50KHsgZnJvbTogZnJvbSwgdG86IGRyYWdnZWRUbyB9KTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgbGFiZWxDaGFuZ2UgPSAocG9pbnQsIHR5cGUpID0+IHtcbiAgICAgIGNvbnN0IHsgY2hhbmdlTWFya1Byb3BzIH0gPSB0aGlzLnByb3BzO1xuICAgICAgY29uc3QgdXBkYXRlID0geyAuLi5wb2ludCB9O1xuXG4gICAgICBpZiAoIXBvaW50LmxhYmVsIHx8IGlzRW1wdHkocG9pbnQubGFiZWwpKSB7XG4gICAgICAgIGRlbGV0ZSB1cGRhdGUubGFiZWw7XG4gICAgICB9XG5cbiAgICAgIGNoYW5nZU1hcmtQcm9wcyh7IFt0eXBlXTogdXBkYXRlIH0pO1xuICAgIH07XG5cbiAgICBjbGlja1BvaW50ID0gKHBvaW50LCB0eXBlLCBkYXRhKSA9PiB7XG4gICAgICBjb25zdCB7IGNoYW5nZU1hcmtQcm9wcywgZGlzYWJsZWQsIGZyb20sIHRvLCBsYWJlbE1vZGVFbmFibGVkLCBvbkNsaWNrIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgICBpZiAoIWxhYmVsTW9kZUVuYWJsZWQpIHtcbiAgICAgICAgb25DbGljayhwb2ludCB8fCBkYXRhKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBpZiAodHlwZSA9PT0gJ21pZGRsZScgJiYgIXBvaW50ICYmIGZyb20gJiYgdG8pIHtcbiAgICAgICAgcG9pbnQgPSB7IC4uLnBvaW50LCAuLi5nZXRNaWRkbGVPZlR3b1BvaW50cyhmcm9tLCB0bykgfTtcbiAgICAgIH1cblxuICAgICAgY2hhbmdlTWFya1Byb3BzKHsgZnJvbSwgdG8sIFt0eXBlXTogeyBsYWJlbDogJycsIC4uLnBvaW50IH0gfSk7XG5cbiAgICAgIGlmICh0aGlzLmlucHV0W3R5cGVdKSB7XG4gICAgICAgIHRoaXMuaW5wdXRbdHlwZV0uZm9jdXMoKTtcbiAgICAgIH1cbiAgICB9O1xuXG4gICAgLy8gSU1QT1JUQU5ULCBkbyBub3QgcmVtb3ZlXG4gICAgaW5wdXQgPSB7fTtcblxuICAgIHJlbmRlcigpIHtcbiAgICAgIGNvbnN0IHtcbiAgICAgICAgY29vcmRpbmF0ZXNPbkhvdmVyLFxuICAgICAgICBncmFwaFByb3BzLFxuICAgICAgICBmaWxsLFxuICAgICAgICBnc3NMaW5lRGF0YSxcbiAgICAgICAgb25EcmFnU3RhcnQsXG4gICAgICAgIG9uRHJhZ1N0b3AsXG4gICAgICAgIGZyb20sXG4gICAgICAgIHRvLFxuICAgICAgICBtaWRkbGUsXG4gICAgICAgIGRpc2FibGVkLFxuICAgICAgICBjb3JyZWN0bmVzcyxcbiAgICAgICAgb25DbGljayxcbiAgICAgICAgbGFiZWxOb2RlLFxuICAgICAgICBsYWJlbE1vZGVFbmFibGVkLFxuICAgICAgfSA9IHRoaXMucHJvcHM7XG4gICAgICBsZXQgY29tbW9uID0geyBncmFwaFByb3BzLCBmaWxsLCBvbkRyYWdTdGFydCwgb25EcmFnU3RvcCwgZGlzYWJsZWQsIGNvcnJlY3RuZXNzLCBvbkNsaWNrIH07XG4gICAgICBpZiAoZ3NzTGluZURhdGEgJiYgZ3NzTGluZURhdGEuc2VsZWN0ZWRUb29sID09PSAnc29sdXRpb25TZXQnKSB7XG4gICAgICAgIC8vcmVtb3ZpbmcgZHJhZ2dpbmcgb3B0aW9uIGZvciBsaW5lIGlmIHNvbHV0aW9uIHNldCBpcyBjbGlja2VkLlxuICAgICAgICBjb21tb24gPSB7IGdyYXBoUHJvcHMsIGZpbGwsIGRpc2FibGVkLCBjb3JyZWN0bmVzcywgb25DbGljayB9O1xuICAgICAgfVxuICAgICAgY29uc3QgYW5nbGUgPSB0byA/IHRyaWcudG9EZWdyZWVzKHRyaWcuYW5nbGUoZnJvbSwgdG8pKSA6IDA7XG5cbiAgICAgIGxldCBmcm9tTGFiZWxOb2RlID0gbnVsbDtcbiAgICAgIGxldCB0b0xhYmVsTm9kZSA9IG51bGw7XG4gICAgICBsZXQgbGluZUxhYmVsTm9kZSA9IG51bGw7XG5cbiAgICAgIGlmIChsYWJlbE5vZGUpIHtcbiAgICAgICAgaWYgKGZyb20gJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKGZyb20sICdsYWJlbCcpKSB7XG4gICAgICAgICAgZnJvbUxhYmVsTm9kZSA9IFJlYWN0RE9NLmNyZWF0ZVBvcnRhbChcbiAgICAgICAgICAgIDxNYXJrTGFiZWxcbiAgICAgICAgICAgICAgaW5wdXRSZWY9eyhyKSA9PiAodGhpcy5pbnB1dC5mcm9tID0gcil9XG4gICAgICAgICAgICAgIGRpc2FibGVkPXshbGFiZWxNb2RlRW5hYmxlZH1cbiAgICAgICAgICAgICAgbWFyaz17ZnJvbX1cbiAgICAgICAgICAgICAgZ3JhcGhQcm9wcz17Z3JhcGhQcm9wc31cbiAgICAgICAgICAgICAgb25DaGFuZ2U9eyhsYWJlbCkgPT4gdGhpcy5sYWJlbENoYW5nZSh7IC4uLmZyb20sIGxhYmVsIH0sICdmcm9tJyl9XG4gICAgICAgICAgICAvPixcbiAgICAgICAgICAgIGxhYmVsTm9kZSxcbiAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRvICYmIE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbCh0bywgJ2xhYmVsJykpIHtcbiAgICAgICAgICB0b0xhYmVsTm9kZSA9IFJlYWN0RE9NLmNyZWF0ZVBvcnRhbChcbiAgICAgICAgICAgIDxNYXJrTGFiZWxcbiAgICAgICAgICAgICAgaW5wdXRSZWY9eyhyKSA9PiAodGhpcy5pbnB1dC50byA9IHIpfVxuICAgICAgICAgICAgICBkaXNhYmxlZD17IWxhYmVsTW9kZUVuYWJsZWR9XG4gICAgICAgICAgICAgIG1hcms9e3RvfVxuICAgICAgICAgICAgICBncmFwaFByb3BzPXtncmFwaFByb3BzfVxuICAgICAgICAgICAgICBvbkNoYW5nZT17KGxhYmVsKSA9PiB0aGlzLmxhYmVsQ2hhbmdlKHsgLi4udG8sIGxhYmVsIH0sICd0bycpfVxuICAgICAgICAgICAgLz4sXG4gICAgICAgICAgICBsYWJlbE5vZGUsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChtaWRkbGUgJiYgT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKG1pZGRsZSwgJ2xhYmVsJykpIHtcbiAgICAgICAgICBsaW5lTGFiZWxOb2RlID0gUmVhY3RET00uY3JlYXRlUG9ydGFsKFxuICAgICAgICAgICAgPE1hcmtMYWJlbFxuICAgICAgICAgICAgICBpbnB1dFJlZj17KHIpID0+ICh0aGlzLmlucHV0Lm1pZGRsZSA9IHIpfVxuICAgICAgICAgICAgICBkaXNhYmxlZD17IWxhYmVsTW9kZUVuYWJsZWR9XG4gICAgICAgICAgICAgIG1hcms9e21pZGRsZX1cbiAgICAgICAgICAgICAgZ3JhcGhQcm9wcz17Z3JhcGhQcm9wc31cbiAgICAgICAgICAgICAgb25DaGFuZ2U9eyhsYWJlbCkgPT4gdGhpcy5sYWJlbENoYW5nZSh7IC4uLm1pZGRsZSwgbGFiZWwgfSwgJ21pZGRsZScpfVxuICAgICAgICAgICAgLz4sXG4gICAgICAgICAgICBsYWJlbE5vZGUsXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGdzc0xpbmVEYXRhICYmIGdzc0xpbmVEYXRhLnNlbGVjdGVkVG9vbCA9PT0gJ3NvbHV0aW9uU2V0Jykge1xuICAgICAgICAvL3JlbW92aW5nIGRyYWdnaW5nIGZlYXR1cmUgb2YgbGluZSBhbmQgcG9pbnQgaWYgc29sdXRpb24gc2V0IGlzIHRydWUuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPGc+XG4gICAgICAgICAgICB7dG8gJiYgPERyYWdnYWJsZUNvbXAgZnJvbT17ZnJvbX0gdG89e3RvfSBtaWRkbGU9e21pZGRsZX0gey4uLmNvbW1vbn0gLz59XG4gICAgICAgICAgICB7bGluZUxhYmVsTm9kZX1cblxuICAgICAgICAgICAgPEZyb21Qb2ludFxuICAgICAgICAgICAgICB4PXtmcm9tLnh9XG4gICAgICAgICAgICAgIHk9e2Zyb20ueX1cbiAgICAgICAgICAgICAgbGFiZWxOb2RlPXtsYWJlbE5vZGV9XG4gICAgICAgICAgICAgIGNvb3JkaW5hdGVzT25Ib3Zlcj17Y29vcmRpbmF0ZXNPbkhvdmVyfVxuICAgICAgICAgICAgICB7Li4uY29tbW9ufVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIHtmcm9tTGFiZWxOb2RlfVxuXG4gICAgICAgICAgICB7dG8gJiYgKFxuICAgICAgICAgICAgICA8VG9Qb2ludFxuICAgICAgICAgICAgICAgIHg9e3RvLnh9XG4gICAgICAgICAgICAgICAgeT17dG8ueX1cbiAgICAgICAgICAgICAgICBhbmdsZT17YW5nbGV9IC8vYW5nbGUgKyA0NX1cbiAgICAgICAgICAgICAgICBsYWJlbE5vZGU9e2xhYmVsTm9kZX1cbiAgICAgICAgICAgICAgICBjb29yZGluYXRlc09uSG92ZXI9e2Nvb3JkaW5hdGVzT25Ib3Zlcn1cbiAgICAgICAgICAgICAgICB7Li4uY29tbW9ufVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHt0b0xhYmVsTm9kZX1cbiAgICAgICAgICA8L2c+XG4gICAgICAgICk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxnPlxuICAgICAgICAgICAge3RvICYmIChcbiAgICAgICAgICAgICAgPERyYWdnYWJsZUNvbXBcbiAgICAgICAgICAgICAgICBmcm9tPXtmcm9tfVxuICAgICAgICAgICAgICAgIHRvPXt0b31cbiAgICAgICAgICAgICAgICBtaWRkbGU9e21pZGRsZX1cbiAgICAgICAgICAgICAgICBvbkRyYWc9e3RoaXMuZHJhZ0NvbXB9XG4gICAgICAgICAgICAgICAgey4uLmNvbW1vbn1cbiAgICAgICAgICAgICAgICBvbkNsaWNrPXsoZGF0YSkgPT4gdGhpcy5jbGlja1BvaW50KG1pZGRsZSwgJ21pZGRsZScsIGRhdGEpfVxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKX1cbiAgICAgICAgICAgIHtsaW5lTGFiZWxOb2RlfVxuXG4gICAgICAgICAgICA8RnJvbVBvaW50XG4gICAgICAgICAgICAgIHg9e2Zyb20ueH1cbiAgICAgICAgICAgICAgeT17ZnJvbS55fVxuICAgICAgICAgICAgICBsYWJlbE5vZGU9e2xhYmVsTm9kZX1cbiAgICAgICAgICAgICAgY29vcmRpbmF0ZXNPbkhvdmVyPXtjb29yZGluYXRlc09uSG92ZXJ9XG4gICAgICAgICAgICAgIG9uRHJhZz17dGhpcy5kcmFnRnJvbX1cbiAgICAgICAgICAgICAgey4uLmNvbW1vbn1cbiAgICAgICAgICAgICAgb25DbGljaz17KGRhdGEpID0+IHRoaXMuY2xpY2tQb2ludChmcm9tLCAnZnJvbScsIGRhdGEpfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIHtmcm9tTGFiZWxOb2RlfVxuXG4gICAgICAgICAgICB7dG8gJiYgKFxuICAgICAgICAgICAgICA8VG9Qb2ludFxuICAgICAgICAgICAgICAgIHg9e3RvLnh9XG4gICAgICAgICAgICAgICAgeT17dG8ueX1cbiAgICAgICAgICAgICAgICBhbmdsZT17YW5nbGV9IC8vYW5nbGUgKyA0NX1cbiAgICAgICAgICAgICAgICBsYWJlbE5vZGU9e2xhYmVsTm9kZX1cbiAgICAgICAgICAgICAgICBjb29yZGluYXRlc09uSG92ZXI9e2Nvb3JkaW5hdGVzT25Ib3Zlcn1cbiAgICAgICAgICAgICAgICBvbkRyYWc9e3RoaXMuZHJhZ1RvfVxuICAgICAgICAgICAgICAgIHsuLi5jb21tb259XG4gICAgICAgICAgICAgICAgb25DbGljaz17KGRhdGEpID0+IHRoaXMuY2xpY2tQb2ludCh0bywgJ3RvJywgZGF0YSl9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgICAge3RvTGFiZWxOb2RlfVxuICAgICAgICAgIDwvZz5cbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICByZXR1cm4gTGluZUJhc2U7XG59O1xuXG5leHBvcnQgY29uc3Qgc3R5bGVzID0ge1xuICBsaW5lOiAoKSA9PiAoe1xuICAgIGZpbGw6ICd0cmFuc3BhcmVudCcsXG4gICAgc3Ryb2tlOiBjb2xvci5kZWZhdWx0cy5CTEFDSyxcbiAgICBzdHJva2VXaWR0aDogNCxcbiAgICB0cmFuc2l0aW9uOiAnc3Ryb2tlIDIwMG1zIGVhc2UtaW4sIHN0cm9rZS13aWR0aCAyMDBtcyBlYXNlLWluJyxcbiAgICAnJjpob3Zlcic6IHtcbiAgICAgIHN0cm9rZVdpZHRoOiA2LFxuICAgICAgc3Ryb2tlOiBjb2xvci5kZWZhdWx0cy5CTEFDSyxcbiAgICB9LFxuICB9KSxcbiAgZGFzaGVkTGluZTogKCkgPT4gKHtcbiAgICBmaWxsOiAndHJhbnNwYXJlbnQnLFxuICAgIHN0cm9rZTogY29sb3IuZGVmYXVsdHMuQkxBQ0ssXG4gICAgc3Ryb2tlV2lkdGg6IDQsXG4gICAgdHJhbnNpdGlvbjogJ3N0cm9rZSAyMDBtcyBlYXNlLWluLCBzdHJva2Utd2lkdGggMjAwbXMgZWFzZS1pbicsXG4gICAgJyY6aG92ZXInOiB7XG4gICAgICBzdHJva2VXaWR0aDogNixcbiAgICAgIHN0cm9rZTogY29sb3IuZGVmYXVsdHMuQkxBQ0ssXG4gICAgfSxcbiAgICBzdHJva2VEYXNoYXJyYXk6ICczLDMnLFxuICB9KSxcbiAgYXJyb3c6ICgpID0+ICh7XG4gICAgZmlsbDogY29sb3IuZGVmYXVsdHMuU0VDT05EQVJZLFxuICB9KSxcbiAgZGlzYWJsZWRBcnJvdzogKCkgPT4gKHtcbiAgICAuLi5kaXNhYmxlZCgpLFxuICB9KSxcbiAgZGlzYWJsZWQ6ICgpID0+ICh7XG4gICAgLi4uZGlzYWJsZWQoJ3N0cm9rZScpLFxuICAgIHN0cm9rZVdpZHRoOiAyLFxuICB9KSxcbiAgY29ycmVjdDogKHRoZW1lLCBrZXkpID0+ICh7XG4gICAgLi4uY29ycmVjdChrZXkpLFxuICB9KSxcbiAgaW5jb3JyZWN0OiAodGhlbWUsIGtleSkgPT4gKHtcbiAgICAuLi5pbmNvcnJlY3Qoa2V5KSxcbiAgfSksXG4gIG1pc3Npbmc6ICh0aGVtZSwga2V5KSA9PiAoe1xuICAgIC4uLm1pc3Npbmcoa2V5KSxcbiAgfSksXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLFFBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLFVBQUEsR0FBQUgsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFHLE1BQUEsR0FBQUgsT0FBQTtBQUNBLElBQUFJLEtBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLFVBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFNLE9BQUEsR0FBQU4sT0FBQTtBQUNBLElBQUFPLFNBQUEsR0FBQVIsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFRLFVBQUEsR0FBQVQsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFTLFFBQUEsR0FBQVYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFVLFNBQUEsR0FBQVYsT0FBQTtBQUNBLElBQUFXLE1BQUEsR0FBQVgsT0FBQTtBQUE2RSxTQUFBWSxXQUFBQyxDQUFBLEVBQUFDLENBQUEsRUFBQUMsQ0FBQSxXQUFBRCxDQUFBLE9BQUFFLGdCQUFBLGFBQUFGLENBQUEsT0FBQUcsMkJBQUEsYUFBQUosQ0FBQSxFQUFBSyx5QkFBQSxLQUFBQyxPQUFBLENBQUFDLFNBQUEsQ0FBQU4sQ0FBQSxFQUFBQyxDQUFBLFlBQUFDLGdC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
554
+ //# sourceMappingURL=index.js.map