@pie-lib/editable-html-tip-tap 1.0.2 → 1.0.4

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 (165) hide show
  1. package/lib/components/CharacterPicker.js +221 -0
  2. package/lib/components/CharacterPicker.js.map +1 -0
  3. package/lib/components/EditableHtml.js +323 -0
  4. package/lib/components/EditableHtml.js.map +1 -0
  5. package/lib/components/MenuBar.js +694 -0
  6. package/lib/components/MenuBar.js.map +1 -0
  7. package/lib/components/TiptapContainer.js +90 -0
  8. package/lib/components/TiptapContainer.js.map +1 -0
  9. package/lib/components/buttons/done-button.js +53 -0
  10. package/lib/components/characters/characterUtils.js +112 -0
  11. package/lib/components/characters/characterUtils.js.map +1 -0
  12. package/lib/components/characters/custom-popper.js +73 -0
  13. package/lib/components/characters/custom-popper.js.map +1 -0
  14. package/lib/components/common/done-button.js +53 -0
  15. package/lib/components/common/done-button.js.map +1 -0
  16. package/lib/components/common/toolbar-buttons.js +194 -0
  17. package/lib/components/icons/CssIcon.js +37 -0
  18. package/lib/components/icons/CssIcon.js.map +1 -0
  19. package/lib/components/icons/RespArea.js +95 -0
  20. package/lib/components/icons/RespArea.js.map +1 -0
  21. package/lib/components/icons/TableIcons.js +69 -0
  22. package/lib/components/icons/TableIcons.js.map +1 -0
  23. package/lib/components/icons/TextAlign.js +194 -0
  24. package/lib/components/icons/TextAlign.js.map +1 -0
  25. package/lib/components/icons/index.js +194 -0
  26. package/lib/components/image/AltDialog.js +129 -0
  27. package/lib/components/image/ImageToolbar.js +177 -0
  28. package/lib/components/image/ImageToolbar.js.map +1 -0
  29. package/lib/components/image/InsertImageHandler.js +115 -0
  30. package/lib/components/image/InsertImageHandler.js.map +1 -0
  31. package/lib/components/image/alt-dialog.js +2 -0
  32. package/lib/components/media/MediaDialog.js +709 -0
  33. package/lib/components/media/MediaDialog.js.map +1 -0
  34. package/lib/components/media/MediaToolbar.js +101 -0
  35. package/lib/components/media/MediaToolbar.js.map +1 -0
  36. package/lib/components/media/MediaWrapper.js +93 -0
  37. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js +94 -0
  38. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js.map +1 -0
  39. package/lib/components/respArea/DragInTheBlank/choice.js +289 -0
  40. package/lib/components/respArea/DragInTheBlank/choice.js.map +1 -0
  41. package/lib/components/respArea/DragInTheBlank.js +94 -0
  42. package/lib/components/respArea/ExplicitConstructedResponse.js +120 -0
  43. package/lib/components/respArea/ExplicitConstructedResponse.js.map +1 -0
  44. package/lib/components/respArea/InlineDropdown.js +126 -0
  45. package/lib/components/respArea/InlineDropdown.js.map +1 -0
  46. package/lib/components/respArea/ToolbarIcon.js +105 -0
  47. package/lib/components/respArea/ToolbarIcon.js.map +1 -0
  48. package/lib/components/respArea/choice.js +2 -0
  49. package/lib/constants.js.map +1 -0
  50. package/lib/extensions/component.js +5 -5
  51. package/lib/extensions/component.js.map +1 -0
  52. package/lib/extensions/css.js.map +1 -0
  53. package/lib/extensions/custom-toolbar-wrapper.js +2 -4
  54. package/lib/extensions/custom-toolbar-wrapper.js.map +1 -0
  55. package/lib/extensions/extended-table.js +30 -0
  56. package/lib/extensions/extended-table.js.map +1 -0
  57. package/lib/extensions/image.js +2 -8
  58. package/lib/extensions/image.js.map +1 -0
  59. package/lib/extensions/index.js +52 -0
  60. package/lib/extensions/index.js.map +1 -0
  61. package/lib/extensions/math.js.map +1 -0
  62. package/lib/extensions/media.js +7 -7
  63. package/lib/extensions/media.js.map +1 -0
  64. package/lib/extensions/responseArea.js +7 -7
  65. package/lib/extensions/responseArea.js.map +1 -0
  66. package/lib/index.js +16 -1481
  67. package/lib/index.js.map +1 -0
  68. package/lib/plugins/index.js +8 -80
  69. package/lib/styles/editorContainerStyles.js +200 -0
  70. package/lib/styles/editorContainerStyles.js.map +1 -0
  71. package/lib/theme.js.map +1 -0
  72. package/lib/utils/size.js +34 -0
  73. package/lib/utils/size.js.map +1 -0
  74. package/package.json +1 -1
  75. package/src/components/CharacterPicker.jsx +185 -0
  76. package/src/components/EditableHtml.jsx +306 -0
  77. package/src/components/MenuBar.jsx +630 -0
  78. package/src/components/TiptapContainer.jsx +96 -0
  79. package/src/components/characters/characterUtils.js +127 -0
  80. package/src/{plugins/image/image-toolbar.jsx → components/image/ImageToolbar.jsx} +2 -2
  81. package/src/{plugins/image/insert-image-handler.js → components/image/InsertImageHandler.js} +0 -1
  82. package/src/{plugins/media/media-dialog.js → components/media/MediaDialog.js} +2 -2
  83. package/src/{plugins/respArea/drag-in-the-blank → components/respArea/DragInTheBlank}/choice.jsx +1 -1
  84. package/src/{plugins/respArea/inline-dropdown/index.jsx → components/respArea/InlineDropdown.jsx} +1 -1
  85. package/src/components/respArea/ToolbarIcon.jsx +68 -0
  86. package/src/extensions/component.jsx +2 -2
  87. package/src/extensions/custom-toolbar-wrapper.jsx +6 -7
  88. package/src/extensions/extended-table.js +27 -0
  89. package/src/extensions/image.js +2 -2
  90. package/src/extensions/index.js +76 -0
  91. package/src/extensions/media.js +12 -7
  92. package/src/extensions/responseArea.js +7 -7
  93. package/src/index.jsx +3 -1440
  94. package/src/styles/editorContainerStyles.js +203 -0
  95. package/src/utils/size.js +32 -0
  96. package/src/__tests__/editor.test.jsx +0 -363
  97. package/src/__tests__/serialization.test.js +0 -291
  98. package/src/block-tags.js +0 -17
  99. package/src/editor.jsx +0 -1197
  100. package/src/extensions/characters.js +0 -46
  101. package/src/old-index.jsx +0 -162
  102. package/src/parse-html.js +0 -8
  103. package/src/plugins/README.md +0 -27
  104. package/src/plugins/characters/index.jsx +0 -284
  105. package/src/plugins/characters/utils.js +0 -447
  106. package/src/plugins/css/index.jsx +0 -340
  107. package/src/plugins/customPlugin/index.jsx +0 -85
  108. package/src/plugins/html/icons/index.jsx +0 -19
  109. package/src/plugins/html/index.jsx +0 -72
  110. package/src/plugins/image/__tests__/__snapshots__/component.test.jsx.snap +0 -51
  111. package/src/plugins/image/__tests__/__snapshots__/image-toolbar-logic.test.jsx.snap +0 -27
  112. package/src/plugins/image/__tests__/__snapshots__/image-toolbar.test.jsx.snap +0 -44
  113. package/src/plugins/image/__tests__/component.test.jsx +0 -41
  114. package/src/plugins/image/__tests__/image-toolbar-logic.test.jsx +0 -42
  115. package/src/plugins/image/__tests__/image-toolbar.test.jsx +0 -11
  116. package/src/plugins/image/__tests__/index.test.js +0 -95
  117. package/src/plugins/image/__tests__/insert-image-handler.test.js +0 -113
  118. package/src/plugins/image/__tests__/mock-change.js +0 -15
  119. package/src/plugins/image/component.jsx +0 -343
  120. package/src/plugins/image/index.jsx +0 -227
  121. package/src/plugins/index.jsx +0 -377
  122. package/src/plugins/list/__tests__/index.test.js +0 -54
  123. package/src/plugins/list/index.jsx +0 -305
  124. package/src/plugins/math/__tests__/__snapshots__/index.test.jsx.snap +0 -48
  125. package/src/plugins/math/__tests__/index.test.jsx +0 -245
  126. package/src/plugins/math/index.jsx +0 -379
  127. package/src/plugins/media/__tests__/index.test.js +0 -75
  128. package/src/plugins/media/index.jsx +0 -325
  129. package/src/plugins/rendering/index.js +0 -31
  130. package/src/plugins/respArea/index.jsx +0 -299
  131. package/src/plugins/respArea/math-templated/index.jsx +0 -104
  132. package/src/plugins/respArea/utils.jsx +0 -90
  133. package/src/plugins/table/CustomTablePlugin.js +0 -113
  134. package/src/plugins/table/__tests__/__snapshots__/table-toolbar.test.jsx.snap +0 -44
  135. package/src/plugins/table/__tests__/index.test.jsx +0 -401
  136. package/src/plugins/table/__tests__/table-toolbar.test.jsx +0 -42
  137. package/src/plugins/table/index.jsx +0 -427
  138. package/src/plugins/table/table-toolbar.jsx +0 -136
  139. package/src/plugins/textAlign/index.jsx +0 -23
  140. package/src/plugins/toolbar/__tests__/__snapshots__/default-toolbar.test.jsx.snap +0 -923
  141. package/src/plugins/toolbar/__tests__/__snapshots__/editor-and-toolbar.test.jsx.snap +0 -20
  142. package/src/plugins/toolbar/__tests__/__snapshots__/toolbar-buttons.test.jsx.snap +0 -36
  143. package/src/plugins/toolbar/__tests__/__snapshots__/toolbar.test.jsx.snap +0 -46
  144. package/src/plugins/toolbar/__tests__/default-toolbar.test.jsx +0 -94
  145. package/src/plugins/toolbar/__tests__/editor-and-toolbar.test.jsx +0 -37
  146. package/src/plugins/toolbar/__tests__/toolbar-buttons.test.jsx +0 -51
  147. package/src/plugins/toolbar/__tests__/toolbar.test.jsx +0 -106
  148. package/src/plugins/toolbar/default-toolbar.jsx +0 -206
  149. package/src/plugins/toolbar/editor-and-toolbar.jsx +0 -257
  150. package/src/plugins/toolbar/index.jsx +0 -23
  151. package/src/plugins/toolbar/toolbar.jsx +0 -338
  152. package/src/plugins/utils.js +0 -31
  153. package/src/serialization.jsx +0 -621
  154. /package/src/{plugins → components}/characters/custom-popper.js +0 -0
  155. /package/src/{plugins/toolbar → components/common}/done-button.jsx +0 -0
  156. /package/src/{plugins/toolbar → components/common}/toolbar-buttons.jsx +0 -0
  157. /package/src/{plugins/css/icons/index.jsx → components/icons/CssIcon.jsx} +0 -0
  158. /package/src/{plugins/respArea/icons/index.jsx → components/icons/RespArea.jsx} +0 -0
  159. /package/src/{plugins/table/icons/index.jsx → components/icons/TableIcons.jsx} +0 -0
  160. /package/src/{plugins/textAlign/icons/index.jsx → components/icons/TextAlign.jsx} +0 -0
  161. /package/src/{plugins/image/alt-dialog.jsx → components/image/AltDialog.jsx} +0 -0
  162. /package/src/{plugins/media/media-toolbar.jsx → components/media/MediaToolbar.jsx} +0 -0
  163. /package/src/{plugins/media/media-wrapper.jsx → components/media/MediaWrapper.jsx} +0 -0
  164. /package/src/{plugins/respArea/drag-in-the-blank/index.jsx → components/respArea/DragInTheBlank/DragInTheBlank.jsx} +0 -0
  165. /package/src/{plugins/respArea/explicit-constructed-response/index.jsx → components/respArea/ExplicitConstructedResponse.jsx} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/media/MediaDialog.js"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA","sourcesContent":["export { default } from '../../plugins/media/media-dialog';\n"],"file":"MediaDialog.js"}
@@ -0,0 +1,101 @@
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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
+
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+
14
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
15
+
16
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
17
+
18
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
19
+
20
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
21
+
22
+ var _react = _interopRequireDefault(require("react"));
23
+
24
+ var _propTypes = _interopRequireDefault(require("prop-types"));
25
+
26
+ var _styles = require("@material-ui/core/styles");
27
+
28
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
29
+
30
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
31
+
32
+ var useStyles = (0, _styles.withStyles)(function (theme) {
33
+ return {
34
+ root: {
35
+ position: 'relative',
36
+ bottom: '5px',
37
+ left: 0,
38
+ width: '100%',
39
+ background: theme.palette.common.white,
40
+ display: 'inline-flex',
41
+ padding: '5px',
42
+ boxShadow: '0px 4px 4px rgba(0, 0, 0, 0.25)'
43
+ },
44
+ editContainer: {
45
+ cursor: 'pointer',
46
+ flex: 3,
47
+ border: "solid ".concat(theme.palette.common.black),
48
+ textAlign: 'right',
49
+ borderWidth: '0 2px 0 0',
50
+ marginRight: '5px',
51
+ paddingRight: '5px'
52
+ },
53
+ removeContainer: {
54
+ cursor: 'pointer'
55
+ }
56
+ };
57
+ });
58
+
59
+ var MediaToolbar = /*#__PURE__*/function (_React$Component) {
60
+ (0, _inherits2["default"])(MediaToolbar, _React$Component);
61
+
62
+ var _super = _createSuper(MediaToolbar);
63
+
64
+ function MediaToolbar() {
65
+ (0, _classCallCheck2["default"])(this, MediaToolbar);
66
+ return _super.apply(this, arguments);
67
+ }
68
+
69
+ (0, _createClass2["default"])(MediaToolbar, [{
70
+ key: "render",
71
+ value: function render() {
72
+ var _this$props = this.props,
73
+ classes = _this$props.classes,
74
+ hideEdit = _this$props.hideEdit,
75
+ onEdit = _this$props.onEdit,
76
+ onRemove = _this$props.onRemove;
77
+ return /*#__PURE__*/_react["default"].createElement("span", {
78
+ className: classes.root
79
+ }, hideEdit ? null : /*#__PURE__*/_react["default"].createElement("span", {
80
+ className: classes.editContainer,
81
+ onClick: onEdit
82
+ }, "Edit Settings"), /*#__PURE__*/_react["default"].createElement("span", {
83
+ className: classes.removeContainer,
84
+ onClick: onRemove
85
+ }, "Remove"));
86
+ }
87
+ }]);
88
+ return MediaToolbar;
89
+ }(_react["default"].Component);
90
+
91
+ (0, _defineProperty2["default"])(MediaToolbar, "propTypes", {
92
+ classes: _propTypes["default"].object,
93
+ onEdit: _propTypes["default"].func,
94
+ hideEdit: _propTypes["default"].bool,
95
+ onRemove: _propTypes["default"].func
96
+ });
97
+
98
+ var _default = useStyles(MediaToolbar);
99
+
100
+ exports["default"] = _default;
101
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21lZGlhL01lZGlhVG9vbGJhci5qc3giXSwibmFtZXMiOlsidXNlU3R5bGVzIiwidGhlbWUiLCJyb290IiwicG9zaXRpb24iLCJib3R0b20iLCJsZWZ0Iiwid2lkdGgiLCJiYWNrZ3JvdW5kIiwicGFsZXR0ZSIsImNvbW1vbiIsIndoaXRlIiwiZGlzcGxheSIsInBhZGRpbmciLCJib3hTaGFkb3ciLCJlZGl0Q29udGFpbmVyIiwiY3Vyc29yIiwiZmxleCIsImJvcmRlciIsImJsYWNrIiwidGV4dEFsaWduIiwiYm9yZGVyV2lkdGgiLCJtYXJnaW5SaWdodCIsInBhZGRpbmdSaWdodCIsInJlbW92ZUNvbnRhaW5lciIsIk1lZGlhVG9vbGJhciIsInByb3BzIiwiY2xhc3NlcyIsImhpZGVFZGl0Iiwib25FZGl0Iiwib25SZW1vdmUiLCJSZWFjdCIsIkNvbXBvbmVudCIsIlByb3BUeXBlcyIsIm9iamVjdCIsImZ1bmMiLCJib29sIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7Ozs7O0FBRUEsSUFBTUEsU0FBUyxHQUFHLHdCQUFXLFVBQUNDLEtBQUQ7QUFBQSxTQUFZO0FBQ3ZDQyxJQUFBQSxJQUFJLEVBQUU7QUFDSkMsTUFBQUEsUUFBUSxFQUFFLFVBRE47QUFFSkMsTUFBQUEsTUFBTSxFQUFFLEtBRko7QUFHSkMsTUFBQUEsSUFBSSxFQUFFLENBSEY7QUFJSkMsTUFBQUEsS0FBSyxFQUFFLE1BSkg7QUFLSkMsTUFBQUEsVUFBVSxFQUFFTixLQUFLLENBQUNPLE9BQU4sQ0FBY0MsTUFBZCxDQUFxQkMsS0FMN0I7QUFNSkMsTUFBQUEsT0FBTyxFQUFFLGFBTkw7QUFPSkMsTUFBQUEsT0FBTyxFQUFFLEtBUEw7QUFRSkMsTUFBQUEsU0FBUyxFQUFFO0FBUlAsS0FEaUM7QUFXdkNDLElBQUFBLGFBQWEsRUFBRTtBQUNiQyxNQUFBQSxNQUFNLEVBQUUsU0FESztBQUViQyxNQUFBQSxJQUFJLEVBQUUsQ0FGTztBQUdiQyxNQUFBQSxNQUFNLGtCQUFXaEIsS0FBSyxDQUFDTyxPQUFOLENBQWNDLE1BQWQsQ0FBcUJTLEtBQWhDLENBSE87QUFJYkMsTUFBQUEsU0FBUyxFQUFFLE9BSkU7QUFLYkMsTUFBQUEsV0FBVyxFQUFFLFdBTEE7QUFNYkMsTUFBQUEsV0FBVyxFQUFFLEtBTkE7QUFPYkMsTUFBQUEsWUFBWSxFQUFFO0FBUEQsS0FYd0I7QUFvQnZDQyxJQUFBQSxlQUFlLEVBQUU7QUFDZlIsTUFBQUEsTUFBTSxFQUFFO0FBRE87QUFwQnNCLEdBQVo7QUFBQSxDQUFYLENBQWxCOztJQXlCTVMsWTs7Ozs7Ozs7Ozs7O1dBUUosa0JBQVM7QUFDUCx3QkFBZ0QsS0FBS0MsS0FBckQ7QUFBQSxVQUFRQyxPQUFSLGVBQVFBLE9BQVI7QUFBQSxVQUFpQkMsUUFBakIsZUFBaUJBLFFBQWpCO0FBQUEsVUFBMkJDLE1BQTNCLGVBQTJCQSxNQUEzQjtBQUFBLFVBQW1DQyxRQUFuQyxlQUFtQ0EsUUFBbkM7QUFFQSwwQkFDRTtBQUFNLFFBQUEsU0FBUyxFQUFFSCxPQUFPLENBQUN4QjtBQUF6QixTQUNHeUIsUUFBUSxHQUFHLElBQUgsZ0JBQ1A7QUFBTSxRQUFBLFNBQVMsRUFBRUQsT0FBTyxDQUFDWixhQUF6QjtBQUF3QyxRQUFBLE9BQU8sRUFBRWM7QUFBakQseUJBRkosZUFNRTtBQUFNLFFBQUEsU0FBUyxFQUFFRixPQUFPLENBQUNILGVBQXpCO0FBQTBDLFFBQUEsT0FBTyxFQUFFTTtBQUFuRCxrQkFORixDQURGO0FBWUQ7OztFQXZCd0JDLGtCQUFNQyxTOztpQ0FBM0JQLFksZUFDZTtBQUNqQkUsRUFBQUEsT0FBTyxFQUFFTSxzQkFBVUMsTUFERjtBQUVqQkwsRUFBQUEsTUFBTSxFQUFFSSxzQkFBVUUsSUFGRDtBQUdqQlAsRUFBQUEsUUFBUSxFQUFFSyxzQkFBVUcsSUFISDtBQUlqQk4sRUFBQUEsUUFBUSxFQUFFRyxzQkFBVUU7QUFKSCxDOztlQXlCTmxDLFNBQVMsQ0FBQ3dCLFlBQUQsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL3N0eWxlcyc7XG5cbmNvbnN0IHVzZVN0eWxlcyA9IHdpdGhTdHlsZXMoKHRoZW1lKSA9PiAoe1xuICByb290OiB7XG4gICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgYm90dG9tOiAnNXB4JyxcbiAgICBsZWZ0OiAwLFxuICAgIHdpZHRoOiAnMTAwJScsXG4gICAgYmFja2dyb3VuZDogdGhlbWUucGFsZXR0ZS5jb21tb24ud2hpdGUsXG4gICAgZGlzcGxheTogJ2lubGluZS1mbGV4JyxcbiAgICBwYWRkaW5nOiAnNXB4JyxcbiAgICBib3hTaGFkb3c6ICcwcHggNHB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMjUpJyxcbiAgfSxcbiAgZWRpdENvbnRhaW5lcjoge1xuICAgIGN1cnNvcjogJ3BvaW50ZXInLFxuICAgIGZsZXg6IDMsXG4gICAgYm9yZGVyOiBgc29saWQgJHt0aGVtZS5wYWxldHRlLmNvbW1vbi5ibGFja31gLFxuICAgIHRleHRBbGlnbjogJ3JpZ2h0JyxcbiAgICBib3JkZXJXaWR0aDogJzAgMnB4IDAgMCcsXG4gICAgbWFyZ2luUmlnaHQ6ICc1cHgnLFxuICAgIHBhZGRpbmdSaWdodDogJzVweCcsXG4gIH0sXG4gIHJlbW92ZUNvbnRhaW5lcjoge1xuICAgIGN1cnNvcjogJ3BvaW50ZXInLFxuICB9LFxufSkpO1xuXG5jbGFzcyBNZWRpYVRvb2xiYXIgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIGNsYXNzZXM6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgb25FZGl0OiBQcm9wVHlwZXMuZnVuYyxcbiAgICBoaWRlRWRpdDogUHJvcFR5cGVzLmJvb2wsXG4gICAgb25SZW1vdmU6IFByb3BUeXBlcy5mdW5jLFxuICB9O1xuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7IGNsYXNzZXMsIGhpZGVFZGl0LCBvbkVkaXQsIG9uUmVtb3ZlIH0gPSB0aGlzLnByb3BzO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxzcGFuIGNsYXNzTmFtZT17Y2xhc3Nlcy5yb290fT5cbiAgICAgICAge2hpZGVFZGl0ID8gbnVsbCA6IChcbiAgICAgICAgICA8c3BhbiBjbGFzc05hbWU9e2NsYXNzZXMuZWRpdENvbnRhaW5lcn0gb25DbGljaz17b25FZGl0fT5cbiAgICAgICAgICAgIEVkaXQgU2V0dGluZ3NcbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICl9XG4gICAgICAgIDxzcGFuIGNsYXNzTmFtZT17Y2xhc3Nlcy5yZW1vdmVDb250YWluZXJ9IG9uQ2xpY2s9e29uUmVtb3ZlfT5cbiAgICAgICAgICBSZW1vdmVcbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9zcGFuPlxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgdXNlU3R5bGVzKE1lZGlhVG9vbGJhcik7XG4iXX0=
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/media/MediaToolbar.jsx"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA","sourcesContent":["export { default } from '../../plugins/media/media-toolbar';\n"],"file":"MediaToolbar.js"}
@@ -0,0 +1,93 @@
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 _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
13
+
14
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
15
+
16
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
17
+
18
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
+
20
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
+
22
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
+
24
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
+
26
+ var _react = _interopRequireDefault(require("react"));
27
+
28
+ var _propTypes = _interopRequireDefault(require("prop-types"));
29
+
30
+ var _classnames = _interopRequireDefault(require("classnames"));
31
+
32
+ var _styles = require("@material-ui/core/styles");
33
+
34
+ var _excluded = ["editor", "classes", "children", "width"];
35
+
36
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
37
+
38
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
39
+
40
+ var useStyles = (0, _styles.withStyles)(function () {
41
+ return {
42
+ root: {
43
+ position: 'relative'
44
+ },
45
+ editor: {
46
+ display: 'inline-block',
47
+ overflow: 'hidden'
48
+ }
49
+ };
50
+ });
51
+
52
+ var MediaWrapper = /*#__PURE__*/function (_React$Component) {
53
+ (0, _inherits2["default"])(MediaWrapper, _React$Component);
54
+
55
+ var _super = _createSuper(MediaWrapper);
56
+
57
+ function MediaWrapper() {
58
+ (0, _classCallCheck2["default"])(this, MediaWrapper);
59
+ return _super.apply(this, arguments);
60
+ }
61
+
62
+ (0, _createClass2["default"])(MediaWrapper, [{
63
+ key: "render",
64
+ value: function render() {
65
+ var _this$props = this.props,
66
+ editor = _this$props.editor,
67
+ classes = _this$props.classes,
68
+ children = _this$props.children,
69
+ width = _this$props.width,
70
+ rest = (0, _objectWithoutProperties2["default"])(_this$props, _excluded);
71
+ return /*#__PURE__*/_react["default"].createElement("span", (0, _extends2["default"])({
72
+ className: (0, _classnames["default"])(classes.root, (0, _defineProperty2["default"])({}, classes.editor, editor))
73
+ }, rest, {
74
+ style: {
75
+ width: width || 300
76
+ }
77
+ }), children);
78
+ }
79
+ }]);
80
+ return MediaWrapper;
81
+ }(_react["default"].Component);
82
+
83
+ (0, _defineProperty2["default"])(MediaWrapper, "propTypes", {
84
+ classes: _propTypes["default"].object,
85
+ children: _propTypes["default"].array,
86
+ editor: _propTypes["default"].bool,
87
+ width: _propTypes["default"].oneOfType([_propTypes["default"].number, _propTypes["default"].string])
88
+ });
89
+
90
+ var _default = useStyles(MediaWrapper);
91
+
92
+ exports["default"] = _default;
93
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL21lZGlhL01lZGlhV3JhcHBlci5qc3giXSwibmFtZXMiOlsidXNlU3R5bGVzIiwicm9vdCIsInBvc2l0aW9uIiwiZWRpdG9yIiwiZGlzcGxheSIsIm92ZXJmbG93IiwiTWVkaWFXcmFwcGVyIiwicHJvcHMiLCJjbGFzc2VzIiwiY2hpbGRyZW4iLCJ3aWR0aCIsInJlc3QiLCJSZWFjdCIsIkNvbXBvbmVudCIsIlByb3BUeXBlcyIsIm9iamVjdCIsImFycmF5IiwiYm9vbCIsIm9uZU9mVHlwZSIsIm51bWJlciIsInN0cmluZyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7OztBQUVBLElBQU1BLFNBQVMsR0FBRyx3QkFBVztBQUFBLFNBQU87QUFDbENDLElBQUFBLElBQUksRUFBRTtBQUNKQyxNQUFBQSxRQUFRLEVBQUU7QUFETixLQUQ0QjtBQUlsQ0MsSUFBQUEsTUFBTSxFQUFFO0FBQ05DLE1BQUFBLE9BQU8sRUFBRSxjQURIO0FBRU5DLE1BQUFBLFFBQVEsRUFBRTtBQUZKO0FBSjBCLEdBQVA7QUFBQSxDQUFYLENBQWxCOztJQVVNQyxZOzs7Ozs7Ozs7Ozs7V0FRSixrQkFBUztBQUNQLHdCQUFzRCxLQUFLQyxLQUEzRDtBQUFBLFVBQVFKLE1BQVIsZUFBUUEsTUFBUjtBQUFBLFVBQWdCSyxPQUFoQixlQUFnQkEsT0FBaEI7QUFBQSxVQUF5QkMsUUFBekIsZUFBeUJBLFFBQXpCO0FBQUEsVUFBbUNDLEtBQW5DLGVBQW1DQSxLQUFuQztBQUFBLFVBQTZDQyxJQUE3QztBQUVBLDBCQUNFO0FBQ0UsUUFBQSxTQUFTLEVBQUUsNEJBQVdILE9BQU8sQ0FBQ1AsSUFBbkIsdUNBQ1JPLE9BQU8sQ0FBQ0wsTUFEQSxFQUNTQSxNQURUO0FBRGIsU0FJTVEsSUFKTjtBQUtFLFFBQUEsS0FBSyxFQUFFO0FBQ0xELFVBQUFBLEtBQUssRUFBRUEsS0FBSyxJQUFJO0FBRFg7QUFMVCxVQVNHRCxRQVRILENBREY7QUFhRDs7O0VBeEJ3Qkcsa0JBQU1DLFM7O2lDQUEzQlAsWSxlQUNlO0FBQ2pCRSxFQUFBQSxPQUFPLEVBQUVNLHNCQUFVQyxNQURGO0FBRWpCTixFQUFBQSxRQUFRLEVBQUVLLHNCQUFVRSxLQUZIO0FBR2pCYixFQUFBQSxNQUFNLEVBQUVXLHNCQUFVRyxJQUhEO0FBSWpCUCxFQUFBQSxLQUFLLEVBQUVJLHNCQUFVSSxTQUFWLENBQW9CLENBQUNKLHNCQUFVSyxNQUFYLEVBQW1CTCxzQkFBVU0sTUFBN0IsQ0FBcEI7QUFKVSxDOztlQTBCTnBCLFNBQVMsQ0FBQ00sWUFBRCxDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICdjbGFzc25hbWVzJztcbmltcG9ydCB7IHdpdGhTdHlsZXMgfSBmcm9tICdAbWF0ZXJpYWwtdWkvY29yZS9zdHlsZXMnO1xuXG5jb25zdCB1c2VTdHlsZXMgPSB3aXRoU3R5bGVzKCgpID0+ICh7XG4gIHJvb3Q6IHtcbiAgICBwb3NpdGlvbjogJ3JlbGF0aXZlJyxcbiAgfSxcbiAgZWRpdG9yOiB7XG4gICAgZGlzcGxheTogJ2lubGluZS1ibG9jaycsXG4gICAgb3ZlcmZsb3c6ICdoaWRkZW4nLFxuICB9LFxufSkpO1xuXG5jbGFzcyBNZWRpYVdyYXBwZXIgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQge1xuICBzdGF0aWMgcHJvcFR5cGVzID0ge1xuICAgIGNsYXNzZXM6IFByb3BUeXBlcy5vYmplY3QsXG4gICAgY2hpbGRyZW46IFByb3BUeXBlcy5hcnJheSxcbiAgICBlZGl0b3I6IFByb3BUeXBlcy5ib29sLFxuICAgIHdpZHRoOiBQcm9wVHlwZXMub25lT2ZUeXBlKFtQcm9wVHlwZXMubnVtYmVyLCBQcm9wVHlwZXMuc3RyaW5nXSksXG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHsgZWRpdG9yLCBjbGFzc2VzLCBjaGlsZHJlbiwgd2lkdGgsIC4uLnJlc3QgfSA9IHRoaXMucHJvcHM7XG5cbiAgICByZXR1cm4gKFxuICAgICAgPHNwYW5cbiAgICAgICAgY2xhc3NOYW1lPXtjbGFzc05hbWVzKGNsYXNzZXMucm9vdCwge1xuICAgICAgICAgIFtjbGFzc2VzLmVkaXRvcl06IGVkaXRvcixcbiAgICAgICAgfSl9XG4gICAgICAgIHsuLi5yZXN0fVxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIHdpZHRoOiB3aWR0aCB8fCAzMDAsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIHtjaGlsZHJlbn1cbiAgICAgIDwvc3Bhbj5cbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IHVzZVN0eWxlcyhNZWRpYVdyYXBwZXIpO1xuIl19
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.onValueChange = exports.onRemoveResponse = exports["default"] = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _propTypes = _interopRequireDefault(require("prop-types"));
17
+
18
+ var _react2 = require("@tiptap/react");
19
+
20
+ var _choice = _interopRequireDefault(require("./choice"));
21
+
22
+ var _omit = _interopRequireDefault(require("lodash/omit"));
23
+
24
+ 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; }
25
+
26
+ 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; }
27
+
28
+ var onValueChange = function onValueChange(editor, node, pos, choice) {
29
+ var tr = editor.state.tr; // Merge old and new attributes
30
+
31
+ tr.setNodeMarkup(pos, undefined, _objectSpread(_objectSpread({}, node.attrs), choice));
32
+ tr.isDone = true;
33
+ editor.view.dispatch(tr);
34
+ };
35
+
36
+ exports.onValueChange = onValueChange;
37
+
38
+ var onRemoveResponse = function onRemoveResponse(editor, node, pos) {
39
+ var tr = editor.state.tr; // Merge old and new attributes
40
+
41
+ tr.setNodeMarkup(pos, undefined, (0, _omit["default"])(node.attrs, ['value', 'id']));
42
+ tr.isDone = true;
43
+ editor.view.dispatch(tr);
44
+ };
45
+
46
+ exports.onRemoveResponse = onRemoveResponse;
47
+
48
+ var DragDrop = function DragDrop(props) {
49
+ var editor = props.editor,
50
+ node = props.node,
51
+ getPos = props.getPos,
52
+ options = props.options,
53
+ selected = props.selected;
54
+ var attributes = node.attrs;
55
+ var inTable = attributes.inTable;
56
+ var pos = getPos(); // console.log({nodeProps.children})
57
+
58
+ return /*#__PURE__*/_react["default"].createElement(_react2.NodeViewWrapper, {
59
+ className: "drag-in-the-blank",
60
+ "data-selected": selected
61
+ }, /*#__PURE__*/_react["default"].createElement("span", (0, _extends2["default"])({}, attributes, {
62
+ style: {
63
+ display: 'inline-flex',
64
+ minHeight: '50px',
65
+ minWidth: '178px',
66
+ position: 'relative',
67
+ margin: inTable ? '10px' : '0 10px',
68
+ cursor: 'pointer'
69
+ }
70
+ }), /*#__PURE__*/_react["default"].createElement(_choice["default"], {
71
+ n: attributes,
72
+ dragKey: attributes.id,
73
+ targetId: "0",
74
+ value: attributes,
75
+ duplicates: options.duplicates,
76
+ onChange: function onChange(choice) {
77
+ return onValueChange(editor, node, pos, choice);
78
+ },
79
+ removeResponse: function removeResponse() {
80
+ return onRemoveResponse(editor, node, pos);
81
+ }
82
+ })));
83
+ };
84
+
85
+ DragDrop.propTypes = {
86
+ attributes: _propTypes["default"].object,
87
+ data: _propTypes["default"].object,
88
+ n: _propTypes["default"].object,
89
+ nodeProps: _propTypes["default"].object,
90
+ opts: _propTypes["default"].object
91
+ };
92
+ var _default = DragDrop;
93
+ exports["default"] = _default;
94
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3Jlc3BBcmVhL0RyYWdJblRoZUJsYW5rL0RyYWdJblRoZUJsYW5rLmpzeCJdLCJuYW1lcyI6WyJvblZhbHVlQ2hhbmdlIiwiZWRpdG9yIiwibm9kZSIsInBvcyIsImNob2ljZSIsInRyIiwic3RhdGUiLCJzZXROb2RlTWFya3VwIiwidW5kZWZpbmVkIiwiYXR0cnMiLCJpc0RvbmUiLCJ2aWV3IiwiZGlzcGF0Y2giLCJvblJlbW92ZVJlc3BvbnNlIiwiRHJhZ0Ryb3AiLCJwcm9wcyIsImdldFBvcyIsIm9wdGlvbnMiLCJzZWxlY3RlZCIsImF0dHJpYnV0ZXMiLCJpblRhYmxlIiwiZGlzcGxheSIsIm1pbkhlaWdodCIsIm1pbldpZHRoIiwicG9zaXRpb24iLCJtYXJnaW4iLCJjdXJzb3IiLCJpZCIsImR1cGxpY2F0ZXMiLCJwcm9wVHlwZXMiLCJQcm9wVHlwZXMiLCJvYmplY3QiLCJkYXRhIiwibiIsIm5vZGVQcm9wcyIsIm9wdHMiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7Ozs7O0FBRU8sSUFBTUEsYUFBYSxHQUFHLFNBQWhCQSxhQUFnQixDQUFDQyxNQUFELEVBQVNDLElBQVQsRUFBZUMsR0FBZixFQUFvQkMsTUFBcEIsRUFBK0I7QUFDMUQsTUFBUUMsRUFBUixHQUFlSixNQUFNLENBQUNLLEtBQXRCLENBQVFELEVBQVIsQ0FEMEQsQ0FHMUQ7O0FBQ0FBLEVBQUFBLEVBQUUsQ0FBQ0UsYUFBSCxDQUFpQkosR0FBakIsRUFBc0JLLFNBQXRCLGtDQUNLTixJQUFJLENBQUNPLEtBRFYsR0FFS0wsTUFGTDtBQUlBQyxFQUFBQSxFQUFFLENBQUNLLE1BQUgsR0FBWSxJQUFaO0FBQ0FULEVBQUFBLE1BQU0sQ0FBQ1UsSUFBUCxDQUFZQyxRQUFaLENBQXFCUCxFQUFyQjtBQUNELENBVk07Ozs7QUFZQSxJQUFNUSxnQkFBZ0IsR0FBRyxTQUFuQkEsZ0JBQW1CLENBQUNaLE1BQUQsRUFBU0MsSUFBVCxFQUFlQyxHQUFmLEVBQXVCO0FBQ3JELE1BQVFFLEVBQVIsR0FBZUosTUFBTSxDQUFDSyxLQUF0QixDQUFRRCxFQUFSLENBRHFELENBR3JEOztBQUNBQSxFQUFBQSxFQUFFLENBQUNFLGFBQUgsQ0FBaUJKLEdBQWpCLEVBQXNCSyxTQUF0QixFQUFpQyxzQkFBS04sSUFBSSxDQUFDTyxLQUFWLEVBQWlCLENBQUMsT0FBRCxFQUFVLElBQVYsQ0FBakIsQ0FBakM7QUFDQUosRUFBQUEsRUFBRSxDQUFDSyxNQUFILEdBQVksSUFBWjtBQUNBVCxFQUFBQSxNQUFNLENBQUNVLElBQVAsQ0FBWUMsUUFBWixDQUFxQlAsRUFBckI7QUFDRCxDQVBNOzs7O0FBU1AsSUFBTVMsUUFBUSxHQUFHLFNBQVhBLFFBQVcsQ0FBQ0MsS0FBRCxFQUFXO0FBQzFCLE1BQVFkLE1BQVIsR0FBb0RjLEtBQXBELENBQVFkLE1BQVI7QUFBQSxNQUFnQkMsSUFBaEIsR0FBb0RhLEtBQXBELENBQWdCYixJQUFoQjtBQUFBLE1BQXNCYyxNQUF0QixHQUFvREQsS0FBcEQsQ0FBc0JDLE1BQXRCO0FBQUEsTUFBOEJDLE9BQTlCLEdBQW9ERixLQUFwRCxDQUE4QkUsT0FBOUI7QUFBQSxNQUF1Q0MsUUFBdkMsR0FBb0RILEtBQXBELENBQXVDRyxRQUF2QztBQUNBLE1BQWVDLFVBQWYsR0FBOEJqQixJQUE5QixDQUFRTyxLQUFSO0FBQ0EsTUFBUVcsT0FBUixHQUFvQkQsVUFBcEIsQ0FBUUMsT0FBUjtBQUNBLE1BQU1qQixHQUFHLEdBQUdhLE1BQU0sRUFBbEIsQ0FKMEIsQ0FNMUI7O0FBQ0Esc0JBQ0UsZ0NBQUMsdUJBQUQ7QUFBaUIsSUFBQSxTQUFTLEVBQUMsbUJBQTNCO0FBQStDLHFCQUFlRTtBQUE5RCxrQkFDRSxzRUFDTUMsVUFETjtBQUVFLElBQUEsS0FBSyxFQUFFO0FBQ0xFLE1BQUFBLE9BQU8sRUFBRSxhQURKO0FBRUxDLE1BQUFBLFNBQVMsRUFBRSxNQUZOO0FBR0xDLE1BQUFBLFFBQVEsRUFBRSxPQUhMO0FBSUxDLE1BQUFBLFFBQVEsRUFBRSxVQUpMO0FBS0xDLE1BQUFBLE1BQU0sRUFBRUwsT0FBTyxHQUFHLE1BQUgsR0FBWSxRQUx0QjtBQU1MTSxNQUFBQSxNQUFNLEVBQUU7QUFOSDtBQUZULG1CQVdFLGdDQUFDLGtCQUFEO0FBQ0UsSUFBQSxDQUFDLEVBQUVQLFVBREw7QUFFRSxJQUFBLE9BQU8sRUFBRUEsVUFBVSxDQUFDUSxFQUZ0QjtBQUdFLElBQUEsUUFBUSxFQUFDLEdBSFg7QUFJRSxJQUFBLEtBQUssRUFBRVIsVUFKVDtBQUtFLElBQUEsVUFBVSxFQUFFRixPQUFPLENBQUNXLFVBTHRCO0FBTUUsSUFBQSxRQUFRLEVBQUUsa0JBQUN4QixNQUFEO0FBQUEsYUFBWUosYUFBYSxDQUFDQyxNQUFELEVBQVNDLElBQVQsRUFBZUMsR0FBZixFQUFvQkMsTUFBcEIsQ0FBekI7QUFBQSxLQU5aO0FBT0UsSUFBQSxjQUFjLEVBQUU7QUFBQSxhQUFNUyxnQkFBZ0IsQ0FBQ1osTUFBRCxFQUFTQyxJQUFULEVBQWVDLEdBQWYsQ0FBdEI7QUFBQTtBQVBsQixJQVhGLENBREYsQ0FERjtBQXlCRCxDQWhDRDs7QUFrQ0FXLFFBQVEsQ0FBQ2UsU0FBVCxHQUFxQjtBQUNuQlYsRUFBQUEsVUFBVSxFQUFFVyxzQkFBVUMsTUFESDtBQUVuQkMsRUFBQUEsSUFBSSxFQUFFRixzQkFBVUMsTUFGRztBQUduQkUsRUFBQUEsQ0FBQyxFQUFFSCxzQkFBVUMsTUFITTtBQUluQkcsRUFBQUEsU0FBUyxFQUFFSixzQkFBVUMsTUFKRjtBQUtuQkksRUFBQUEsSUFBSSxFQUFFTCxzQkFBVUM7QUFMRyxDQUFyQjtlQVFlakIsUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IHsgTm9kZVZpZXdXcmFwcGVyIH0gZnJvbSAnQHRpcHRhcC9yZWFjdCc7XG5pbXBvcnQgRHJhZ0Ryb3BUaWxlIGZyb20gJy4vY2hvaWNlJztcbmltcG9ydCBvbWl0IGZyb20gJ2xvZGFzaC9vbWl0JztcblxuZXhwb3J0IGNvbnN0IG9uVmFsdWVDaGFuZ2UgPSAoZWRpdG9yLCBub2RlLCBwb3MsIGNob2ljZSkgPT4ge1xuICBjb25zdCB7IHRyIH0gPSBlZGl0b3Iuc3RhdGU7XG5cbiAgLy8gTWVyZ2Ugb2xkIGFuZCBuZXcgYXR0cmlidXRlc1xuICB0ci5zZXROb2RlTWFya3VwKHBvcywgdW5kZWZpbmVkLCB7XG4gICAgLi4ubm9kZS5hdHRycyxcbiAgICAuLi5jaG9pY2UsXG4gIH0pO1xuICB0ci5pc0RvbmUgPSB0cnVlO1xuICBlZGl0b3Iudmlldy5kaXNwYXRjaCh0cik7XG59O1xuXG5leHBvcnQgY29uc3Qgb25SZW1vdmVSZXNwb25zZSA9IChlZGl0b3IsIG5vZGUsIHBvcykgPT4ge1xuICBjb25zdCB7IHRyIH0gPSBlZGl0b3Iuc3RhdGU7XG5cbiAgLy8gTWVyZ2Ugb2xkIGFuZCBuZXcgYXR0cmlidXRlc1xuICB0ci5zZXROb2RlTWFya3VwKHBvcywgdW5kZWZpbmVkLCBvbWl0KG5vZGUuYXR0cnMsIFsndmFsdWUnLCAnaWQnXSkpO1xuICB0ci5pc0RvbmUgPSB0cnVlO1xuICBlZGl0b3Iudmlldy5kaXNwYXRjaCh0cik7XG59O1xuXG5jb25zdCBEcmFnRHJvcCA9IChwcm9wcykgPT4ge1xuICBjb25zdCB7IGVkaXRvciwgbm9kZSwgZ2V0UG9zLCBvcHRpb25zLCBzZWxlY3RlZCB9ID0gcHJvcHM7XG4gIGNvbnN0IHsgYXR0cnM6IGF0dHJpYnV0ZXMgfSA9IG5vZGU7XG4gIGNvbnN0IHsgaW5UYWJsZSB9ID0gYXR0cmlidXRlcztcbiAgY29uc3QgcG9zID0gZ2V0UG9zKCk7XG5cbiAgLy8gY29uc29sZS5sb2coe25vZGVQcm9wcy5jaGlsZHJlbn0pXG4gIHJldHVybiAoXG4gICAgPE5vZGVWaWV3V3JhcHBlciBjbGFzc05hbWU9XCJkcmFnLWluLXRoZS1ibGFua1wiIGRhdGEtc2VsZWN0ZWQ9e3NlbGVjdGVkfT5cbiAgICAgIDxzcGFuXG4gICAgICAgIHsuLi5hdHRyaWJ1dGVzfVxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIGRpc3BsYXk6ICdpbmxpbmUtZmxleCcsXG4gICAgICAgICAgbWluSGVpZ2h0OiAnNTBweCcsXG4gICAgICAgICAgbWluV2lkdGg6ICcxNzhweCcsXG4gICAgICAgICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgICAgICAgbWFyZ2luOiBpblRhYmxlID8gJzEwcHgnIDogJzAgMTBweCcsXG4gICAgICAgICAgY3Vyc29yOiAncG9pbnRlcicsXG4gICAgICAgIH19XG4gICAgICA+XG4gICAgICAgIDxEcmFnRHJvcFRpbGVcbiAgICAgICAgICBuPXthdHRyaWJ1dGVzfVxuICAgICAgICAgIGRyYWdLZXk9e2F0dHJpYnV0ZXMuaWR9XG4gICAgICAgICAgdGFyZ2V0SWQ9XCIwXCJcbiAgICAgICAgICB2YWx1ZT17YXR0cmlidXRlc31cbiAgICAgICAgICBkdXBsaWNhdGVzPXtvcHRpb25zLmR1cGxpY2F0ZXN9XG4gICAgICAgICAgb25DaGFuZ2U9eyhjaG9pY2UpID0+IG9uVmFsdWVDaGFuZ2UoZWRpdG9yLCBub2RlLCBwb3MsIGNob2ljZSl9XG4gICAgICAgICAgcmVtb3ZlUmVzcG9uc2U9eygpID0+IG9uUmVtb3ZlUmVzcG9uc2UoZWRpdG9yLCBub2RlLCBwb3MpfVxuICAgICAgICA+PC9EcmFnRHJvcFRpbGU+XG4gICAgICA8L3NwYW4+XG4gICAgPC9Ob2RlVmlld1dyYXBwZXI+XG4gICk7XG59O1xuXG5EcmFnRHJvcC5wcm9wVHlwZXMgPSB7XG4gIGF0dHJpYnV0ZXM6IFByb3BUeXBlcy5vYmplY3QsXG4gIGRhdGE6IFByb3BUeXBlcy5vYmplY3QsXG4gIG46IFByb3BUeXBlcy5vYmplY3QsXG4gIG5vZGVQcm9wczogUHJvcFR5cGVzLm9iamVjdCxcbiAgb3B0czogUHJvcFR5cGVzLm9iamVjdCxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IERyYWdEcm9wO1xuIl19
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/respArea/DragInTheBlank/DragInTheBlank.jsx"],"names":["onValueChange","editor","node","pos","choice","tr","state","setNodeMarkup","undefined","attrs","isDone","view","dispatch","onRemoveResponse","DragDrop","props","getPos","options","selected","attributes","inTable","display","minHeight","minWidth","position","margin","cursor","id","duplicates","propTypes","PropTypes","object","data","n","nodeProps","opts"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { NodeViewWrapper } from '@tiptap/react';\nimport DragDropTile from './choice';\nimport omit from 'lodash/omit';\n\nexport const onValueChange = (editor, node, pos, choice) => {\n const { tr } = editor.state;\n\n // Merge old and new attributes\n tr.setNodeMarkup(pos, undefined, {\n ...node.attrs,\n ...choice,\n });\n tr.isDone = true;\n editor.view.dispatch(tr);\n};\n\nexport const onRemoveResponse = (editor, node, pos) => {\n const { tr } = editor.state;\n\n // Merge old and new attributes\n tr.setNodeMarkup(pos, undefined, omit(node.attrs, ['value', 'id']));\n tr.isDone = true;\n editor.view.dispatch(tr);\n};\n\nconst DragDrop = (props) => {\n const { editor, node, getPos, options, selected } = props;\n const { attrs: attributes } = node;\n const { inTable } = attributes;\n const pos = getPos();\n\n // console.log({nodeProps.children})\n return (\n <NodeViewWrapper className=\"drag-in-the-blank\" data-selected={selected}>\n <span\n {...attributes}\n style={{\n display: 'inline-flex',\n minHeight: '50px',\n minWidth: '178px',\n position: 'relative',\n margin: inTable ? '10px' : '0 10px',\n cursor: 'pointer',\n }}\n >\n <DragDropTile\n n={attributes}\n dragKey={attributes.id}\n targetId=\"0\"\n value={attributes}\n duplicates={options.duplicates}\n onChange={(choice) => onValueChange(editor, node, pos, choice)}\n removeResponse={() => onRemoveResponse(editor, node, pos)}\n ></DragDropTile>\n </span>\n </NodeViewWrapper>\n );\n};\n\nDragDrop.propTypes = {\n attributes: PropTypes.object,\n data: PropTypes.object,\n n: PropTypes.object,\n nodeProps: PropTypes.object,\n opts: PropTypes.object,\n};\n\nexport default DragDrop;\n"],"file":"DragInTheBlank.js"}
@@ -0,0 +1,289 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.tileTarget = exports.tileSource = exports["default"] = exports.BlankContent = void 0;
9
+
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+
12
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
+
14
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
+
16
+ var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
17
+
18
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
+
20
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
21
+
22
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
23
+
24
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
25
+
26
+ var _react = _interopRequireDefault(require("react"));
27
+
28
+ var _propTypes = _interopRequireDefault(require("prop-types"));
29
+
30
+ var _isUndefined = _interopRequireDefault(require("lodash/isUndefined"));
31
+
32
+ var _drag = require("@pie-lib/drag");
33
+
34
+ var _renderUi = require("@pie-lib/render-ui");
35
+
36
+ var _mathRendering = require("@pie-lib/math-rendering");
37
+
38
+ var _styles = require("@material-ui/core/styles");
39
+
40
+ var _classnames = _interopRequireDefault(require("classnames"));
41
+
42
+ var _RespArea = require("../../icons/RespArea");
43
+
44
+ var _excluded = ["connectDropTarget", "connectDragSource"];
45
+
46
+ function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2["default"])(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2["default"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2["default"])(this, result); }; }
47
+
48
+ function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
49
+
50
+ var useStyles = (0, _styles.withStyles)(function (theme) {
51
+ return {
52
+ content: {
53
+ border: "solid 0px ".concat(theme.palette.primary.main),
54
+ '& mjx-frac': {
55
+ fontSize: '120% !important'
56
+ }
57
+ },
58
+ chip: {
59
+ minWidth: '90px'
60
+ },
61
+ correct: {
62
+ border: "solid 1px ".concat(_renderUi.color.correct())
63
+ },
64
+ incorrect: {
65
+ border: "solid 1px ".concat(theme.palette.error.main)
66
+ },
67
+ selected: {
68
+ border: "2px solid ".concat(_renderUi.color.primaryDark(), " !important")
69
+ }
70
+ };
71
+ });
72
+
73
+ var BlankContent = /*#__PURE__*/function (_React$Component) {
74
+ (0, _inherits2["default"])(BlankContent, _React$Component);
75
+
76
+ var _super = _createSuper(BlankContent);
77
+
78
+ function BlankContent(props) {
79
+ var _this;
80
+
81
+ (0, _classCallCheck2["default"])(this, BlankContent);
82
+ _this = _super.call(this, props);
83
+ _this.handleClick = _this.handleClick.bind((0, _assertThisInitialized2["default"])(_this));
84
+ _this.state = {
85
+ hoveredElementSize: null
86
+ };
87
+ return _this;
88
+ }
89
+
90
+ (0, _createClass2["default"])(BlankContent, [{
91
+ key: "componentDidMount",
92
+ value: function componentDidMount() {
93
+ document.addEventListener('click', this.handleClick);
94
+ }
95
+ }, {
96
+ key: "componentWillUnmount",
97
+ value: function componentWillUnmount() {
98
+ document.removeEventListener('click', this.handleClick);
99
+ }
100
+ }, {
101
+ key: "handleClick",
102
+ value: function handleClick(event) {
103
+ var classes = this.props.classes;
104
+
105
+ if (this.elementRef) {
106
+ this.elementRef.className = this.elementRef.contains(event.target) ? classes.selected : '';
107
+ }
108
+ }
109
+ }, {
110
+ key: "getSnapshotBeforeUpdate",
111
+ value: function getSnapshotBeforeUpdate(prevProps) {
112
+ if (!prevProps.isOver && this.props.isOver && this.elementRef) {
113
+ var node = this.elementRef;
114
+ return {
115
+ width: node.offsetWidth,
116
+ height: node.offsetHeight
117
+ };
118
+ }
119
+
120
+ return null;
121
+ }
122
+ }, {
123
+ key: "componentDidUpdate",
124
+ value: function componentDidUpdate(prevProps, prevState, snapshot) {
125
+ if (this.elementRef && typeof _mathRendering.renderMath === 'function') {
126
+ (0, _mathRendering.renderMath)(this.elementRef);
127
+ }
128
+
129
+ if (snapshot && (!this.state.hoveredElementSize || this.state.hoveredElementSize.width !== snapshot.width || this.state.hoveredElementSize.height !== snapshot.height)) {
130
+ this.setState({
131
+ hoveredElementSize: snapshot
132
+ });
133
+ return;
134
+ }
135
+
136
+ if (prevProps.isOver && !this.props.isOver && this.state.hoveredElementSize) {
137
+ this.setState({
138
+ hoveredElementSize: null
139
+ });
140
+ }
141
+ }
142
+ }, {
143
+ key: "render",
144
+ value: function render() {
145
+ var _this2 = this;
146
+
147
+ var _this$props = this.props,
148
+ n = _this$props.n,
149
+ children = _this$props.children,
150
+ isDragging = _this$props.isDragging,
151
+ dragItem = _this$props.dragItem,
152
+ isOver = _this$props.isOver,
153
+ value = _this$props.value;
154
+ var hoveredElementSize = this.state.hoveredElementSize;
155
+ var label = dragItem && isOver ? dragItem.value.value : value.value || "\xA0";
156
+ var finalLabel = isDragging ? "\xA0" : label;
157
+ var hasGrip = finalLabel !== "\xA0";
158
+ var isPreview = dragItem && isOver;
159
+ return /*#__PURE__*/_react["default"].createElement("div", {
160
+ ref: function ref(_ref) {
161
+ return _this2.elementRef = _ref;
162
+ },
163
+ style: {
164
+ display: 'inline-flex',
165
+ minWidth: '178px',
166
+ minHeight: '36px',
167
+ background: isPreview ? "".concat(_renderUi.color.defaults.BORDER_LIGHT) : "".concat(_renderUi.color.defaults.WHITE),
168
+ border: isPreview ? "1px solid ".concat(_renderUi.color.defaults.BORDER_DARK) : "1px solid ".concat(_renderUi.color.defaults.BORDER_LIGHT),
169
+ boxSizing: 'border-box',
170
+ borderRadius: '3px',
171
+ overflow: 'hidden',
172
+ position: 'relative',
173
+ padding: '8px 8px 8px 35px',
174
+ width: hoveredElementSize ? hoveredElementSize.width : undefined,
175
+ height: hoveredElementSize ? hoveredElementSize.height : undefined
176
+ },
177
+ "data-key": n.key,
178
+ contentEditable: false
179
+ }, hasGrip && /*#__PURE__*/_react["default"].createElement(_RespArea.GripIcon, {
180
+ style: {
181
+ position: 'absolute',
182
+ top: '6px',
183
+ left: '15px',
184
+ color: '#9B9B9B'
185
+ },
186
+ contentEditable: false
187
+ }), /*#__PURE__*/_react["default"].createElement("span", {
188
+ dangerouslySetInnerHTML: {
189
+ __html: finalLabel
190
+ }
191
+ }), children);
192
+ }
193
+ }]);
194
+ return BlankContent;
195
+ }(_react["default"].Component);
196
+
197
+ exports.BlankContent = BlankContent;
198
+ (0, _defineProperty2["default"])(BlankContent, "propTypes", {
199
+ n: _propTypes["default"].object,
200
+ children: _propTypes["default"].func,
201
+ isDragging: _propTypes["default"].bool,
202
+ isOver: _propTypes["default"].bool,
203
+ dragItem: _propTypes["default"].object,
204
+ value: _propTypes["default"].object,
205
+ classes: _propTypes["default"].object
206
+ });
207
+ var StyledBlankContent = useStyles(BlankContent);
208
+ var connectedBlankContent = useStyles(function (_ref2) {
209
+ var connectDropTarget = _ref2.connectDropTarget,
210
+ connectDragSource = _ref2.connectDragSource,
211
+ props = (0, _objectWithoutProperties2["default"])(_ref2, _excluded);
212
+ var classes = props.classes,
213
+ isOver = props.isOver,
214
+ value = props.value;
215
+
216
+ var dragContent = /*#__PURE__*/_react["default"].createElement(StyledBlankContent, props);
217
+
218
+ var dragEl = !value ? dragContent : connectDragSource( /*#__PURE__*/_react["default"].createElement("span", null, dragContent));
219
+
220
+ var content = /*#__PURE__*/_react["default"].createElement("span", {
221
+ className: (0, _classnames["default"])(classes.content, isOver && classes.over)
222
+ }, dragEl);
223
+
224
+ return connectDropTarget ? connectDropTarget(content) : content;
225
+ });
226
+ var tileTarget = {
227
+ drop: function drop(props, monitor) {
228
+ var draggedItem = monitor.getItem();
229
+ var shouldDrop = (0, _isUndefined["default"])(draggedItem.value.index) || (0, _isUndefined["default"])(props.value.index) || draggedItem.value.index !== props.value.index;
230
+
231
+ if (shouldDrop) {
232
+ props.onChange(draggedItem.value);
233
+ }
234
+
235
+ return {
236
+ dropped: shouldDrop
237
+ };
238
+ },
239
+ canDrop: function canDrop(props, monitor) {
240
+ var draggedItem = monitor.getItem();
241
+ return draggedItem.instanceId === props.instanceId;
242
+ }
243
+ };
244
+ exports.tileTarget = tileTarget;
245
+ var DropTile = (0, _drag.DropTarget)('drag-in-the-blank-choice', tileTarget, function (connect, monitor) {
246
+ return {
247
+ connectDropTarget: connect.dropTarget(),
248
+ isOver: monitor.isOver({
249
+ shallow: true
250
+ }),
251
+ dragItem: monitor.getItem()
252
+ };
253
+ })(connectedBlankContent);
254
+ var tileSource = {
255
+ canDrag: function canDrag(props) {
256
+ return !props.disabled && !!props.value;
257
+ },
258
+ beginDrag: function beginDrag(props) {
259
+ return {
260
+ id: props.targetId,
261
+ value: props.value,
262
+ instanceId: props.instanceId,
263
+ fromChoice: true
264
+ };
265
+ },
266
+ endDrag: function endDrag(props, monitor) {
267
+ // this will be null if it did not drop
268
+ var dropResult = monitor.getDropResult();
269
+
270
+ if (!dropResult || dropResult.dropped && !props.duplicates) {
271
+ var draggedItem = monitor.getItem();
272
+
273
+ if (draggedItem.fromChoice) {
274
+ props.removeResponse(draggedItem.value);
275
+ }
276
+ }
277
+ }
278
+ };
279
+ exports.tileSource = tileSource;
280
+
281
+ var _default = (0, _drag.DragSource)('drag-in-the-blank-choice', tileSource, function (connect, monitor) {
282
+ return {
283
+ connectDragSource: connect.dragSource(),
284
+ isDragging: monitor.isDragging()
285
+ };
286
+ })(DropTile);
287
+
288
+ exports["default"] = _default;
289
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3Jlc3BBcmVhL0RyYWdJblRoZUJsYW5rL2Nob2ljZS5qc3giXSwibmFtZXMiOlsidXNlU3R5bGVzIiwidGhlbWUiLCJjb250ZW50IiwiYm9yZGVyIiwicGFsZXR0ZSIsInByaW1hcnkiLCJtYWluIiwiZm9udFNpemUiLCJjaGlwIiwibWluV2lkdGgiLCJjb3JyZWN0IiwiY29sb3IiLCJpbmNvcnJlY3QiLCJlcnJvciIsInNlbGVjdGVkIiwicHJpbWFyeURhcmsiLCJCbGFua0NvbnRlbnQiLCJwcm9wcyIsImhhbmRsZUNsaWNrIiwiYmluZCIsInN0YXRlIiwiaG92ZXJlZEVsZW1lbnRTaXplIiwiZG9jdW1lbnQiLCJhZGRFdmVudExpc3RlbmVyIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsImV2ZW50IiwiY2xhc3NlcyIsImVsZW1lbnRSZWYiLCJjbGFzc05hbWUiLCJjb250YWlucyIsInRhcmdldCIsInByZXZQcm9wcyIsImlzT3ZlciIsIm5vZGUiLCJ3aWR0aCIsIm9mZnNldFdpZHRoIiwiaGVpZ2h0Iiwib2Zmc2V0SGVpZ2h0IiwicHJldlN0YXRlIiwic25hcHNob3QiLCJyZW5kZXJNYXRoIiwic2V0U3RhdGUiLCJuIiwiY2hpbGRyZW4iLCJpc0RyYWdnaW5nIiwiZHJhZ0l0ZW0iLCJ2YWx1ZSIsImxhYmVsIiwiZmluYWxMYWJlbCIsImhhc0dyaXAiLCJpc1ByZXZpZXciLCJyZWYiLCJkaXNwbGF5IiwibWluSGVpZ2h0IiwiYmFja2dyb3VuZCIsImRlZmF1bHRzIiwiQk9SREVSX0xJR0hUIiwiV0hJVEUiLCJCT1JERVJfREFSSyIsImJveFNpemluZyIsImJvcmRlclJhZGl1cyIsIm92ZXJmbG93IiwicG9zaXRpb24iLCJwYWRkaW5nIiwidW5kZWZpbmVkIiwia2V5IiwidG9wIiwibGVmdCIsIl9faHRtbCIsIlJlYWN0IiwiQ29tcG9uZW50IiwiUHJvcFR5cGVzIiwib2JqZWN0IiwiZnVuYyIsImJvb2wiLCJTdHlsZWRCbGFua0NvbnRlbnQiLCJjb25uZWN0ZWRCbGFua0NvbnRlbnQiLCJjb25uZWN0RHJvcFRhcmdldCIsImNvbm5lY3REcmFnU291cmNlIiwiZHJhZ0NvbnRlbnQiLCJkcmFnRWwiLCJvdmVyIiwidGlsZVRhcmdldCIsImRyb3AiLCJtb25pdG9yIiwiZHJhZ2dlZEl0ZW0iLCJnZXRJdGVtIiwic2hvdWxkRHJvcCIsImluZGV4Iiwib25DaGFuZ2UiLCJkcm9wcGVkIiwiY2FuRHJvcCIsImluc3RhbmNlSWQiLCJEcm9wVGlsZSIsImNvbm5lY3QiLCJkcm9wVGFyZ2V0Iiwic2hhbGxvdyIsInRpbGVTb3VyY2UiLCJjYW5EcmFnIiwiZGlzYWJsZWQiLCJiZWdpbkRyYWciLCJpZCIsInRhcmdldElkIiwiZnJvbUNob2ljZSIsImVuZERyYWciLCJkcm9wUmVzdWx0IiwiZ2V0RHJvcFJlc3VsdCIsImR1cGxpY2F0ZXMiLCJyZW1vdmVSZXNwb25zZSIsImRyYWdTb3VyY2UiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFDQTs7QUFFQTs7Ozs7Ozs7QUFFQSxJQUFNQSxTQUFTLEdBQUcsd0JBQVcsVUFBQ0MsS0FBRDtBQUFBLFNBQVk7QUFDdkNDLElBQUFBLE9BQU8sRUFBRTtBQUNQQyxNQUFBQSxNQUFNLHNCQUFlRixLQUFLLENBQUNHLE9BQU4sQ0FBY0MsT0FBZCxDQUFzQkMsSUFBckMsQ0FEQztBQUVQLG9CQUFjO0FBQ1pDLFFBQUFBLFFBQVEsRUFBRTtBQURFO0FBRlAsS0FEOEI7QUFPdkNDLElBQUFBLElBQUksRUFBRTtBQUNKQyxNQUFBQSxRQUFRLEVBQUU7QUFETixLQVBpQztBQVV2Q0MsSUFBQUEsT0FBTyxFQUFFO0FBQ1BQLE1BQUFBLE1BQU0sc0JBQWVRLGdCQUFNRCxPQUFOLEVBQWY7QUFEQyxLQVY4QjtBQWF2Q0UsSUFBQUEsU0FBUyxFQUFFO0FBQ1RULE1BQUFBLE1BQU0sc0JBQWVGLEtB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QUNBLFFBQU1xQixVQUFVLEdBQUdyQixPQUFPLENBQUNzQixhQUFSLEVBQW5COztBQUVBLFFBQUksQ0FBQ0QsVUFBRCxJQUFnQkEsVUFBVSxDQUFDZixPQUFYLElBQXNCLENBQUN6RSxLQUFLLENBQUMwRixVQUFqRCxFQUE4RDtBQUM1RCxVQUFNdEIsV0FBVyxHQUFHRCxPQUFPLENBQUNFLE9BQVIsRUFBcEI7O0FBRUEsVUFBSUQsV0FBVyxDQUFDa0IsVUFBaEIsRUFBNEI7QUFDMUJ0RixRQUFBQSxLQUFLLENBQUMyRixjQUFOLENBQXFCdkIsV0FBVyxDQUFDdkMsS0FBakM7QUFDRDtBQUNGO0FBQ0Y7QUF2QnVCLENBQW5COzs7ZUEwQlEsc0JBQVcsMEJBQVgsRUFBdUNtRCxVQUF2QyxFQUFtRCxVQUFDSCxPQUFELEVBQVVWLE9BQVY7QUFBQSxTQUF1QjtBQUN2Rk4sSUFBQUEsaUJBQWlCLEVBQUVnQixPQUFPLENBQUNlLFVBQVIsRUFEb0U7QUFFdkZqRSxJQUFBQSxVQUFVLEVBQUV3QyxPQUFPLENBQUN4QyxVQUFSO0FBRjJFLEdBQXZCO0FBQUEsQ0FBbkQsRUFHWGlELFFBSFcsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgUHJvcFR5cGVzIGZyb20gJ3Byb3AtdHlwZXMnO1xuaW1wb3J0IGlzVW5kZWZpbmVkIGZyb20gJ2xvZGFzaC9pc1VuZGVmaW5lZCc7XG5pbXBvcnQgeyBEcmFnU291cmNlLCBEcm9wVGFyZ2V0IH0gZnJvbSAnQHBpZS1saWIvZHJhZyc7XG5pbXBvcnQgeyBjb2xvciB9IGZyb20gJ0BwaWUtbGliL3JlbmRlci11aSc7XG5pbXBvcnQgeyByZW5kZXJNYXRoIH0gZnJvbSAnQHBpZS1saWIvbWF0aC1yZW5kZXJpbmcnO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL3N0eWxlcyc7XG5pbXBvcnQgY2xhc3NuYW1lcyBmcm9tICdjbGFzc25hbWVzJztcblxuaW1wb3J0IHsgR3JpcEljb24gfSBmcm9tICcuLi8uLi9pY29ucy9SZXNwQXJlYSc7XG5cbmNvbnN0IHVzZVN0eWxlcyA9IHdpdGhTdHlsZXMoKHRoZW1lKSA9PiAoe1xuICBjb250ZW50OiB7XG4gICAgYm9yZGVyOiBgc29saWQgMHB4ICR7dGhlbWUucGFsZXR0ZS5wcmltYXJ5Lm1haW59YCxcbiAgICAnJiBtangtZnJhYyc6IHtcbiAgICAgIGZvbnRTaXplOiAnMTIwJSAhaW1wb3J0YW50JyxcbiAgICB9LFxuICB9LFxuICBjaGlwOiB7XG4gICAgbWluV2lkdGg6ICc5MHB4JyxcbiAgfSxcbiAgY29ycmVjdDoge1xuICAgIGJvcmRlcjogYHNvbGlkIDFweCAke2NvbG9yLmNvcnJlY3QoKX1gLFxuICB9LFxuICBpbmNvcnJlY3Q6IHtcbiAgICBib3JkZXI6IGBzb2xpZCAxcHggJHt0aGVtZS5wYWxldHRlLmVycm9yLm1haW59YCxcbiAgfSxcbiAgc2VsZWN0ZWQ6IHtcbiAgICBib3JkZXI6IGAycHggc29saWQgJHtjb2xvci5wcmltYXJ5RGFyaygpfSAhaW1wb3J0YW50YCxcbiAgfSxcbn0pKTtcblxuZXhwb3J0IGNsYXNzIEJsYW5rQ29udGVudCBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgbjogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBjaGlsZHJlbjogUHJvcFR5cGVzLmZ1bmMsXG4gICAgaXNEcmFnZ2luZzogUHJvcFR5cGVzLmJvb2wsXG4gICAgaXNPdmVyOiBQcm9wVHlwZXMuYm9vbCxcbiAgICBkcmFnSXRlbTogUHJvcFR5cGVzLm9iamVjdCxcbiAgICB2YWx1ZTogUHJvcFR5cGVzLm9iamVjdCxcbiAgICBjbGFzc2VzOiBQcm9wVHlwZXMub2JqZWN0LFxuICB9O1xuXG4gIGNvbnN0cnVjdG9yKHByb3BzKSB7XG4gICAgc3VwZXIocHJvcHMpO1xuXG4gICAgdGhpcy5oYW5kbGVDbGljayA9IHRoaXMuaGFuZGxlQ2xpY2suYmluZCh0aGlzKTtcbiAgICB0aGlzLnN0YXRlID0geyBob3ZlcmVkRWxlbWVudFNpemU6IG51bGwgfTtcbiAgfVxuXG4gIGNvbXBvbmVudERpZE1vdW50KCkge1xuICAgIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy5oYW5kbGVDbGljayk7XG4gIH1cblxuICBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICBkb2N1bWVudC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMuaGFuZGxlQ2xpY2spO1xuICB9XG5cbiAgaGFuZGxlQ2xpY2soZXZlbnQpIHtcbiAgICBjb25zdCB7IGNsYXNzZXMgfSA9IHRoaXMucHJvcHM7XG5cbiAgICBpZiAodGhpcy5lbGVtZW50UmVmKSB7XG4gICAgICB0aGlzLmVsZW1lbnRSZWYuY2xhc3NOYW1lID0gdGhpcy5lbGVtZW50UmVmLmNvbnRhaW5zKGV2ZW50LnRhcmdldCkgPyBjbGFzc2VzLnNlbGVjdGVkIDogJyc7XG4gICAgfVxuICB9XG5cbiAgZ2V0U25hcHNob3RCZWZvcmVVcGRhdGUocHJldlByb3BzKSB7XG4gICAgaWYgKCFwcmV2UHJvcHMuaXNPdmVyICYmIHRoaXMucHJvcHMuaXNPdmVyICYmIHRoaXMuZWxlbWVudFJlZikge1xuICAgICAgY29uc3Qgbm9kZSA9IHRoaXMuZWxlbWVudFJlZjtcbiAgICAgIHJldHVybiB7IHdpZHRoOiBub2RlLm9mZnNldFdpZHRoLCBoZWlnaHQ6IG5vZGUub2Zmc2V0SGVpZ2h0IH07XG4gICAgfVxuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgY29tcG9uZW50RGlkVXBkYXRlKHByZXZQcm9wcywgcHJldlN0YXRlLCBzbmFwc2hvdCkge1xuICAgIGlmICh0aGlzLmVsZW1lbnRSZWYgJiYgdHlwZW9mIHJlbmRlck1hdGggPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIHJlbmRlck1hdGgodGhpcy5lbGVtZW50UmVmKTtcbiAgICB9XG5cbiAgICBpZiAoXG4gICAgICBzbmFwc2hvdCAmJlxuICAgICAgKCF0aGlzLnN0YXRlLmhvdmVyZWRFbGVtZW50U2l6ZSB8fFxuICAgICAgICB0aGlzLnN0YXRlLmhvdmVyZWRFbGVtZW50U2l6ZS53aWR0aCAhPT0gc25hcHNob3Qud2lkdGggfHxcbiAgICAgICAgdGhpcy5zdGF0ZS5ob3ZlcmVkRWxlbWVudFNpemUuaGVpZ2h0ICE9PSBzbmFwc2hvdC5oZWlnaHQpXG4gICAgKSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHsgaG92ZXJlZEVsZW1lbnRTaXplOiBzbmFwc2hvdCB9KTtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAocHJldlByb3BzLmlzT3ZlciAmJiAhdGhpcy5wcm9wcy5pc092ZXIgJiYgdGhpcy5zdGF0ZS5ob3ZlcmVkRWxlbWVudFNpemUpIHtcbiAgICAgIHRoaXMuc2V0U3RhdGUoeyBob3ZlcmVkRWxlbWVudFNpemU6IG51bGwgfSk7XG4gICAgfVxuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHsgbiwgY2hpbGRyZW4sIGlzRHJhZ2dpbmcsIGRyYWdJdGVtLCBpc092ZXIsIHZhbHVlIH0gPSB0aGlzLnByb3BzO1xuICAgIGNvbnN0IHsgaG92ZXJlZEVsZW1lbnRTaXplIH0gPSB0aGlzLnN0YXRlO1xuXG4gICAgY29uc3QgbGFiZWwgPSBkcmFnSXRlbSAmJiBpc092ZXIgPyBkcmFnSXRlbS52YWx1ZS52YWx1ZSA6IHZhbHVlLnZhbHVlIHx8ICdcXHUwMEEwJztcbiAgICBjb25zdCBmaW5hbExhYmVsID0gaXNEcmFnZ2luZyA/ICdcXHUwMEEwJyA6IGxhYmVsO1xuICAgIGNvbnN0IGhhc0dyaXAgPSBmaW5hbExhYmVsICE9PSAnXFx1MDBBMCc7XG4gICAgY29uc3QgaXNQcmV2aWV3ID0gZHJhZ0l0ZW0gJiYgaXNPdmVyO1xuXG4gICAgcmV0dXJuIChcbiAgICAgIDxkaXZcbiAgICAgICAgcmVmPXsocmVmKSA9PiAodGhpcy5lbGVtZW50UmVmID0gcmVmKX1cbiAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICBkaXNwbGF5OiAnaW5saW5lLWZsZXgnLFxuICAgICAgICAgIG1pbldpZHRoOiAnMTc4cHgnLFxuICAgICAgICAgIG1pbkhlaWdodDogJzM2cHgnLFxuICAgICAgICAgIGJhY2tncm91bmQ6IGlzUHJldmlldyA/IGAke2NvbG9yLmRlZmF1bHRzLkJPUkRFUl9MSUdIVH1gIDogYCR7Y29sb3IuZGVmYXVsdHMuV0hJVEV9YCxcbiAgICAgICAgICBib3JkZXI6IGlzUHJldmlldyA/IGAxcHggc29saWQgICR7Y29sb3IuZGVmYXVsdHMuQk9SREVSX0RBUkt9YCA6IGAxcHggc29saWQgICR7Y29sb3IuZGVmYXVsdHMuQk9SREVSX0xJR0hUfWAsXG4gICAgICAgICAgYm94U2l6aW5nOiAnYm9yZGVyLWJveCcsXG4gICAgICAgICAgYm9yZGVyUmFkaXVzOiAnM3B4JyxcbiAgICAgICAgICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gICAgICAgICAgcG9zaXRpb246ICdyZWxhdGl2ZScsXG4gICAgICAgICAgcGFkZGluZzogJzhweCA4cHggOHB4IDM1cHgnLFxuICAgICAgICAgIHdpZHRoOiBob3ZlcmVkRWxlbWVudFNpemUgPyBob3ZlcmVkRWxlbWVudFNpemUud2lkdGggOiB1bmRlZmluZWQsXG4gICAgICAgICAgaGVpZ2h0OiBob3ZlcmVkRWxlbWVudFNpemUgPyBob3ZlcmVkRWxlbWVudFNpemUuaGVpZ2h0IDogdW5kZWZpbmVkLFxuICAgICAgICB9fVxuICAgICAgICBkYXRhLWtleT17bi5rZXl9XG4gICAgICAgIGNvbnRlbnRFZGl0YWJsZT17ZmFsc2V9XG4gICAgICA+XG4gICAgICAgIHtoYXNHcmlwICYmIChcbiAgICAgICAgICA8R3JpcEljb25cbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuICAgICAgICAgICAgICB0b3A6ICc2cHgnLFxuICAgICAgICAgICAgICBsZWZ0OiAnMTVweCcsXG4gICAgICAgICAgICAgIGNvbG9yOiAnIzlCOUI5QicsXG4gICAgICAgICAgICB9fVxuICAgICAgICAgICAgY29udGVudEVkaXRhYmxlPXtmYWxzZX1cbiAgICAgICAgICAvPlxuICAgICAgICApfVxuICAgICAgICA8c3BhblxuICAgICAgICAgIGRhbmdlcm91c2x5U2V0SW5uZXJIVE1MPXt7XG4gICAgICAgICAgICBfX2h0bWw6IGZpbmFsTGFiZWwsXG4gICAgICAgICAgfX1cbiAgICAgICAgLz5cbiAgICAgICAge2NoaWxkcmVufVxuICAgICAgPC9kaXY+XG4gICAgKTtcbiAgfVxufVxuXG5jb25zdCBTdHlsZWRCbGFua0NvbnRlbnQgPSB1c2VTdHlsZXMoQmxhbmtDb250ZW50KTtcblxuY29uc3QgY29ubmVjdGVkQmxhbmtDb250ZW50ID0gdXNlU3R5bGVzKCh7IGNvbm5lY3REcm9wVGFyZ2V0LCBjb25uZWN0RHJhZ1NvdXJjZSwgLi4ucHJvcHMgfSkgPT4ge1xuICBjb25zdCB7IGNsYXNzZXMsIGlzT3ZlciwgdmFsdWUgfSA9IHByb3BzO1xuICBjb25zdCBkcmFnQ29udGVudCA9IDxTdHlsZWRCbGFua0NvbnRlbnQgey4uLnByb3BzfSAvPjtcbiAgY29uc3QgZHJhZ0VsID0gIXZhbHVlID8gZHJhZ0NvbnRlbnQgOiBjb25uZWN0RHJhZ1NvdXJjZSg8c3Bhbj57ZHJhZ0NvbnRlbnR9PC9zcGFuPik7XG4gIGNvbnN0IGNvbnRlbnQgPSA8c3BhbiBjbGFzc05hbWU9e2NsYXNzbmFtZXMoY2xhc3Nlcy5jb250ZW50LCBpc092ZXIgJiYgY2xhc3Nlcy5vdmVyKX0+e2RyYWdFbH08L3NwYW4+O1xuXG4gIHJldHVybiBjb25uZWN0RHJvcFRhcmdldCA/IGNvbm5lY3REcm9wVGFyZ2V0KGNvbnRlbnQpIDogY29udGVudDtcbn0pO1xuXG5leHBvcnQgY29uc3QgdGlsZVRhcmdldCA9IHtcbiAgZHJvcChwcm9wcywgbW9uaXRvcikge1xuICAgIGNvbnN0IGRyYWdnZWRJdGVtID0gbW9uaXRvci5nZXRJdGVtKCk7XG4gICAgY29uc3Qgc2hvdWxkRHJvcCA9XG4gICAgICBpc1VuZGVmaW5lZChkcmFnZ2VkSXRlbS52YWx1ZS5pbmRleCkgfHxcbiAgICAgIGlzVW5kZWZpbmVkKHByb3BzLnZhbHVlLmluZGV4KSB8fFxuICAgICAgZHJhZ2dlZEl0ZW0udmFsdWUuaW5kZXggIT09IHByb3BzLnZhbHVlLmluZGV4O1xuXG4gICAgaWYgKHNob3VsZERyb3ApIHtcbiAgICAgIHByb3BzLm9uQ2hhbmdlKGRyYWdnZWRJdGVtLnZhbHVlKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgZHJvcHBlZDogc2hvdWxkRHJvcCxcbiAgICB9O1xuICB9LFxuICBjYW5Ecm9wKHByb3BzLCBtb25pdG9yKSB7XG4gICAgY29uc3QgZHJhZ2dlZEl0ZW0gPSBtb25pdG9yLmdldEl0ZW0oKTtcblxuICAgIHJldHVybiBkcmFnZ2VkSXRlbS5pbnN0YW5jZUlkID09PSBwcm9wcy5pbnN0YW5jZUlkO1xuICB9LFxufTtcblxuY29uc3QgRHJvcFRpbGUgPSBEcm9wVGFyZ2V0KCdkcmFnLWluLXRoZS1ibGFuay1jaG9pY2UnLCB0aWxlVGFyZ2V0LCAoY29ubmVjdCwgbW9uaXRvcikgPT4gKHtcbiAgY29ubmVjdERyb3BUYXJnZXQ6IGNvbm5lY3QuZHJvcFRhcmdldCgpLFxuICBpc092ZXI6IG1vbml0b3IuaXNPdmVyKHsgc2hhbGxvdzogdHJ1ZSB9KSxcbiAgZHJhZ0l0ZW06IG1vbml0b3IuZ2V0SXRlbSgpLFxufSkpKGNvbm5lY3RlZEJsYW5rQ29udGVudCk7XG5cbmV4cG9ydCBjb25zdCB0aWxlU291cmNlID0ge1xuICBjYW5EcmFnKHByb3BzKSB7XG4gICAgcmV0dXJuICFwcm9wcy5kaXNhYmxlZCAmJiAhIXByb3BzLnZhbHVlO1xuICB9LFxuICBiZWdpbkRyYWcocHJvcHMpIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IHByb3BzLnRhcmdldElkLFxuICAgICAgdmFsdWU6IHByb3BzLnZhbHVlLFxuICAgICAgaW5zdGFuY2VJZDogcHJvcHMuaW5zdGFuY2VJZCxcbiAgICAgIGZyb21DaG9pY2U6IHRydWUsXG4gICAgfTtcbiAgfSxcbiAgZW5kRHJhZyhwcm9wcywgbW9uaXRvcikge1xuICAgIC8vIHRoaXMgd2lsbCBiZSBudWxsIGlmIGl0IGRpZCBub3QgZHJvcFxuICAgIGNvbnN0IGRyb3BSZXN1bHQgPSBtb25pdG9yLmdldERyb3BSZXN1bHQoKTtcblxuICAgIGlmICghZHJvcFJlc3VsdCB8fCAoZHJvcFJlc3VsdC5kcm9wcGVkICYmICFwcm9wcy5kdXBsaWNhdGVzKSkge1xuICAgICAgY29uc3QgZHJhZ2dlZEl0ZW0gPSBtb25pdG9yLmdldEl0ZW0oKTtcblxuICAgICAgaWYgKGRyYWdnZWRJdGVtLmZyb21DaG9pY2UpIHtcbiAgICAgICAgcHJvcHMucmVtb3ZlUmVzcG9uc2UoZHJhZ2dlZEl0ZW0udmFsdWUpO1xuICAgICAgfVxuICAgIH1cbiAgfSxcbn07XG5cbmV4cG9ydCBkZWZhdWx0IERyYWdTb3VyY2UoJ2RyYWctaW4tdGhlLWJsYW5rLWNob2ljZScsIHRpbGVTb3VyY2UsIChjb25uZWN0LCBtb25pdG9yKSA9PiAoe1xuICBjb25uZWN0RHJhZ1NvdXJjZTogY29ubmVjdC5kcmFnU291cmNlKCksXG4gIGlzRHJhZ2dpbmc6IG1vbml0b3IuaXNEcmFnZ2luZygpLFxufSkpKERyb3BUaWxlKTtcbiJdfQ==