@pie-lib/editable-html 11.3.0-beta.0 → 11.3.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.
Files changed (76) hide show
  1. package/CHANGELOG.json +12 -3322
  2. package/CHANGELOG.md +120 -96
  3. package/package.json +7 -6
  4. package/src/editor.jsx +3 -3
  5. package/src/plugins/media/media-dialog.js +1 -1
  6. package/src/plugins/respArea/drag-in-the-blank/choice.jsx +1 -1
  7. package/src/plugins/toolbar/default-toolbar.jsx +6 -4
  8. package/src/plugins/toolbar/editor-and-toolbar.jsx +1 -1
  9. package/src/plugins/toolbar/toolbar.jsx +4 -4
  10. package/lib/__tests__/editor.test.js +0 -470
  11. package/lib/__tests__/serialization.test.js +0 -246
  12. package/lib/__tests__/utils.js +0 -106
  13. package/lib/block-tags.js +0 -25
  14. package/lib/constants.js +0 -16
  15. package/lib/editor.js +0 -1355
  16. package/lib/index.js +0 -269
  17. package/lib/parse-html.js +0 -16
  18. package/lib/plugins/characters/custom-popper.js +0 -73
  19. package/lib/plugins/characters/index.js +0 -305
  20. package/lib/plugins/characters/utils.js +0 -381
  21. package/lib/plugins/css/icons/index.js +0 -37
  22. package/lib/plugins/css/index.js +0 -397
  23. package/lib/plugins/customPlugin/index.js +0 -114
  24. package/lib/plugins/html/icons/index.js +0 -38
  25. package/lib/plugins/html/index.js +0 -80
  26. package/lib/plugins/image/__tests__/component.test.js +0 -51
  27. package/lib/plugins/image/__tests__/image-toolbar-logic.test.js +0 -56
  28. package/lib/plugins/image/__tests__/image-toolbar.test.js +0 -26
  29. package/lib/plugins/image/__tests__/index.test.js +0 -98
  30. package/lib/plugins/image/__tests__/insert-image-handler.test.js +0 -125
  31. package/lib/plugins/image/__tests__/mock-change.js +0 -25
  32. package/lib/plugins/image/alt-dialog.js +0 -129
  33. package/lib/plugins/image/component.js +0 -419
  34. package/lib/plugins/image/image-toolbar.js +0 -177
  35. package/lib/plugins/image/index.js +0 -263
  36. package/lib/plugins/image/insert-image-handler.js +0 -161
  37. package/lib/plugins/index.js +0 -402
  38. package/lib/plugins/list/__tests__/index.test.js +0 -79
  39. package/lib/plugins/list/index.js +0 -334
  40. package/lib/plugins/math/__tests__/index.test.js +0 -300
  41. package/lib/plugins/math/index.js +0 -454
  42. package/lib/plugins/media/__tests__/index.test.js +0 -71
  43. package/lib/plugins/media/index.js +0 -387
  44. package/lib/plugins/media/media-dialog.js +0 -709
  45. package/lib/plugins/media/media-toolbar.js +0 -101
  46. package/lib/plugins/media/media-wrapper.js +0 -93
  47. package/lib/plugins/rendering/index.js +0 -46
  48. package/lib/plugins/respArea/drag-in-the-blank/choice.js +0 -254
  49. package/lib/plugins/respArea/drag-in-the-blank/index.js +0 -97
  50. package/lib/plugins/respArea/explicit-constructed-response/index.js +0 -57
  51. package/lib/plugins/respArea/icons/index.js +0 -95
  52. package/lib/plugins/respArea/index.js +0 -341
  53. package/lib/plugins/respArea/inline-dropdown/index.js +0 -75
  54. package/lib/plugins/respArea/math-templated/index.js +0 -130
  55. package/lib/plugins/respArea/utils.js +0 -125
  56. package/lib/plugins/table/CustomTablePlugin.js +0 -133
  57. package/lib/plugins/table/__tests__/index.test.js +0 -442
  58. package/lib/plugins/table/__tests__/table-toolbar.test.js +0 -54
  59. package/lib/plugins/table/icons/index.js +0 -69
  60. package/lib/plugins/table/index.js +0 -483
  61. package/lib/plugins/table/table-toolbar.js +0 -187
  62. package/lib/plugins/textAlign/icons/index.js +0 -226
  63. package/lib/plugins/textAlign/index.js +0 -34
  64. package/lib/plugins/toolbar/__tests__/default-toolbar.test.js +0 -128
  65. package/lib/plugins/toolbar/__tests__/editor-and-toolbar.test.js +0 -51
  66. package/lib/plugins/toolbar/__tests__/toolbar-buttons.test.js +0 -54
  67. package/lib/plugins/toolbar/__tests__/toolbar.test.js +0 -120
  68. package/lib/plugins/toolbar/default-toolbar.js +0 -229
  69. package/lib/plugins/toolbar/done-button.js +0 -53
  70. package/lib/plugins/toolbar/editor-and-toolbar.js +0 -286
  71. package/lib/plugins/toolbar/index.js +0 -34
  72. package/lib/plugins/toolbar/toolbar-buttons.js +0 -194
  73. package/lib/plugins/toolbar/toolbar.js +0 -376
  74. package/lib/plugins/utils.js +0 -62
  75. package/lib/serialization.js +0 -677
  76. package/lib/theme.js +0 -9
@@ -1,57 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = void 0;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _react = _interopRequireDefault(require("react"));
13
-
14
- var _propTypes = _interopRequireDefault(require("prop-types"));
15
-
16
- var ExplicitConstructedResponse = function ExplicitConstructedResponse(props) {
17
- var attributes = props.attributes,
18
- value = props.value,
19
- error = props.error;
20
- return /*#__PURE__*/_react["default"].createElement("span", (0, _extends2["default"])({}, attributes, {
21
- style: {
22
- display: 'inline-flex',
23
- visibility: props.isFocused ? 'hidden' : 'visible',
24
- minHeight: '55px',
25
- minWidth: '178px',
26
- position: 'relative',
27
- cursor: 'pointer'
28
- }
29
- }), /*#__PURE__*/_react["default"].createElement("div", {
30
- style: {
31
- display: 'inline-flex',
32
- width: '100%',
33
- minHeight: '46px',
34
- height: '46px',
35
- backgroundColor: '#FFF',
36
- border: "1px solid ".concat(error ? 'red' : '#C0C3CF'),
37
- boxSizing: 'border-box',
38
- borderRadius: '4px',
39
- overflow: 'hidden',
40
- padding: '12px 21px',
41
- marginLeft: '4px'
42
- },
43
- dangerouslySetInnerHTML: {
44
- __html: value || '<div>&nbsp;</div>'
45
- }
46
- }));
47
- };
48
-
49
- ExplicitConstructedResponse.propTypes = {
50
- attributes: _propTypes["default"].object,
51
- error: _propTypes["default"].any,
52
- value: _propTypes["default"].string,
53
- isFocused: _propTypes["default"].bool
54
- };
55
- var _default = ExplicitConstructedResponse;
56
- exports["default"] = _default;
57
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wbHVnaW5zL3Jlc3BBcmVhL2V4cGxpY2l0LWNvbnN0cnVjdGVkLXJlc3BvbnNlL2luZGV4LmpzeCJdLCJuYW1lcyI6WyJFeHBsaWNpdENvbnN0cnVjdGVkUmVzcG9uc2UiLCJwcm9wcyIsImF0dHJpYnV0ZXMiLCJ2YWx1ZSIsImVycm9yIiwiZGlzcGxheSIsInZpc2liaWxpdHkiLCJpc0ZvY3VzZWQiLCJtaW5IZWlnaHQiLCJtaW5XaWR0aCIsInBvc2l0aW9uIiwiY3Vyc29yIiwid2lkdGgiLCJoZWlnaHQiLCJiYWNrZ3JvdW5kQ29sb3IiLCJib3JkZXIiLCJib3hTaXppbmciLCJib3JkZXJSYWRpdXMiLCJvdmVyZmxvdyIsInBhZGRpbmciLCJtYXJnaW5MZWZ0IiwiX19odG1sIiwicHJvcFR5cGVzIiwiUHJvcFR5cGVzIiwib2JqZWN0IiwiYW55Iiwic3RyaW5nIiwiYm9vbCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFFQSxJQUFNQSwyQkFBMkIsR0FBRyxTQUE5QkEsMkJBQThCLENBQUNDLEtBQUQsRUFBVztBQUM3QyxNQUFRQyxVQUFSLEdBQXFDRCxLQUFyQyxDQUFRQyxVQUFSO0FBQUEsTUFBb0JDLEtBQXBCLEdBQXFDRixLQUFyQyxDQUFvQkUsS0FBcEI7QUFBQSxNQUEyQkMsS0FBM0IsR0FBcUNILEtBQXJDLENBQTJCRyxLQUEzQjtBQUVBLHNCQUNFLHNFQUNNRixVQUROO0FBRUUsSUFBQSxLQUFLLEVBQUU7QUFDTEcsTUFBQUEsT0FBTyxFQUFFLGFBREo7QUFFTEMsTUFBQUEsVUFBVSxFQUFFTCxLQUFLLENBQUNNLFNBQU4sR0FBa0IsUUFBbEIsR0FBNkIsU0FGcEM7QUFHTEMsTUFBQUEsU0FBUyxFQUFFLE1BSE47QUFJTEMsTUFBQUEsUUFBUSxFQUFFLE9BSkw7QUFLTEMsTUFBQUEsUUFBUSxFQUFFLFVBTEw7QUFNTEMsTUFBQUEsTUFBTSxFQUFFO0FBTkg7QUFGVCxtQkFXRTtBQUNFLElBQUEsS0FBSyxFQUFFO0FBQ0xOLE1BQUFBLE9BQU8sRUFBRSxhQURKO0FBRUxPLE1BQUFBLEtBQUssRUFBRSxNQUZGO0FBR0xKLE1BQUFBLFNBQVMsRUFBRSxNQUhOO0FBSUxLLE1BQUFBLE1BQU0sRUFBRSxNQUpIO0FBS0xDLE1BQUFBLGVBQWUsRUFBRSxNQUxaO0FBTUxDLE1BQUFBLE1BQU0sc0JBQWVYLEtBQUssR0FBRyxLQUFILEdBQVcsU0FBL0IsQ0FORDtBQU9MWSxNQUFBQSxTQUFTLEVBQUUsWUFQTjtBQVFMQyxNQUFBQSxZQUFZLEVBQUUsS0FSVDtBQVNMQyxNQUFBQSxRQUFRLEVBQUUsUUFUTDtBQVVMQyxNQUFBQSxPQUFPLEVBQUUsV0FWSjtBQVdMQyxNQUFBQSxVQUFVLEVBQUU7QUFYUCxLQURUO0FBY0UsSUFBQSx1QkFBdUIsRUFBRTtBQUN2QkMsTUFBQUEsTUFBTSxFQUFFbEIsS0FBSyxJQUFJO0FBRE07QUFkM0IsSUFYRixDQURGO0FBZ0NELENBbkNEOztBQXFDQUgsMkJBQTJCLENBQUNzQixTQUE1QixHQUF3QztBQUN0Q3BCLEVBQUFBLFVBQVUsRUFBRXFCLHNCQUFVQyxNQURnQjtBQUV0Q3BCLEVBQUFBLEtBQUssRUFBRW1CLHNCQUFVRSxHQUZxQjtBQUd0Q3RCLEVBQUFBLEtBQUssRUFBRW9CLHNCQUFVRyxNQUhxQjtBQUl0Q25CLEVBQUFBLFNBQVMsRUFBRWdCLHNCQUFVSTtBQUppQixDQUF4QztlQU9lM0IsMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcblxuY29uc3QgRXhwbGljaXRDb25zdHJ1Y3RlZFJlc3BvbnNlID0gKHByb3BzKSA9PiB7XG4gIGNvbnN0IHsgYXR0cmlidXRlcywgdmFsdWUsIGVycm9yIH0gPSBwcm9wcztcblxuICByZXR1cm4gKFxuICAgIDxzcGFuXG4gICAgICB7Li4uYXR0cmlidXRlc31cbiAgICAgIHN0eWxlPXt7XG4gICAgICAgIGRpc3BsYXk6ICdpbmxpbmUtZmxleCcsXG4gICAgICAgIHZpc2liaWxpdHk6IHByb3BzLmlzRm9jdXNlZCA/ICdoaWRkZW4nIDogJ3Zpc2libGUnLFxuICAgICAgICBtaW5IZWlnaHQ6ICc1NXB4JyxcbiAgICAgICAgbWluV2lkdGg6ICcxNzhweCcsXG4gICAgICAgIHBvc2l0aW9uOiAncmVsYXRpdmUnLFxuICAgICAgICBjdXJzb3I6ICdwb2ludGVyJyxcbiAgICAgIH19XG4gICAgPlxuICAgICAgPGRpdlxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGRpc3BsYXk6ICdpbmxpbmUtZmxleCcsXG4gICAgICAgICAgd2lkdGg6ICcxMDAlJyxcbiAgICAgICAgICBtaW5IZWlnaHQ6ICc0NnB4JyxcbiAgICAgICAgICBoZWlnaHQ6ICc0NnB4JyxcbiAgICAgICAgICBiYWNrZ3JvdW5kQ29sb3I6ICcjRkZGJyxcbiAgICAgICAgICBib3JkZXI6IGAxcHggc29saWQgJHtlcnJvciA/ICdyZWQnIDogJyNDMEMzQ0YnfWAsXG4gICAgICAgICAgYm94U2l6aW5nOiAnYm9yZGVyLWJveCcsXG4gICAgICAgICAgYm9yZGVyUmFkaXVzOiAnNHB4JyxcbiAgICAgICAgICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gICAgICAgICAgcGFkZGluZzogJzEycHggMjFweCcsXG4gICAgICAgICAgbWFyZ2luTGVmdDogJzRweCcsXG4gICAgICAgIH19XG4gICAgICAgIGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MPXt7XG4gICAgICAgICAgX19odG1sOiB2YWx1ZSB8fCAnPGRpdj4mbmJzcDs8L2Rpdj4nLFxuICAgICAgICB9fVxuICAgICAgLz5cbiAgICA8L3NwYW4+XG4gICk7XG59O1xuXG5FeHBsaWNpdENvbnN0cnVjdGVkUmVzcG9uc2UucHJvcFR5cGVzID0ge1xuICBhdHRyaWJ1dGVzOiBQcm9wVHlwZXMub2JqZWN0LFxuICBlcnJvcjogUHJvcFR5cGVzLmFueSxcbiAgdmFsdWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gIGlzRm9jdXNlZDogUHJvcFR5cGVzLmJvb2wsXG59O1xuXG5leHBvcnQgZGVmYXVsdCBFeHBsaWNpdENvbnN0cnVjdGVkUmVzcG9uc2U7XG4iXX0=
@@ -1,95 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.ToolbarIcon = exports.GripIcon = exports.Chevron = void 0;
9
-
10
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
- var _react = _interopRequireDefault(require("react"));
13
-
14
- var _propTypes = _interopRequireDefault(require("prop-types"));
15
-
16
- var _ChevronRight = _interopRequireDefault(require("@material-ui/icons/ChevronRight"));
17
-
18
- var _MoreVert = _interopRequireDefault(require("@material-ui/icons/MoreVert"));
19
-
20
- var _styles = require("@material-ui/core/styles");
21
-
22
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
23
-
24
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
25
-
26
- var getRotate = function getRotate(direction) {
27
- switch (direction) {
28
- case 'down':
29
- return 90;
30
-
31
- case 'up':
32
- return -90;
33
-
34
- case 'left':
35
- return 180;
36
-
37
- default:
38
- return 0;
39
- }
40
- };
41
-
42
- var Chevron = function Chevron(props) {
43
- var direction = props.direction,
44
- style = props.style;
45
- var rotate = getRotate(direction);
46
- return /*#__PURE__*/_react["default"].createElement(_ChevronRight["default"], {
47
- style: _objectSpread({
48
- transform: "rotate(".concat(rotate, "deg)")
49
- }, style)
50
- });
51
- };
52
-
53
- exports.Chevron = Chevron;
54
- Chevron.propTypes = {
55
- direction: _propTypes["default"].string,
56
- style: _propTypes["default"].object
57
- };
58
-
59
- var GripIcon = function GripIcon(_ref) {
60
- var style = _ref.style;
61
- return /*#__PURE__*/_react["default"].createElement("span", {
62
- style: style
63
- }, /*#__PURE__*/_react["default"].createElement(_MoreVert["default"], {
64
- style: {
65
- margin: '0 -16px'
66
- }
67
- }), /*#__PURE__*/_react["default"].createElement(_MoreVert["default"], null));
68
- };
69
-
70
- exports.GripIcon = GripIcon;
71
- GripIcon.propTypes = {
72
- style: _propTypes["default"].object
73
- };
74
- var ToolbarIcon = (0, _styles.withStyles)(function (theme) {
75
- return {
76
- icon: {
77
- fontFamily: 'Cerebri Sans !important',
78
- fontSize: theme.typography.fontSize,
79
- fontWeight: 'bold',
80
- lineHeight: '14px',
81
- position: 'relative',
82
- top: '7px',
83
- width: '110px',
84
- height: '28px',
85
- whiteSpace: 'nowrap'
86
- }
87
- };
88
- })(function (_ref2) {
89
- var classes = _ref2.classes;
90
- return /*#__PURE__*/_react["default"].createElement("div", {
91
- className: classes.icon
92
- }, "+ Response Area");
93
- });
94
- exports.ToolbarIcon = ToolbarIcon;
95
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wbHVnaW5zL3Jlc3BBcmVhL2ljb25zL2luZGV4LmpzeCJdLCJuYW1lcyI6WyJnZXRSb3RhdGUiLCJkaXJlY3Rpb24iLCJDaGV2cm9uIiwicHJvcHMiLCJzdHlsZSIsInJvdGF0ZSIsInRyYW5zZm9ybSIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsInN0cmluZyIsIm9iamVjdCIsIkdyaXBJY29uIiwibWFyZ2luIiwiVG9vbGJhckljb24iLCJ0aGVtZSIsImljb24iLCJmb250RmFtaWx5IiwiZm9udFNpemUiLCJ0eXBvZ3JhcGh5IiwiZm9udFdlaWdodCIsImxpbmVIZWlnaHQiLCJwb3NpdGlvbiIsInRvcCIsIndpZHRoIiwiaGVpZ2h0Iiwid2hpdGVTcGFjZSIsImNsYXNzZXMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7Ozs7OztBQUVBLElBQU1BLFNBQVMsR0FBRyxTQUFaQSxTQUFZLENBQUNDLFNBQUQsRUFBZTtBQUMvQixVQUFRQSxTQUFSO0FBQ0UsU0FBSyxNQUFMO0FBQ0UsYUFBTyxFQUFQOztBQUVGLFNBQUssSUFBTDtBQUNFLGFBQU8sQ0FBQyxFQUFSOztBQUVGLFNBQUssTUFBTDtBQUNFLGFBQU8sR0FBUDs7QUFFRjtBQUNFLGFBQU8sQ0FBUDtBQVhKO0FBYUQsQ0FkRDs7QUFnQk8sSUFBTUMsT0FBTyxHQUFHLFNBQVZBLE9BQVUsQ0FBQ0MsS0FBRCxFQUFXO0FBQ2hDLE1BQVFGLFNBQVIsR0FBNkJFLEtBQTdCLENBQVFGLFNBQVI7QUFBQSxNQUFtQkcsS0FBbkIsR0FBNkJELEtBQTdCLENBQW1CQyxLQUFuQjtBQUNBLE1BQU1DLE1BQU0sR0FBR0wsU0FBUyxDQUFDQyxTQUFELENBQXhCO0FBRUEsc0JBQ0UsZ0NBQUMsd0JBQUQ7QUFDRSxJQUFBLEtBQUs7QUFDSEssTUFBQUEsU0FBUyxtQkFBWUQsTUFBWjtBQUROLE9BRUFELEtBRkE7QUFEUCxJQURGO0FBUUQsQ0FaTTs7O0FBY1BGLE9BQU8sQ0FBQ0ssU0FBUixHQUFvQjtBQUNsQk4sRUFBQUEsU0FBUyxFQUFFTyxzQkFBVUMsTUFESDtBQUVsQkwsRUFBQUEsS0FBSyxFQUFFSSxzQkFBVUU7QUFGQyxDQUFwQjs7QUFLTyxJQUFNQyxRQUFRLEdBQUcsU0FBWEEsUUFBVyxPQUFlO0FBQUEsTUFBWlAsS0FBWSxRQUFaQSxLQUFZO0FBQ3JDLHNCQUNFO0FBQU0sSUFBQSxLQUFLLEVBQUVBO0FBQWIsa0JBQ0UsZ0NBQUMsb0JBQUQ7QUFDRSxJQUFBLEtBQUssRUFBRTtBQUNMUSxNQUFBQSxNQUFNLEVBQUU7QUFESDtBQURULElBREYsZUFNRSxnQ0FBQyxvQkFBRCxPQU5GLENBREY7QUFVRCxDQVhNOzs7QUFhUEQsUUFBUSxDQUFDSixTQUFULEdBQXFCO0FBQ25CSCxFQUFBQSxLQUFLLEVBQUVJLHNCQUFVRTtBQURFLENBQXJCO0FBSU8sSUFBTUcsV0FBVyxHQUFHLHdCQUFXLFVBQUNDLEtBQUQ7QUFBQSxTQUFZO0FBQ2hEQyxJQUFBQSxJQUFJLEVBQUU7QUFDSkMsTUFBQUEsVUFBVSxFQUFFLHlCQURSO0FBRUpDLE1BQUFBLFFBQVEsRUFBRUgsS0FBSyxDQUFDSSxVQUFOLENBQWlCRCxRQUZ2QjtBQUdKRSxNQUFBQSxVQUFVLEVBQUUsTUFIUjtBQUlKQyxNQUFBQSxVQUFVLEVBQUUsTUFKUjtBQUtKQyxNQUFBQSxRQUFRLEVBQUUsVUFMTjtBQU1KQyxNQUFBQSxHQUFHLEVBQUUsS0FORDtBQU9KQyxNQUFBQSxLQUFLLEVBQUUsT0FQSDtBQVFKQyxNQUFBQSxNQUFNLEVBQUUsTUFSSjtBQVNKQyxNQUFBQSxVQUFVLEVBQUU7QUFUUjtBQUQwQyxHQUFaO0FBQUEsQ0FBWCxFQVl2QjtBQUFBLE1BQUdDLE9BQUgsU0FBR0EsT0FBSDtBQUFBLHNCQUFpQjtBQUFLLElBQUEsU0FBUyxFQUFFQSxPQUFPLENBQUNYO0FBQXhCLHVCQUFqQjtBQUFBLENBWnVCLENBQXBCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgQ2hldnJvblJpZ2h0IGZyb20gJ0BtYXRlcmlhbC11aS9pY29ucy9DaGV2cm9uUmlnaHQnO1xuaW1wb3J0IE1vcmVWZXJ0IGZyb20gJ0BtYXRlcmlhbC11aS9pY29ucy9Nb3JlVmVydCc7XG5pbXBvcnQgeyB3aXRoU3R5bGVzIH0gZnJvbSAnQG1hdGVyaWFsLXVpL2NvcmUvc3R5bGVzJztcblxuY29uc3QgZ2V0Um90YXRlID0gKGRpcmVjdGlvbikgPT4ge1xuICBzd2l0Y2ggKGRpcmVjdGlvbikge1xuICAgIGNhc2UgJ2Rvd24nOlxuICAgICAgcmV0dXJuIDkwO1xuXG4gICAgY2FzZSAndXAnOlxuICAgICAgcmV0dXJuIC05MDtcblxuICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgcmV0dXJuIDE4MDtcblxuICAgIGRlZmF1bHQ6XG4gICAgICByZXR1cm4gMDtcbiAgfVxufTtcblxuZXhwb3J0IGNvbnN0IENoZXZyb24gPSAocHJvcHMpID0+IHtcbiAgY29uc3QgeyBkaXJlY3Rpb24sIHN0eWxlIH0gPSBwcm9wcztcbiAgY29uc3Qgcm90YXRlID0gZ2V0Um90YXRlKGRpcmVjdGlvbik7XG5cbiAgcmV0dXJuIChcbiAgICA8Q2hldnJvblJpZ2h0XG4gICAgICBzdHlsZT17e1xuICAgICAgICB0cmFuc2Zvcm06IGByb3RhdGUoJHtyb3RhdGV9ZGVnKWAsXG4gICAgICAgIC4uLnN0eWxlLFxuICAgICAgfX1cbiAgICAvPlxuICApO1xufTtcblxuQ2hldnJvbi5wcm9wVHlwZXMgPSB7XG4gIGRpcmVjdGlvbjogUHJvcFR5cGVzLnN0cmluZyxcbiAgc3R5bGU6IFByb3BUeXBlcy5vYmplY3QsXG59O1xuXG5leHBvcnQgY29uc3QgR3JpcEljb24gPSAoeyBzdHlsZSB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPHNwYW4gc3R5bGU9e3N0eWxlfT5cbiAgICAgIDxNb3JlVmVydFxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIG1hcmdpbjogJzAgLTE2cHgnLFxuICAgICAgICB9fVxuICAgICAgLz5cbiAgICAgIDxNb3JlVmVydCAvPlxuICAgIDwvc3Bhbj5cbiAgKTtcbn07XG5cbkdyaXBJY29uLnByb3BUeXBlcyA9IHtcbiAgc3R5bGU6IFByb3BUeXBlcy5vYmplY3QsXG59O1xuXG5leHBvcnQgY29uc3QgVG9vbGJhckljb24gPSB3aXRoU3R5bGVzKCh0aGVtZSkgPT4gKHtcbiAgaWNvbjoge1xuICAgIGZvbnRGYW1pbHk6ICdDZXJlYnJpIFNhbnMgIWltcG9ydGFudCcsXG4gICAgZm9udFNpemU6IHRoZW1lLnR5cG9ncmFwaHkuZm9udFNpemUsXG4gICAgZm9udFdlaWdodDogJ2JvbGQnLFxuICAgIGxpbmVIZWlnaHQ6ICcxNHB4JyxcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcbiAgICB0b3A6ICc3cHgnLFxuICAgIHdpZHRoOiAnMTEwcHgnLFxuICAgIGhlaWdodDogJzI4cHgnLFxuICAgIHdoaXRlU3BhY2U6ICdub3dyYXAnLFxuICB9LFxufSkpKCh7IGNsYXNzZXMgfSkgPT4gPGRpdiBjbGFzc05hbWU9e2NsYXNzZXMuaWNvbn0+KyBSZXNwb25zZSBBcmVhPC9kaXY+KTtcbiJdfQ==
@@ -1,341 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = ResponseAreaPlugin;
9
- exports.serialization = void 0;
10
-
11
- var _react = _interopRequireDefault(require("react"));
12
-
13
- var _debug = _interopRequireDefault(require("debug"));
14
-
15
- var _isUndefined = _interopRequireDefault(require("lodash/isUndefined"));
16
-
17
- var _inlineDropdown = _interopRequireDefault(require("./inline-dropdown"));
18
-
19
- var _dragInTheBlank = _interopRequireDefault(require("./drag-in-the-blank"));
20
-
21
- var _explicitConstructedResponse = _interopRequireDefault(require("./explicit-constructed-response"));
22
-
23
- var _mathTemplated = _interopRequireDefault(require("./math-templated"));
24
-
25
- var _utils = require("./utils");
26
-
27
- var _icons = require("./icons");
28
-
29
- var log = (0, _debug["default"])('@pie-lib:editable-html:plugins:respArea');
30
- var lastIndexMap = {};
31
- var elTypesMap = {
32
- 'inline-dropdown': 'inline_dropdown',
33
- 'explicit-constructed-response': 'explicit_constructed_response',
34
- 'math-templated': 'math_templated',
35
- 'drag-in-the-blank': 'drag_in_the_blank'
36
- };
37
- var elTypesArray = Object.values(elTypesMap);
38
-
39
- function ResponseAreaPlugin(opts) {
40
- var isOfCurrentType = function isOfCurrentType(d) {
41
- return d.type === opts.type || d.type === elTypesMap[opts.type];
42
- };
43
-
44
- var toolbar = {
45
- icon: /*#__PURE__*/_react["default"].createElement(_icons.ToolbarIcon, null),
46
- buttonStyles: {
47
- margin: '0 20px 0 auto'
48
- },
49
- onClick: function onClick(value, onChange) {
50
- log('[toolbar] onClick');
51
- var change = value.change();
52
- var currentRespAreaList = change.value.document.filterDescendants(isOfCurrentType);
53
-
54
- if (currentRespAreaList.size >= opts.maxResponseAreas) {
55
- return;
56
- }
57
-
58
- var type = opts.type.replace(/-/g, '_');
59
- var prevIndex = lastIndexMap[type];
60
- var newIndex = prevIndex === 0 ? prevIndex : prevIndex + 1;
61
- var newInline = (0, _utils.getDefaultElement)(opts, newIndex);
62
- lastIndexMap[type] += 1;
63
-
64
- if (newInline) {
65
- if (change.value.selection.startKey || change.value.selection.endKey) {
66
- change.insertInline(newInline);
67
- } else {
68
- // If the markup is empty and there's no focus
69
- var lastText = value.document.getLastText();
70
-
71
- if (!lastText) {
72
- return;
73
- }
74
-
75
- var parentNode = value.document.getParent(lastText.key);
76
-
77
- if (parentNode) {
78
- var index = parentNode.nodes.indexOf(lastText.key);
79
- if (parentNode.isVoid) return;
80
- change.insertNodeByKey(parentNode.key, index + 1, newInline);
81
- }
82
- }
83
-
84
- if (newInline.type === 'drag_in_the_blank') {
85
- var nextText = change.value.document.getNextText(newInline.key);
86
-
87
- if (nextText) {
88
- change.moveFocusTo(nextText.key, 0).moveAnchorTo(nextText.key, 0);
89
- }
90
- }
91
-
92
- if (newInline.type === 'math_templated') {
93
- var _nextText = change.value.document.getNextText(newInline.key);
94
-
95
- if (_nextText) {
96
- change.moveFocusTo(_nextText.key, 0).moveAnchorTo(_nextText.key, 0);
97
- }
98
- }
99
-
100
- onChange(change);
101
- }
102
- },
103
- customToolbar: opts.respAreaToolbar,
104
- supports: function supports(node) {
105
- return node.object === 'inline' && elTypesArray.indexOf(node.type) >= 0;
106
- },
107
- showDone: false
108
- };
109
- return {
110
- name: 'response_area',
111
- toolbar: toolbar,
112
- filterPlugins: function filterPlugins(node, plugins) {
113
- if (node.type === 'explicit_constructed_response' || node.type === 'math_templated' || node.type === 'drag_in_the_blank') {
114
- return [];
115
- }
116
-
117
- return plugins.filter(function (p) {
118
- return p.name !== 'response_area';
119
- });
120
- },
121
- deleteNode: function deleteNode(e, node, value, onChange) {
122
- e.preventDefault();
123
- var change = value.change().removeNodeByKey(node.key);
124
- onChange(change);
125
- },
126
- renderNode: function renderNode(props) {
127
- var attributes = props.attributes,
128
- n = props.node,
129
- isFocused = props.isFocused;
130
-
131
- if (n.type === 'explicit_constructed_response') {
132
- var data = n.data.toJSON();
133
- var error;
134
-
135
- if (opts.error) {
136
- error = opts.error();
137
- }
138
-
139
- return /*#__PURE__*/_react["default"].createElement(_explicitConstructedResponse["default"], {
140
- attributes: attributes,
141
- isFocused: isFocused,
142
- value: data.value,
143
- error: error && error[data.index] && error[data.index][0]
144
- });
145
- }
146
-
147
- if (n.type === 'math_templated') {
148
- var _data = n.data.toJSON();
149
-
150
- var _error;
151
-
152
- if (opts.error) {
153
- _error = opts.error();
154
- } // add 1 to index to display R 1 instead of R 0
155
-
156
-
157
- var keyToDisplay = "R ".concat(parseInt(_data.index) + 1);
158
- return /*#__PURE__*/_react["default"].createElement(_mathTemplated["default"], {
159
- attributes: attributes,
160
- keyToDisplay: keyToDisplay,
161
- value: _data.value || '',
162
- error: _error && _error[_data.index] && _error[_data.index][0]
163
- });
164
- }
165
-
166
- if (n.type === 'drag_in_the_blank') {
167
- var _data2 = n.data.toJSON();
168
-
169
- return /*#__PURE__*/_react["default"].createElement(_dragInTheBlank["default"], {
170
- attributes: attributes,
171
- data: _data2,
172
- n: n,
173
- nodeProps: props,
174
- opts: opts
175
- });
176
- }
177
-
178
- if (n.type === 'inline_dropdown') {
179
- var _data3 = n.data.toJSON();
180
-
181
- return /*#__PURE__*/_react["default"].createElement(_inlineDropdown["default"], {
182
- attributes: attributes,
183
- selectedItem: _data3.value
184
- });
185
- }
186
- },
187
- onChange: function onChange(change, editor) {
188
- var type = opts.type.replace(/-/g, '_');
189
-
190
- if ((0, _isUndefined["default"])(lastIndexMap[type])) {
191
- lastIndexMap[type] = 0;
192
- change.value.document.forEachDescendant(function (d) {
193
- if (d.type === type) {
194
- var newIndex = parseInt(d.data.get('index'), 10);
195
-
196
- if (newIndex > lastIndexMap[type]) {
197
- lastIndexMap[type] = newIndex;
198
- }
199
- }
200
- });
201
- }
202
-
203
- if (!editor.value) {
204
- return;
205
- }
206
-
207
- var currentRespAreaList = change.value.document.filterDescendants(isOfCurrentType);
208
- var oldRespAreaList = editor.value.document.filterDescendants(isOfCurrentType);
209
- toolbar.disabled = currentRespAreaList.size >= opts.maxResponseAreas;
210
- var arrayToFilter = oldRespAreaList.size > currentRespAreaList.size ? oldRespAreaList : currentRespAreaList;
211
- var arrayToUseForFilter = arrayToFilter === oldRespAreaList ? currentRespAreaList : oldRespAreaList;
212
- var elementsWithChangedStatus = arrayToFilter.filter(function (d) {
213
- return !arrayToUseForFilter.find(function (e) {
214
- return e.data.get('index') === d.data.get('index');
215
- });
216
- });
217
-
218
- if (elementsWithChangedStatus.size && oldRespAreaList.size > currentRespAreaList.size) {
219
- opts.onHandleAreaChange(elementsWithChangedStatus);
220
- }
221
- },
222
- onDrop: function onDrop(event, change, editor) {
223
- var closestEl = event.target.closest('[data-key]');
224
- var inline = editor.value.document.findDescendant(function (d) {
225
- return d.key === closestEl.dataset.key;
226
- });
227
-
228
- if (inline.type === 'drag_in_the_blank') {
229
- return false;
230
- }
231
- }
232
- };
233
- }
234
-
235
- var serialization = {
236
- deserialize: function deserialize(el) {
237
- var type = el.dataset && el.dataset.type;
238
-
239
- switch (type) {
240
- case 'inline_dropdown':
241
- return {
242
- object: 'inline',
243
- type: 'inline_dropdown',
244
- isVoid: true,
245
- data: {
246
- index: el.dataset.index,
247
- value: el.dataset.value
248
- }
249
- };
250
-
251
- case 'explicit_constructed_response':
252
- return {
253
- object: 'inline',
254
- type: 'explicit_constructed_response',
255
- isVoid: true,
256
- data: {
257
- index: el.dataset.index,
258
- value: el.dataset.value
259
- }
260
- };
261
-
262
- case 'math_templated':
263
- return {
264
- object: 'inline',
265
- type: 'math_templated',
266
- isVoid: true,
267
- data: {
268
- index: el.dataset.index,
269
- value: el.dataset.value
270
- }
271
- };
272
-
273
- case 'drag_in_the_blank':
274
- return {
275
- object: 'inline',
276
- type: 'drag_in_the_blank',
277
- isVoid: true,
278
- data: {
279
- index: el.dataset.index,
280
- id: el.dataset.id,
281
- value: el.dataset.value,
282
- inTable: el.dataset.inTable
283
- }
284
- };
285
- }
286
- },
287
- serialize: function serialize(object) {
288
- if (object.object !== 'inline') {
289
- return;
290
- }
291
-
292
- switch (object.type) {
293
- case 'inline_dropdown':
294
- {
295
- var data = object.data.toJSON();
296
- return /*#__PURE__*/_react["default"].createElement("span", {
297
- "data-type": "inline_dropdown",
298
- "data-index": data.index,
299
- "data-value": data.value
300
- });
301
- }
302
-
303
- case 'explicit_constructed_response':
304
- {
305
- var _data4 = object.data.toJSON();
306
-
307
- return /*#__PURE__*/_react["default"].createElement("span", {
308
- "data-type": "explicit_constructed_response",
309
- "data-index": _data4.index,
310
- "data-value": _data4.value
311
- });
312
- }
313
-
314
- case 'math_templated':
315
- {
316
- var _data5 = object.data.toJSON();
317
-
318
- return /*#__PURE__*/_react["default"].createElement("span", {
319
- "data-type": "math_templated",
320
- "data-index": _data5.index,
321
- "data-value": _data5.value
322
- });
323
- }
324
-
325
- case 'drag_in_the_blank':
326
- {
327
- var _data6 = object.data.toJSON();
328
-
329
- return /*#__PURE__*/_react["default"].createElement("span", {
330
- "data-type": "drag_in_the_blank",
331
- "data-index": _data6.index,
332
- "data-id": _data6.id,
333
- "data-value": _data6.value,
334
- "data-in-table": _data6.inTable
335
- });
336
- }
337
- }
338
- }
339
- };
340
- exports.serialization = serialization;
341
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wbHVnaW5zL3Jlc3BBcmVhL2luZGV4LmpzeCJdLCJuYW1lcyI6WyJsb2ciLCJsYXN0SW5kZXhNYXAiLCJlbFR5cGVzTWFwIiwiZWxUeXBlc0FycmF5IiwiT2JqZWN0IiwidmFsdWVzIiwiUmVzcG9uc2VBcmVhUGx1Z2luIiwib3B0cyIsImlzT2ZDdXJyZW50VHlwZSIsImQiLCJ0eXBlIiwidG9vbGJhciIsImljb24iLCJidXR0b25TdHlsZXMiLCJtYXJnaW4iLCJvbkNsaWNrIiwidmFsdWUiLCJvbkNoYW5nZSIsImNoYW5nZSIsImN1cnJlbnRSZXNwQXJlYUxpc3QiLCJkb2N1bWVudCIsImZpbHRlckRlc2NlbmRhbnRzIiwic2l6ZSIsIm1heFJlc3BvbnNlQXJlYXMiLCJyZXBsYWNlIiwicHJldkluZGV4IiwibmV3SW5kZXgiLCJuZXdJbmxpbmUiLCJzZWxlY3Rpb24iLCJzdGFydEtleSIsImVuZEtleSIsImluc2VydElubGluZSIsImxhc3RUZXh0IiwiZ2V0TGFzdFRleHQiLCJwYXJlbnROb2RlIiwiZ2V0UGFyZW50Iiwia2V5IiwiaW5kZXgiLCJub2RlcyIsImluZGV4T2YiLCJpc1ZvaWQiLCJpbnNlcnROb2RlQnlLZXkiLCJuZXh0VGV4dCIsImdldE5leHRUZXh0IiwibW92ZUZvY3VzVG8iLCJtb3ZlQW5jaG9yVG8iLCJjdXN0b21Ub29sYmFyIiwicmVzcEFyZWFUb29sYmFyIiwic3VwcG9ydHMiLCJub2RlIiwib2JqZWN0Iiwic2hvd0RvbmUiLCJuYW1lIiwiZmlsdGVyUGx1Z2lucyIsInBsdWdpbnMiLCJmaWx0ZXIiLCJwIiwiZGVsZXRlTm9kZSIsImUiLCJwcmV2ZW50RGVmYXVsdCIsInJlbW92ZU5vZGVCeUtleSIsInJlbmRlck5vZGUiLCJwcm9wcyIsImF0dHJpYnV0ZXMiLCJuIiwiaXNGb2N1c2VkIiwiZGF0YSIsInRvSlNPTiIsImVycm9yIiwia2V5VG9EaXNwbGF5IiwicGFyc2VJbnQiLCJlZGl0b3IiLCJmb3JFYWNoRGVzY2VuZGFudCIsImdldCIsIm9sZFJlc3BBcmVhTGlzdCIsImRpc2FibGVkIiwiYXJyYXlUb0ZpbHRlciIsImFycmF5VG9Vc2VGb3JGaWx0ZXIiLCJlbGVtZW50c1dpdGhDaGFuZ2VkU3RhdHVzIiwiZmluZCIsIm9uSGFuZGxlQXJlYUNoYW5nZSIsIm9uRHJvcCIsImV2ZW50IiwiY2xvc2VzdEVsIiwidGFyZ2V0IiwiY2xvc2VzdCIsImlubGluZSIsImZpbmREZXNjZW5kYW50IiwiZGF0YXNldCIsInNlcmlhbGl6YXRpb24iLCJkZXNlcmlhbGl6ZSIsImVsIiwiaWQiLCJpblRhYmxlIiwic2VyaWFsaXplIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUEsSUFBTUEsR0FBRyxHQUFHLHVCQUFNLHlDQUFOLENBQVo7QUFFQSxJQUFNQyxZQUFZLEdBQUcsRUFBckI7QUFDQSxJQUFNQyxVQUFVLEdBQUc7QUFDakIscUJBQW1CLGlCQURGO0FBRWpCLG1DQUFpQywrQkFGaEI7QUFHakIsb0JBQWtCLGdCQUhEO0FBSWpCLHVCQUFxQjtBQUpKLENBQW5CO0FBTUEsSUFBTUMsWUFBWSxHQUFHQyxNQUFNLENBQUNDLE1BQVAsQ0FBY0gsVUFBZCxDQUFyQjs7QUFFZSxTQUFTSSxrQkFBVCxDQUE0QkMsSUFBNUIsRUFBa0M7QUFDL0MsTUFBTUMsZUFBZSxHQUFHLFNBQWxCQSxlQUFrQixDQUFDQyxDQUFEO0FBQUEsV0FBT0EsQ0FBQyxDQUFDQyxJQUFGLEtBQVdILElBQUksQ0FBQ0csSUFBaEIsSUFBd0JELENBQUMsQ0FBQ0MsSUFBRixLQUFXUixVQUFVLENBQUNLLElBQUksQ0FBQ0csSUFBTixDQUFwRDtBQUFBLEdBQXhCOztBQUVBLE1BQU1DLE9BQU8sR0FBRztBQUNkQyxJQUFBQSxJQUFJLGVBQUUsZ0NBQUMsa0JBQUQsT0FEUTtBQUVkQyxJQUFBQSxZQUFZLEVBQUU7QUFDWkMsTUFBQUEsTUFBTSxFQUFFO0FB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LENBQUNsRDtBQUExRSxZQUFQO0FBQ0Q7O0FBQ0QsV0FBSyxtQkFBTDtBQUEwQjtBQUN4QixjQUFNa0QsTUFBSSxHQUFHaEIsTUFBTSxDQUFDZ0IsSUFBUCxDQUFZQyxNQUFaLEVBQWI7O0FBRUEsOEJBQ0U7QUFDRSx5QkFBVSxtQkFEWjtBQUVFLDBCQUFZRCxNQUFJLENBQUM3QixLQUZuQjtBQUdFLHVCQUFTNkIsTUFBSSxDQUFDMEIsRUFIaEI7QUFJRSwwQkFBWTFCLE1BQUksQ0FBQ2xELEtBSm5CO0FBS0UsNkJBQWVrRCxNQUFJLENBQUMyQjtBQUx0QixZQURGO0FBU0Q7QUE1Qkg7QUE4QkQ7QUFwRjBCLENBQXRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBkZWJ1ZyBmcm9tICdkZWJ1Zyc7XG5pbXBvcnQgaXNVbmRlZmluZWQgZnJvbSAnbG9kYXNoL2lzVW5kZWZpbmVkJztcblxuaW1wb3J0IElubGluZURyb3Bkb3duIGZyb20gJy4vaW5saW5lLWRyb3Bkb3duJztcbmltcG9ydCBEcmFnSW5UaGVCbGFuayBmcm9tICcuL2RyYWctaW4tdGhlLWJsYW5rJztcbmltcG9ydCBFeHBsaWNpdENvbnN0cnVjdGVkUmVzcG9uc2UgZnJvbSAnLi9leHBsaWNpdC1jb25zdHJ1Y3RlZC1yZXNwb25zZSc7XG5pbXBvcnQgTWF0aFRlbXBsYXRlZCBmcm9tICcuL21hdGgtdGVtcGxhdGVkJztcbmltcG9ydCB7IGdldERlZmF1bHRFbGVtZW50IH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBUb29sYmFySWNvbiB9IGZyb20gJy4vaWNvbnMnO1xuXG5jb25zdCBsb2cgPSBkZWJ1ZygnQHBpZS1saWI6ZWRpdGFibGUtaHRtbDpwbHVnaW5zOnJlc3BBcmVhJyk7XG5cbmNvbnN0IGxhc3RJbmRleE1hcCA9IHt9O1xuY29uc3QgZWxUeXBlc01hcCA9IHtcbiAgJ2lubGluZS1kcm9wZG93bic6ICdpbmxpbmVfZHJvcGRvd24nLFxuICAnZXhwbGljaXQtY29uc3RydWN0ZWQtcmVzcG9uc2UnOiAnZXhwbGljaXRfY29uc3RydWN0ZWRfcmVzcG9uc2UnLFxuICAnbWF0aC10ZW1wbGF0ZWQnOiAnbWF0aF90ZW1wbGF0ZWQnLFxuICAnZHJhZy1pbi10aGUtYmxhbmsnOiAnZHJhZ19pbl90aGVfYmxhbmsnLFxufTtcbmNvbnN0IGVsVHlwZXNBcnJheSA9IE9iamVjdC52YWx1ZXMoZWxUeXBlc01hcCk7XG5cbmV4cG9ydCBkZWZhdWx0IGZ1bmN0aW9uIFJlc3BvbnNlQXJlYVBsdWdpbihvcHRzKSB7XG4gIGNvbnN0IGlzT2ZDdXJyZW50VHlwZSA9IChkKSA9PiBkLnR5cGUgPT09IG9wdHMudHlwZSB8fCBkLnR5cGUgPT09IGVsVHlwZXNNYXBbb3B0cy50eXBlXTtcblxuICBjb25zdCB0b29sYmFyID0ge1xuICAgIGljb246IDxUb29sYmFySWNvbiAvPixcbiAgICBidXR0b25TdHlsZXM6IHtcbiAgICAgIG1hcmdpbjogJzAgMjBweCAwIGF1dG8nLFxuICAgIH0sXG4gICAgb25DbGljazogKHZhbHVlLCBvbkNoYW5nZSkgPT4ge1xuICAgICAgbG9nKCdbdG9vbGJhcl0gb25DbGljaycpO1xuICAgICAgY29uc3QgY2hhbmdlID0gdmFsdWUuY2hhbmdlKCk7XG4gICAgICBjb25zdCBjdXJyZW50UmVzcEFyZWFMaXN0ID0gY2hhbmdlLnZhbHVlLmRvY3VtZW50LmZpbHRlckRlc2NlbmRhbnRzKGlzT2ZDdXJyZW50VHlwZSk7XG5cbiAgICAgIGlmIChjdXJyZW50UmVzcEFyZWFMaXN0LnNpemUgPj0gb3B0cy5tYXhSZXNwb25zZUFyZWFzKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgdHlwZSA9IG9wdHMudHlwZS5yZXBsYWNlKC8tL2csICdfJyk7XG4gICAgICBjb25zdCBwcmV2SW5kZXggPSBsYXN0SW5kZXhNYXBbdHlwZV07XG4gICAgICBjb25zdCBuZXdJbmRleCA9IHByZXZJbmRleCA9PT0gMCA/IHByZXZJbmRleCA6IHByZXZJbmRleCArIDE7XG4gICAgICBjb25zdCBuZXdJbmxpbmUgPSBnZXREZWZhdWx0RWxlbWVudChvcHRzLCBuZXdJbmRleCk7XG5cbiAgICAgIGxhc3RJbmRleE1hcFt0eXBlXSArPSAxO1xuXG4gICAgICBpZiAobmV3SW5saW5lKSB7XG4gICAgICAgIGlmIChjaGFuZ2UudmFsdWUuc2VsZWN0aW9uLnN0YXJ0S2V5IHx8IGNoYW5nZS52YWx1ZS5zZWxlY3Rpb24uZW5kS2V5KSB7XG4gICAgICAgICAgY2hhbmdlLmluc2VydElubGluZShuZXdJbmxpbmUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIElmIHRoZSBtYXJrdXAgaXMgZW1wdHkgYW5kIHRoZXJlJ3Mgbm8gZm9jdXNcbiAgICAgICAgICBjb25zdCBsYXN0VGV4dCA9IHZhbHVlLmRvY3VtZW50LmdldExhc3RUZXh0KCk7XG5cbiAgICAgICAgICBpZiAoIWxhc3RUZXh0KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnN0IHBhcmVudE5vZGUgPSB2YWx1ZS5kb2N1bWVudC5nZXRQYXJlbnQobGFzdFRleHQua2V5KTtcblxuICAgICAgICAgIGlmIChwYXJlbnROb2RlKSB7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IHBhcmVudE5vZGUubm9kZXMuaW5kZXhPZihsYXN0VGV4dC5rZXkpO1xuXG4gICAgICAgICAgICBpZiAocGFyZW50Tm9kZS5pc1ZvaWQpIHJldHVybjtcblxuICAgICAgICAgICAgY2hhbmdlLmluc2VydE5vZGVCeUtleShwYXJlbnROb2RlLmtleSwgaW5kZXggKyAxLCBuZXdJbmxpbmUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChuZXdJbmxpbmUudHlwZSA9PT0gJ2RyYWdfaW5fdGhlX2JsYW5rJykge1xuICAgICAgICAgIGNvbnN0IG5leHRUZXh0ID0gY2hhbmdlLnZhbHVlLmRvY3VtZW50LmdldE5leHRUZXh0KG5ld0lubGluZS5rZXkpO1xuXG4gICAgICAgICAgaWYgKG5leHRUZXh0KSB7XG4gICAgICAgICAgICBjaGFuZ2UubW92ZUZvY3VzVG8obmV4dFRleHQua2V5LCAwKS5tb3ZlQW5jaG9yVG8obmV4dFRleHQua2V5LCAwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKG5ld0lubGluZS50eXBlID09PSAnbWF0aF90ZW1wbGF0ZWQnKSB7XG4gICAgICAgICAgY29uc3QgbmV4dFRleHQgPSBjaGFuZ2UudmFsdWUuZG9jdW1lbnQuZ2V0TmV4dFRleHQobmV3SW5saW5lLmtleSk7XG5cbiAgICAgICAgICBpZiAobmV4dFRleHQpIHtcbiAgICAgICAgICAgIGNoYW5nZS5tb3ZlRm9jdXNUbyhuZXh0VGV4dC5rZXksIDApLm1vdmVBbmNob3JUbyhuZXh0VGV4dC5rZXksIDApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIG9uQ2hhbmdlKGNoYW5nZSk7XG4gICAgICB9XG4gICAgfSxcbiAgICBjdXN0b21Ub29sYmFyOiBvcHRzLnJlc3BBcmVhVG9vbGJhcixcbiAgICBzdXBwb3J0czogKG5vZGUpID0+IG5vZGUub2JqZWN0ID09PSAnaW5saW5lJyAmJiBlbFR5cGVzQXJyYXkuaW5kZXhPZihub2RlLnR5cGUpID49IDAsXG4gICAgc2hvd0RvbmU6IGZhbHNlLFxuICB9O1xuXG4gIHJldHVybiB7XG4gICAgbmFtZTogJ3Jlc3BvbnNlX2FyZWEnLFxuICAgIHRvb2xiYXIsXG4gICAgZmlsdGVyUGx1Z2luczogKG5vZGUsIHBsdWdpbnMpID0+IHtcbiAgICAgIGlmIChcbiAgICAgICAgbm9kZS50eXBlID09PSAnZXhwbGljaXRfY29uc3RydWN0ZWRfcmVzcG9uc2UnIHx8XG4gICAgICAgIG5vZGUudHlwZSA9PT0gJ21hdGhfdGVtcGxhdGVkJyB8fFxuICAgICAgICBub2RlLnR5cGUgPT09ICdkcmFnX2luX3RoZV9ibGFuaydcbiAgICAgICkge1xuICAgICAgICByZXR1cm4gW107XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBwbHVnaW5zLmZpbHRlcigocCkgPT4gcC5uYW1lICE9PSAncmVzcG9uc2VfYXJlYScpO1xuICAgIH0sXG4gICAgZGVsZXRlTm9kZTogKGUsIG5vZGUsIHZhbHVlLCBvbkNoYW5nZSkgPT4ge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICBjb25zdCBjaGFuZ2UgPSB2YWx1ZS5jaGFuZ2UoKS5yZW1vdmVOb2RlQnlLZXkobm9kZS5rZXkpO1xuXG4gICAgICBvbkNoYW5nZShjaGFuZ2UpO1xuICAgIH0sXG4gICAgcmVuZGVyTm9kZShwcm9wcykge1xuICAgICAgY29uc3QgeyBhdHRyaWJ1dGVzLCBub2RlOiBuLCBpc0ZvY3VzZWQgfSA9IHByb3BzO1xuXG4gICAgICBpZiAobi50eXBlID09PSAnZXhwbGljaXRfY29uc3RydWN0ZWRfcmVzcG9uc2UnKSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBuLmRhdGEudG9KU09OKCk7XG4gICAgICAgIGxldCBlcnJvcjtcblxuICAgICAgICBpZiAob3B0cy5lcnJvcikge1xuICAgICAgICAgIGVycm9yID0gb3B0cy5lcnJvcigpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICA8RXhwbGljaXRDb25zdHJ1Y3RlZFJlc3BvbnNlXG4gICAgICAgICAgICBhdHRyaWJ1dGVzPXthdHRyaWJ1dGVzfVxuICAgICAgICAgICAgaXNGb2N1c2VkPXtpc0ZvY3VzZWR9XG4gICAgICAgICAgICB2YWx1ZT17ZGF0YS52YWx1ZX1cbiAgICAgICAgICAgIGVycm9yPXtlcnJvciAmJiBlcnJvcltkYXRhLmluZGV4XSAmJiBlcnJvcltkYXRhLmluZGV4XVswXX1cbiAgICAgICAgICAvPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBpZiAobi50eXBlID09PSAnbWF0aF90ZW1wbGF0ZWQnKSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBuLmRhdGEudG9KU09OKCk7XG4gICAgICAgIGxldCBlcnJvcjtcblxuICAgICAgICBpZiAob3B0cy5lcnJvcikge1xuICAgICAgICAgIGVycm9yID0gb3B0cy5lcnJvcigpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gYWRkIDEgdG8gaW5kZXggdG8gZGlzcGxheSBSIDEgaW5zdGVhZCBvZiBSIDBcbiAgICAgICAgY29uc3Qga2V5VG9EaXNwbGF5ID0gYFIgJHtwYXJzZUludChkYXRhLmluZGV4KSArIDF9YDtcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgIDxNYXRoVGVtcGxhdGVkXG4gICAgICAgICAgICBhdHRyaWJ1dGVzPXthdHRyaWJ1dGVzfVxuICAgICAgICAgICAga2V5VG9EaXNwbGF5PXtrZXlUb0Rpc3BsYXl9XG4gICAgICAgICAgICB2YWx1ZT17ZGF0YS52YWx1ZSB8fCAnJ31cbiAgICAgICAgICAgIGVycm9yPXtlcnJvciAmJiBlcnJvcltkYXRhLmluZGV4XSAmJiBlcnJvcltkYXRhLmluZGV4XVswXX1cbiAgICAgICAgICAvPlxuICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBpZiAobi50eXBlID09PSAnZHJhZ19pbl90aGVfYmxhbmsnKSB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBuLmRhdGEudG9KU09OKCk7XG5cbiAgICAgICAgcmV0dXJuIDxEcmFnSW5UaGVCbGFuayBhdHRyaWJ1dGVzPXthdHRyaWJ1dGVzfSBkYXRhPXtkYXRhfSBuPXtufSBub2RlUHJvcHM9e3Byb3BzfSBvcHRzPXtvcHRzfSAvPjtcbiAgICAgIH1cblxuICAgICAgaWYgKG4udHlwZSA9PT0gJ2lubGluZV9kcm9wZG93bicpIHtcbiAgICAgICAgY29uc3QgZGF0YSA9IG4uZGF0YS50b0pTT04oKTtcblxuICAgICAgICByZXR1cm4gPElubGluZURyb3Bkb3duIGF0dHJpYnV0ZXM9e2F0dHJpYnV0ZXN9IHNlbGVjdGVkSXRlbT17ZGF0YS52YWx1ZX0gLz47XG4gICAgICB9XG4gICAgfSxcbiAgICBvbkNoYW5nZShjaGFuZ2UsIGVkaXRvcikge1xuICAgICAgY29uc3QgdHlwZSA9IG9wdHMudHlwZS5yZXBsYWNlKC8tL2csICdfJyk7XG5cbiAgICAgIGlmIChpc1VuZGVmaW5lZChsYXN0SW5kZXhNYXBbdHlwZV0pKSB7XG4gICAgICAgIGxhc3RJbmRleE1hcFt0eXBlXSA9IDA7XG5cbiAgICAgICAgY2hhbmdlLnZhbHVlLmRvY3VtZW50LmZvckVhY2hEZXNjZW5kYW50KChkKSA9PiB7XG4gICAgICAgICAgaWYgKGQudHlwZSA9PT0gdHlwZSkge1xuICAgICAgICAgICAgY29uc3QgbmV3SW5kZXggPSBwYXJzZUludChkLmRhdGEuZ2V0KCdpbmRleCcpLCAxMCk7XG5cbiAgICAgICAgICAgIGlmIChuZXdJbmRleCA+IGxhc3RJbmRleE1hcFt0eXBlXSkge1xuICAgICAgICAgICAgICBsYXN0SW5kZXhNYXBbdHlwZV0gPSBuZXdJbmRleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICBpZiAoIWVkaXRvci52YWx1ZSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGN1cnJlbnRSZXNwQXJlYUxpc3QgPSBjaGFuZ2UudmFsdWUuZG9jdW1lbnQuZmlsdGVyRGVzY2VuZGFudHMoaXNPZkN1cnJlbnRUeXBlKTtcbiAgICAgIGNvbnN0IG9sZFJlc3BBcmVhTGlzdCA9IGVkaXRvci52YWx1ZS5kb2N1bWVudC5maWx0ZXJEZXNjZW5kYW50cyhpc09mQ3VycmVudFR5cGUpO1xuXG4gICAgICB0b29sYmFyLmRpc2FibGVkID0gY3VycmVudFJlc3BBcmVhTGlzdC5zaXplID49IG9wdHMubWF4UmVzcG9uc2VBcmVhcztcblxuICAgICAgY29uc3QgYXJyYXlUb0ZpbHRlciA9IG9sZFJlc3BBcmVhTGlzdC5zaXplID4gY3VycmVudFJlc3BBcmVhTGlzdC5zaXplID8gb2xkUmVzcEFyZWFMaXN0IDogY3VycmVudFJlc3BBcmVhTGlzdDtcbiAgICAgIGNvbnN0IGFycmF5VG9Vc2VGb3JGaWx0ZXIgPSBhcnJheVRvRmlsdGVyID09PSBvbGRSZXNwQXJlYUxpc3QgPyBjdXJyZW50UmVzcEFyZWFMaXN0IDogb2xkUmVzcEFyZWFMaXN0O1xuXG4gICAgICBjb25zdCBlbGVtZW50c1dpdGhDaGFuZ2VkU3RhdHVzID0gYXJyYXlUb0ZpbHRlci5maWx0ZXIoXG4gICAgICAgIChkKSA9PiAhYXJyYXlUb1VzZUZvckZpbHRlci5maW5kKChlKSA9PiBlLmRhdGEuZ2V0KCdpbmRleCcpID09PSBkLmRhdGEuZ2V0KCdpbmRleCcpKSxcbiAgICAgICk7XG5cbiAgICAgIGlmIChlbGVtZW50c1dpdGhDaGFuZ2VkU3RhdHVzLnNpemUgJiYgb2xkUmVzcEFyZWFMaXN0LnNpemUgPiBjdXJyZW50UmVzcEFyZWFMaXN0LnNpemUpIHtcbiAgICAgICAgb3B0cy5vbkhhbmRsZUFyZWFDaGFuZ2UoZWxlbWVudHNXaXRoQ2hhbmdlZFN0YXR1cyk7XG4gICAgICB9XG4gICAgfSxcbiAgICBvbkRyb3AoZXZlbnQsIGNoYW5nZSwgZWRpdG9yKSB7XG4gICAgICBjb25zdCBjbG9zZXN0RWwgPSBldmVudC50YXJnZXQuY2xvc2VzdCgnW2RhdGEta2V5XScpO1xuICAgICAgY29uc3QgaW5saW5lID0gZWRpdG9yLnZhbHVlLmRvY3VtZW50LmZpbmREZXNjZW5kYW50KChkKSA9PiBkLmtleSA9PT0gY2xvc2VzdEVsLmRhdGFzZXQua2V5KTtcblxuICAgICAgaWYgKGlubGluZS50eXBlID09PSAnZHJhZ19pbl90aGVfYmxhbmsnKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9LFxuICB9O1xufVxuXG5leHBvcnQgY29uc3Qgc2VyaWFsaXphdGlvbiA9IHtcbiAgZGVzZXJpYWxpemUoZWwpIHtcbiAgICBjb25zdCB0eXBlID0gZWwuZGF0YXNldCAmJiBlbC5kYXRhc2V0LnR5cGU7XG5cbiAgICBzd2l0Y2ggKHR5cGUpIHtcbiAgICAgIGNhc2UgJ2lubGluZV9kcm9wZG93bic6XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgb2JqZWN0OiAnaW5saW5lJyxcbiAgICAgICAgICB0eXBlOiAnaW5saW5lX2Ryb3Bkb3duJyxcbiAgICAgICAgICBpc1ZvaWQ6IHRydWUsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgaW5kZXg6IGVsLmRhdGFzZXQuaW5kZXgsXG4gICAgICAgICAgICB2YWx1ZTogZWwuZGF0YXNldC52YWx1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgY2FzZSAnZXhwbGljaXRfY29uc3RydWN0ZWRfcmVzcG9uc2UnOlxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG9iamVjdDogJ2lubGluZScsXG4gICAgICAgICAgdHlwZTogJ2V4cGxpY2l0X2NvbnN0cnVjdGVkX3Jlc3BvbnNlJyxcbiAgICAgICAgICBpc1ZvaWQ6IHRydWUsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgaW5kZXg6IGVsLmRhdGFzZXQuaW5kZXgsXG4gICAgICAgICAgICB2YWx1ZTogZWwuZGF0YXNldC52YWx1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgY2FzZSAnbWF0aF90ZW1wbGF0ZWQnOlxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG9iamVjdDogJ2lubGluZScsXG4gICAgICAgICAgdHlwZTogJ21hdGhfdGVtcGxhdGVkJyxcbiAgICAgICAgICBpc1ZvaWQ6IHRydWUsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgaW5kZXg6IGVsLmRhdGFzZXQuaW5kZXgsXG4gICAgICAgICAgICB2YWx1ZTogZWwuZGF0YXNldC52YWx1ZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgY2FzZSAnZHJhZ19pbl90aGVfYmxhbmsnOlxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIG9iamVjdDogJ2lubGluZScsXG4gICAgICAgICAgdHlwZTogJ2RyYWdfaW5fdGhlX2JsYW5rJyxcbiAgICAgICAgICBpc1ZvaWQ6IHRydWUsXG4gICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgaW5kZXg6IGVsLmRhdGFzZXQuaW5kZXgsXG4gICAgICAgICAgICBpZDogZWwuZGF0YXNldC5pZCxcbiAgICAgICAgICAgIHZhbHVlOiBlbC5kYXRhc2V0LnZhbHVlLFxuICAgICAgICAgICAgaW5UYWJsZTogZWwuZGF0YXNldC5pblRhYmxlLFxuICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgfVxuICB9LFxuICBzZXJpYWxpemUob2JqZWN0KSB7XG4gICAgaWYgKG9iamVjdC5vYmplY3QgIT09ICdpbmxpbmUnKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc3dpdGNoIChvYmplY3QudHlwZSkge1xuICAgICAgY2FzZSAnaW5saW5lX2Ryb3Bkb3duJzoge1xuICAgICAgICBjb25zdCBkYXRhID0gb2JqZWN0LmRhdGEudG9KU09OKCk7XG5cbiAgICAgICAgcmV0dXJuIDxzcGFuIGRhdGEtdHlwZT1cImlubGluZV9kcm9wZG93blwiIGRhdGEtaW5kZXg9e2RhdGEuaW5kZXh9IGRhdGEtdmFsdWU9e2RhdGEudmFsdWV9IC8+O1xuICAgICAgfVxuICAgICAgY2FzZSAnZXhwbGljaXRfY29uc3RydWN0ZWRfcmVzcG9uc2UnOiB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBvYmplY3QuZGF0YS50b0pTT04oKTtcblxuICAgICAgICByZXR1cm4gPHNwYW4gZGF0YS10eXBlPVwiZXhwbGljaXRfY29uc3RydWN0ZWRfcmVzcG9uc2VcIiBkYXRhLWluZGV4PXtkYXRhLmluZGV4fSBkYXRhLXZhbHVlPXtkYXRhLnZhbHVlfSAvPjtcbiAgICAgIH1cbiAgICAgIGNhc2UgJ21hdGhfdGVtcGxhdGVkJzoge1xuICAgICAgICBjb25zdCBkYXRhID0gb2JqZWN0LmRhdGEudG9KU09OKCk7XG5cbiAgICAgICAgcmV0dXJuIDxzcGFuIGRhdGEtdHlwZT1cIm1hdGhfdGVtcGxhdGVkXCIgZGF0YS1pbmRleD17ZGF0YS5pbmRleH0gZGF0YS12YWx1ZT17ZGF0YS52YWx1ZX0gLz47XG4gICAgICB9XG4gICAgICBjYXNlICdkcmFnX2luX3RoZV9ibGFuayc6IHtcbiAgICAgICAgY29uc3QgZGF0YSA9IG9iamVjdC5kYXRhLnRvSlNPTigpO1xuXG4gICAgICAgIHJldHVybiAoXG4gICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgIGRhdGEtdHlwZT1cImRyYWdfaW5fdGhlX2JsYW5rXCJcbiAgICAgICAgICAgIGRhdGEtaW5kZXg9e2RhdGEuaW5kZXh9XG4gICAgICAgICAgICBkYXRhLWlkPXtkYXRhLmlkfVxuICAgICAgICAgICAgZGF0YS12YWx1ZT17ZGF0YS52YWx1ZX1cbiAgICAgICAgICAgIGRhdGEtaW4tdGFibGU9e2RhdGEuaW5UYWJsZX1cbiAgICAgICAgICAvPlxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfSxcbn07XG4iXX0=
@@ -1,75 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports["default"] = void 0;
9
-
10
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _react = _interopRequireDefault(require("react"));
13
-
14
- var _propTypes = _interopRequireDefault(require("prop-types"));
15
-
16
- var _icons = require("@pie-lib/icons");
17
-
18
- var InlineDropdown = function InlineDropdown(_ref) {
19
- var attributes = _ref.attributes,
20
- selectedItem = _ref.selectedItem;
21
- // TODO: Investigate
22
- // Needed because items with values inside have different positioning for some reason
23
- var html = selectedItem || '<div>&nbsp</div>';
24
- return /*#__PURE__*/_react["default"].createElement("span", (0, _extends2["default"])({}, attributes, {
25
- style: {
26
- display: 'inline-flex',
27
- height: '50px',
28
- margin: '0 5px',
29
- cursor: 'pointer'
30
- }
31
- }), /*#__PURE__*/_react["default"].createElement("div", {
32
- style: {
33
- display: 'inline-flex',
34
- minWidth: '178px',
35
- height: '36px',
36
- background: '#FFF',
37
- border: '1px solid #C0C3CF',
38
- boxSizing: 'border-box',
39
- borderRadius: '3px',
40
- position: 'relative',
41
- alignItems: 'center'
42
- }
43
- }, /*#__PURE__*/_react["default"].createElement("div", {
44
- style: {
45
- flex: 1,
46
- overflow: 'hidden',
47
- padding: '0 25px 0 8px',
48
- whiteSpace: 'nowrap',
49
- textOverflow: 'ellipsis'
50
- }
51
- }, /*#__PURE__*/_react["default"].createElement("span", {
52
- style: {
53
- display: 'inline-block',
54
- verticalAlign: 'middle'
55
- },
56
- dangerouslySetInnerHTML: {
57
- __html: html
58
- }
59
- })), /*#__PURE__*/_react["default"].createElement(_icons.Chevron, {
60
- direction: "down",
61
- style: {
62
- position: 'absolute',
63
- top: '5px',
64
- right: '5px'
65
- }
66
- })));
67
- };
68
-
69
- InlineDropdown.propTypes = {
70
- attributes: _propTypes["default"].object,
71
- selectedItem: _propTypes["default"].oneOfType([_propTypes["default"].string, _propTypes["default"].object])
72
- };
73
- var _default = InlineDropdown;
74
- exports["default"] = _default;
75
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wbHVnaW5zL3Jlc3BBcmVhL2lubGluZS1kcm9wZG93bi9pbmRleC5qc3giXSwibmFtZXMiOlsiSW5saW5lRHJvcGRvd24iLCJhdHRyaWJ1dGVzIiwic2VsZWN0ZWRJdGVtIiwiaHRtbCIsImRpc3BsYXkiLCJoZWlnaHQiLCJtYXJnaW4iLCJjdXJzb3IiLCJtaW5XaWR0aCIsImJhY2tncm91bmQiLCJib3JkZXIiLCJib3hTaXppbmciLCJib3JkZXJSYWRpdXMiLCJwb3NpdGlvbiIsImFsaWduSXRlbXMiLCJmbGV4Iiwib3ZlcmZsb3ciLCJwYWRkaW5nIiwid2hpdGVTcGFjZSIsInRleHRPdmVyZmxvdyIsInZlcnRpY2FsQWxpZ24iLCJfX2h0bWwiLCJ0b3AiLCJyaWdodCIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsIm9iamVjdCIsIm9uZU9mVHlwZSIsInN0cmluZyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFFQSxJQUFNQSxjQUFjLEdBQUcsU0FBakJBLGNBQWlCLE9BQWtDO0FBQUEsTUFBL0JDLFVBQStCLFFBQS9CQSxVQUErQjtBQUFBLE1BQW5CQyxZQUFtQixRQUFuQkEsWUFBbUI7QUFDdkQ7QUFDQTtBQUNBLE1BQU1DLElBQUksR0FBR0QsWUFBWSxJQUFJLGtCQUE3QjtBQUVBLHNCQUNFLHNFQUNNRCxVQUROO0FBRUUsSUFBQSxLQUFLLEVBQUU7QUFDTEcsTUFBQUEsT0FBTyxFQUFFLGFBREo7QUFFTEMsTUFBQUEsTUFBTSxFQUFFLE1BRkg7QUFHTEMsTUFBQUEsTUFBTSxFQUFFLE9BSEg7QUFJTEMsTUFBQUEsTUFBTSxFQUFFO0FBSkg7QUFGVCxtQkFTRTtBQUNFLElBQUEsS0FBSyxFQUFFO0FBQ0xILE1BQUFBLE9BQU8sRUFBRSxhQURKO0FBRUxJLE1BQUFBLFFBQVEsRUFBRSxPQUZMO0FBR0xILE1BQUFBLE1BQU0sRUFBRSxNQUhIO0FBSUxJLE1BQUFBLFVBQVUsRUFBRSxNQUpQO0FBS0xDLE1BQUFBLE1BQU0sRUFBRSxtQkFMSDtBQU1MQyxNQUFBQSxTQUFTLEVBQUUsWUFOTjtBQU9MQyxNQUFBQSxZQUFZLEVBQUUsS0FQVDtBQVFMQyxNQUFBQSxRQUFRLEVBQUUsVUFSTDtBQVNMQyxNQUFBQSxVQUFVLEVBQUU7QUFUUDtBQURULGtCQWFFO0FBQ0UsSUFBQSxLQUFLLEVBQUU7QUFDTEMsTUFBQUEsSUFBSSxFQUFFLENBREQ7QUFFTEMsTUFBQUEsUUFBUSxFQUFFLFFBRkw7QUFHTEMsTUFBQUEsT0FBTyxFQUFFLGNBSEo7QUFJTEMsTUFBQUEsVUFBVSxFQUFFLFFBSlA7QUFLTEMsTUFBQUEsWUFBWSxFQUFFO0FBTFQ7QUFEVCxrQkFTRTtBQUNFLElBQUEsS0FBSyxFQUFFO0FBQ0xmLE1BQUFBLE9BQU8sRUFBRSxjQURKO0FBRUxnQixNQUFBQSxhQUFhLEVBQUU7QUFGVixLQURUO0FBS0UsSUFBQSx1QkFBdUIsRUFBRTtBQUN2QkMsTUFBQUEsTUFBTSxFQUFFbEI7QUFEZTtBQUwzQixJQVRGLENBYkYsZUFnQ0UsZ0NBQUMsY0FBRDtBQUNFLElBQUEsU0FBUyxFQUFDLE1BRFo7QUFFRSxJQUFBLEtBQUssRUFBRTtBQUNMVSxNQUFBQSxRQUFRLEVBQUUsVUFETDtBQUVMUyxNQUFBQSxHQUFHLEVBQUUsS0FGQTtBQUdMQyxNQUFBQSxLQUFLLEVBQUU7QUFIRjtBQUZULElBaENGLENBVEYsQ0FERjtBQXFERCxDQTFERDs7QUE0REF2QixjQUFjLENBQUN3QixTQUFmLEdBQTJCO0FBQ3pCdkIsRUFBQUEsVUFBVSxFQUFFd0Isc0JBQVVDLE1BREc7QUFFekJ4QixFQUFBQSxZQUFZLEVBQUV1QixzQkFBVUUsU0FBVixDQUFvQixDQUFDRixzQkFBVUcsTUFBWCxFQUFtQkgsc0JBQVVDLE1BQTdCLENBQXBCO0FBRlcsQ0FBM0I7ZUFLZTFCLGMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IFByb3BUeXBlcyBmcm9tICdwcm9wLXR5cGVzJztcbmltcG9ydCB7IENoZXZyb24gfSBmcm9tICdAcGllLWxpYi9pY29ucyc7XG5cbmNvbnN0IElubGluZURyb3Bkb3duID0gKHsgYXR0cmlidXRlcywgc2VsZWN0ZWRJdGVtIH0pID0+IHtcbiAgLy8gVE9ETzogSW52ZXN0aWdhdGVcbiAgLy8gTmVlZGVkIGJlY2F1c2UgaXRlbXMgd2l0aCB2YWx1ZXMgaW5zaWRlIGhhdmUgZGlmZmVyZW50IHBvc2l0aW9uaW5nIGZvciBzb21lIHJlYXNvblxuICBjb25zdCBodG1sID0gc2VsZWN0ZWRJdGVtIHx8ICc8ZGl2PiZuYnNwPC9kaXY+JztcblxuICByZXR1cm4gKFxuICAgIDxzcGFuXG4gICAgICB7Li4uYXR0cmlidXRlc31cbiAgICAgIHN0eWxlPXt7XG4gICAgICAgIGRpc3BsYXk6ICdpbmxpbmUtZmxleCcsXG4gICAgICAgIGhlaWdodDogJzUwcHgnLFxuICAgICAgICBtYXJnaW46ICcwIDVweCcsXG4gICAgICAgIGN1cnNvcjogJ3BvaW50ZXInLFxuICAgICAgfX1cbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgZGlzcGxheTogJ2lubGluZS1mbGV4JyxcbiAgICAgICAgICBtaW5XaWR0aDogJzE3OHB4JyxcbiAgICAgICAgICBoZWlnaHQ6ICczNnB4JyxcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAnI0ZGRicsXG4gICAgICAgICAgYm9yZGVyOiAnMXB4IHNvbGlkICNDMEMzQ0YnLFxuICAgICAgICAgIGJveFNpemluZzogJ2JvcmRlci1ib3gnLFxuICAgICAgICAgIGJvcmRlclJhZGl1czogJzNweCcsXG4gICAgICAgICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgICAgICAgYWxpZ25JdGVtczogJ2NlbnRlcicsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxkaXZcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgZmxleDogMSxcbiAgICAgICAgICAgIG92ZXJmbG93OiAnaGlkZGVuJyxcbiAgICAgICAgICAgIHBhZGRpbmc6ICcwIDI1cHggMCA4cHgnLFxuICAgICAgICAgICAgd2hpdGVTcGFjZTogJ25vd3JhcCcsXG4gICAgICAgICAgICB0ZXh0T3ZlcmZsb3c6ICdlbGxpcHNpcycsXG4gICAgICAgICAgfX1cbiAgICAgICAgPlxuICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICBkaXNwbGF5OiAnaW5saW5lLWJsb2NrJyxcbiAgICAgICAgICAgICAgdmVydGljYWxBbGlnbjogJ21pZGRsZScsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgZGFuZ2Vyb3VzbHlTZXRJbm5lckhUTUw9e3tcbiAgICAgICAgICAgICAgX19odG1sOiBodG1sLFxuICAgICAgICAgICAgfX1cbiAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPENoZXZyb25cbiAgICAgICAgICBkaXJlY3Rpb249XCJkb3duXCJcbiAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgcG9zaXRpb246ICdhYnNvbHV0ZScsXG4gICAgICAgICAgICB0b3A6ICc1cHgnLFxuICAgICAgICAgICAgcmlnaHQ6ICc1cHgnLFxuICAgICAgICAgIH19XG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICA8L3NwYW4+XG4gICk7XG59O1xuXG5JbmxpbmVEcm9wZG93bi5wcm9wVHlwZXMgPSB7XG4gIGF0dHJpYnV0ZXM6IFByb3BUeXBlcy5vYmplY3QsXG4gIHNlbGVjdGVkSXRlbTogUHJvcFR5cGVzLm9uZU9mVHlwZShbUHJvcFR5cGVzLnN0cmluZywgUHJvcFR5cGVzLm9iamVjdF0pLFxufTtcblxuZXhwb3J0IGRlZmF1bHQgSW5saW5lRHJvcGRvd247XG4iXX0=