@pie-lib/editable-html-tip-tap 1.0.19 → 1.0.21-next.6053

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 (102) hide show
  1. package/CHANGELOG.md +7 -73
  2. package/LICENSE.md +5 -0
  3. package/NEXT.CHANGELOG.json +1 -0
  4. package/lib/components/CharacterPicker.js +22 -61
  5. package/lib/components/CharacterPicker.js.map +1 -1
  6. package/lib/components/EditableHtml.js +50 -121
  7. package/lib/components/EditableHtml.js.map +1 -1
  8. package/lib/components/MenuBar.js +96 -128
  9. package/lib/components/MenuBar.js.map +1 -1
  10. package/lib/components/TiptapContainer.js +162 -45
  11. package/lib/components/TiptapContainer.js.map +1 -1
  12. package/lib/components/characters/characterUtils.js +4 -7
  13. package/lib/components/characters/characterUtils.js.map +1 -1
  14. package/lib/components/characters/custom-popper.js +22 -51
  15. package/lib/components/characters/custom-popper.js.map +1 -1
  16. package/lib/components/common/done-button.js +17 -36
  17. package/lib/components/common/done-button.js.map +1 -1
  18. package/lib/components/common/toolbar-buttons.js +57 -107
  19. package/lib/components/common/toolbar-buttons.js.map +1 -1
  20. package/lib/components/icons/CssIcon.js +14 -26
  21. package/lib/components/icons/CssIcon.js.map +1 -1
  22. package/lib/components/icons/RespArea.js +23 -46
  23. package/lib/components/icons/RespArea.js.map +1 -1
  24. package/lib/components/icons/TableIcons.js +20 -36
  25. package/lib/components/icons/TableIcons.js.map +1 -1
  26. package/lib/components/icons/TextAlign.js +16 -53
  27. package/lib/components/icons/TextAlign.js.map +1 -1
  28. package/lib/components/image/AltDialog.js +18 -49
  29. package/lib/components/image/AltDialog.js.map +1 -1
  30. package/lib/components/image/ImageToolbar.js +50 -90
  31. package/lib/components/image/ImageToolbar.js.map +1 -1
  32. package/lib/components/image/InsertImageHandler.js +17 -35
  33. package/lib/components/image/InsertImageHandler.js.map +1 -1
  34. package/lib/components/media/MediaDialog.js +195 -309
  35. package/lib/components/media/MediaDialog.js.map +1 -1
  36. package/lib/components/media/MediaToolbar.js +39 -66
  37. package/lib/components/media/MediaToolbar.js.map +1 -1
  38. package/lib/components/media/MediaWrapper.js +30 -56
  39. package/lib/components/media/MediaWrapper.js.map +1 -1
  40. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js +21 -36
  41. package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js.map +1 -1
  42. package/lib/components/respArea/DragInTheBlank/choice.js +215 -262
  43. package/lib/components/respArea/DragInTheBlank/choice.js.map +1 -1
  44. package/lib/components/respArea/ExplicitConstructedResponse.js +11 -33
  45. package/lib/components/respArea/ExplicitConstructedResponse.js.map +1 -1
  46. package/lib/components/respArea/InlineDropdown.js +19 -41
  47. package/lib/components/respArea/InlineDropdown.js.map +1 -1
  48. package/lib/components/respArea/ToolbarIcon.js +21 -45
  49. package/lib/components/respArea/ToolbarIcon.js.map +1 -1
  50. package/lib/constants.js +3 -5
  51. package/lib/constants.js.map +1 -1
  52. package/lib/extensions/component.js +94 -148
  53. package/lib/extensions/component.js.map +1 -1
  54. package/lib/extensions/css.js +9 -44
  55. package/lib/extensions/css.js.map +1 -1
  56. package/lib/extensions/custom-toolbar-wrapper.js +66 -94
  57. package/lib/extensions/custom-toolbar-wrapper.js.map +1 -1
  58. package/lib/extensions/extended-table.js +2 -6
  59. package/lib/extensions/extended-table.js.map +1 -1
  60. package/lib/extensions/image.js +4 -17
  61. package/lib/extensions/image.js.map +1 -1
  62. package/lib/extensions/index.js +11 -21
  63. package/lib/extensions/index.js.map +1 -1
  64. package/lib/extensions/math.js +45 -96
  65. package/lib/extensions/math.js.map +1 -1
  66. package/lib/extensions/media.js +21 -59
  67. package/lib/extensions/media.js.map +1 -1
  68. package/lib/extensions/responseArea.js +43 -89
  69. package/lib/extensions/responseArea.js.map +1 -1
  70. package/lib/index.js +3 -11
  71. package/lib/index.js.map +1 -1
  72. package/lib/styles/editorContainerStyles.js +2 -7
  73. package/lib/styles/editorContainerStyles.js.map +1 -1
  74. package/lib/theme.js +2 -3
  75. package/lib/theme.js.map +1 -1
  76. package/lib/utils/size.js +2 -10
  77. package/lib/utils/size.js.map +1 -1
  78. package/package.json +15 -13
  79. package/src/components/CharacterPicker.jsx +1 -0
  80. package/src/components/EditableHtml.jsx +21 -33
  81. package/src/components/MenuBar.jsx +66 -37
  82. package/src/components/TiptapContainer.jsx +133 -34
  83. package/src/components/characters/custom-popper.js +18 -28
  84. package/src/components/common/done-button.jsx +15 -26
  85. package/src/components/common/toolbar-buttons.jsx +28 -44
  86. package/src/components/icons/CssIcon.jsx +11 -13
  87. package/src/components/icons/RespArea.jsx +16 -16
  88. package/src/components/icons/TableIcons.jsx +15 -16
  89. package/src/components/icons/TextAlign.jsx +3 -3
  90. package/src/components/image/AltDialog.jsx +6 -6
  91. package/src/components/image/ImageToolbar.jsx +28 -29
  92. package/src/components/media/MediaDialog.js +61 -78
  93. package/src/components/media/MediaToolbar.jsx +30 -37
  94. package/src/components/media/MediaWrapper.jsx +12 -16
  95. package/src/components/respArea/DragInTheBlank/DragInTheBlank.jsx +5 -4
  96. package/src/components/respArea/DragInTheBlank/choice.jsx +191 -185
  97. package/src/components/respArea/ToolbarIcon.jsx +13 -15
  98. package/src/extensions/component.jsx +61 -89
  99. package/src/extensions/css.js +6 -5
  100. package/src/extensions/custom-toolbar-wrapper.jsx +61 -81
  101. package/lib/__tests__/utils.js +0 -106
  102. package/src/__tests__/utils.js +0 -36
@@ -1,52 +1,55 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = exports.ImageToolbar = void 0;
9
-
10
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
-
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
15
-
16
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
-
18
10
  var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
19
-
20
11
  var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
21
-
12
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
22
13
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
23
-
24
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
25
-
26
15
  var _react = _interopRequireDefault(require("react"));
27
-
28
16
  var _debug = _interopRequireDefault(require("debug"));
29
-
30
17
  var _reactDom = _interopRequireDefault(require("react-dom"));
31
-
32
- var _styles = require("@material-ui/core/styles");
33
-
34
- var _classnames = _interopRequireDefault(require("classnames"));
35
-
18
+ var _styles = require("@mui/material/styles");
36
19
  var _AltDialog = _interopRequireDefault(require("./AltDialog"));
37
-
38
20
  var _toolbarButtons = require("../common/toolbar-buttons");
39
-
40
- 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); }; }
41
-
42
- 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; } }
43
-
21
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
22
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
23
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
24
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
44
25
  var log = (0, _debug["default"])('@pie-lib:editable-html:plugins:image:image-toolbar');
45
-
46
- var AlignmentButton = function AlignmentButton(_ref) {
47
- var alignment = _ref.alignment,
48
- active = _ref.active,
49
- onClick = _ref.onClick;
26
+ var StyledHolder = (0, _styles.styled)('div')(function (_ref) {
27
+ var theme = _ref.theme;
28
+ return {
29
+ paddingLeft: theme.spacing.unit,
30
+ display: 'flex',
31
+ alignItems: 'center'
32
+ };
33
+ });
34
+ var StyledAltText = (0, _styles.styled)('span', {
35
+ shouldForwardProp: function shouldForwardProp(prop) {
36
+ return !['disabled', 'hasAlignmentButtons'].includes(prop);
37
+ }
38
+ })(function (_ref2) {
39
+ var disabled = _ref2.disabled,
40
+ hasAlignmentButtons = _ref2.hasAlignmentButtons;
41
+ return _objectSpread(_objectSpread({}, disabled && {
42
+ opacity: 0.5
43
+ }), hasAlignmentButtons && {
44
+ borderLeft: '1px solid grey',
45
+ paddingLeft: 8,
46
+ marginLeft: 4
47
+ });
48
+ });
49
+ var AlignmentButton = function AlignmentButton(_ref3) {
50
+ var alignment = _ref3.alignment,
51
+ active = _ref3.active,
52
+ onClick = _ref3.onClick;
50
53
  return /*#__PURE__*/_react["default"].createElement(_toolbarButtons.MarkButton, {
51
54
  active: active,
52
55
  onToggle: function onToggle() {
@@ -55,72 +58,53 @@ var AlignmentButton = function AlignmentButton(_ref) {
55
58
  label: alignment
56
59
  }, alignment);
57
60
  };
58
-
59
61
  AlignmentButton.propTypes = {
60
62
  alignment: _propTypes["default"].string.isRequired,
61
63
  active: _propTypes["default"].bool.isRequired,
62
64
  onClick: _propTypes["default"].func.isRequired
63
65
  };
64
-
65
- var ImageToolbar = /*#__PURE__*/function (_React$Component) {
66
- (0, _inherits2["default"])(ImageToolbar, _React$Component);
67
-
68
- var _super = _createSuper(ImageToolbar);
69
-
66
+ var ImageToolbar = exports.ImageToolbar = /*#__PURE__*/function (_React$Component) {
70
67
  function ImageToolbar() {
71
68
  var _this;
72
-
73
69
  (0, _classCallCheck2["default"])(this, ImageToolbar);
74
-
75
70
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
76
71
  args[_key] = arguments[_key];
77
72
  }
78
-
79
- _this = _super.call.apply(_super, [this].concat(args));
80
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onAltTextDone", function (newAlt) {
73
+ _this = _callSuper(this, ImageToolbar, [].concat(args));
74
+ (0, _defineProperty2["default"])(_this, "onAltTextDone", function (newAlt) {
81
75
  log('[onAltTextDone]: alt:', newAlt);
82
-
83
76
  _this.props.onChange({
84
77
  alt: newAlt
85
78
  }, true);
86
79
  });
87
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "onAlignmentClick", function (alignment) {
80
+ (0, _defineProperty2["default"])(_this, "onAlignmentClick", function (alignment) {
88
81
  log('[onAlignmentClick]: alignment:', alignment);
89
-
90
82
  _this.props.onChange({
91
83
  alignment: alignment
92
84
  });
93
85
  });
94
- (0, _defineProperty2["default"])((0, _assertThisInitialized2["default"])(_this), "renderDialog", function () {
86
+ (0, _defineProperty2["default"])(_this, "renderDialog", function () {
95
87
  var alt = _this.props.alt;
96
88
  var popoverEl = document.createElement('div');
97
-
98
89
  var el = /*#__PURE__*/_react["default"].createElement(_AltDialog["default"], {
99
90
  alt: alt,
100
91
  onDone: _this.onAltTextDone
101
92
  });
102
-
103
93
  _reactDom["default"].render(el, popoverEl);
104
-
105
94
  document.body.appendChild(popoverEl);
106
95
  });
107
96
  return _this;
108
97
  }
109
-
110
- (0, _createClass2["default"])(ImageToolbar, [{
98
+ (0, _inherits2["default"])(ImageToolbar, _React$Component);
99
+ return (0, _createClass2["default"])(ImageToolbar, [{
111
100
  key: "render",
112
101
  value: function render() {
113
- var _classNames,
114
- _this2 = this;
115
-
102
+ var _this2 = this;
116
103
  var _this$props = this.props,
117
- classes = _this$props.classes,
118
- alignment = _this$props.alignment,
119
- imageLoaded = _this$props.imageLoaded,
120
- disableImageAlignmentButtons = _this$props.disableImageAlignmentButtons;
121
- return /*#__PURE__*/_react["default"].createElement("div", {
122
- className: classes.holder
123
- }, !disableImageAlignmentButtons && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(AlignmentButton, {
104
+ alignment = _this$props.alignment,
105
+ imageLoaded = _this$props.imageLoaded,
106
+ disableImageAlignmentButtons = _this$props.disableImageAlignmentButtons;
107
+ return /*#__PURE__*/_react["default"].createElement(StyledHolder, null, !disableImageAlignmentButtons && /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, /*#__PURE__*/_react["default"].createElement(AlignmentButton, {
124
108
  alignment: 'left',
125
109
  active: alignment === 'left',
126
110
  onClick: this.onAlignmentClick
@@ -132,46 +116,22 @@ var ImageToolbar = /*#__PURE__*/function (_React$Component) {
132
116
  alignment: 'right',
133
117
  active: alignment === 'right',
134
118
  onClick: this.onAlignmentClick
135
- })), /*#__PURE__*/_react["default"].createElement("span", {
136
- className: (0, _classnames["default"])((_classNames = {}, (0, _defineProperty2["default"])(_classNames, classes.disabled, !imageLoaded), (0, _defineProperty2["default"])(_classNames, classes.altButton, !disableImageAlignmentButtons), _classNames)),
119
+ })), /*#__PURE__*/_react["default"].createElement(StyledAltText, {
120
+ disabled: !imageLoaded,
121
+ hasAlignmentButtons: !disableImageAlignmentButtons,
137
122
  onMouseDown: function onMouseDown(event) {
138
123
  return imageLoaded && _this2.renderDialog(event);
139
124
  }
140
125
  }, "Alt text"));
141
126
  }
142
127
  }]);
143
- return ImageToolbar;
144
128
  }(_react["default"].Component);
145
-
146
- exports.ImageToolbar = ImageToolbar;
147
129
  (0, _defineProperty2["default"])(ImageToolbar, "propTypes", {
148
130
  onChange: _propTypes["default"].func.isRequired,
149
- classes: _propTypes["default"].object.isRequired,
150
131
  alignment: _propTypes["default"].string,
151
132
  alt: _propTypes["default"].string,
152
133
  imageLoaded: _propTypes["default"].bool,
153
134
  disableImageAlignmentButtons: _propTypes["default"].bool
154
135
  });
155
-
156
- var styles = function styles(theme) {
157
- return {
158
- holder: {
159
- paddingLeft: theme.spacing.unit,
160
- display: 'flex',
161
- alignItems: 'center'
162
- },
163
- disabled: {
164
- opacity: 0.5
165
- },
166
- altButton: {
167
- borderLeft: '1px solid grey',
168
- paddingLeft: 8,
169
- marginLeft: 4
170
- }
171
- };
172
- };
173
-
174
- var _default = (0, _styles.withStyles)(styles)(ImageToolbar);
175
-
176
- exports["default"] = _default;
177
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ltYWdlL0ltYWdlVG9vbGJhci5qc3giXSwibmFtZXMiOlsibG9nIiwiQWxpZ25tZW50QnV0dG9uIiwiYWxpZ25tZW50IiwiYWN0aXZlIiwib25DbGljayIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsInN0cmluZyIsImlzUmVxdWlyZWQiLCJib29sIiwiZnVuYyIsIkltYWdlVG9vbGJhciIsIm5ld0FsdCIsInByb3BzIiwib25DaGFuZ2UiLCJhbHQiLCJwb3BvdmVyRWwiLCJkb2N1bWVudCIsImNyZWF0ZUVsZW1lbnQiLCJlbCIsIm9uQWx0VGV4dERvbmUiLCJSZWFjdERPTSIsInJlbmRlciIsImJvZHkiLCJhcHBlbmRDaGlsZCIsImNsYXNzZXMiLCJpbWFnZUxvYWRlZCIsImRpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnMiLCJob2xkZXIiLCJvbkFsaWdubWVudENsaWNrIiwiZGlzYWJsZWQiLCJhbHRCdXR0b24iLCJldmVudCIsInJlbmRlckRpYWxvZyIsIlJlYWN0IiwiQ29tcG9uZW50Iiwib2JqZWN0Iiwic3R5bGVzIiwidGhlbWUiLCJwYWRkaW5nTGVmdCIsInNwYWNpbmciLCJ1bml0IiwiZGlzcGxheSIsImFsaWduSXRlbXMiLCJvcGFjaXR5IiwiYm9yZGVyTGVmdCIsIm1hcmdpbkxlZnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7Ozs7OztBQUVBLElBQU1BLEdBQUcsR0FBRyx1QkFBTSxvREFBTixDQUFaOztBQUVBLElBQU1DLGVBQWUsR0FBRyxTQUFsQkEsZUFBa0IsT0FBb0M7QUFBQSxNQUFqQ0MsU0FBaUMsUUFBakNBLFNBQWlDO0FBQUEsTUFBdEJDLE1BQXNCLFFBQXRCQSxNQUFzQjtBQUFBLE1BQWRDLE9BQWMsUUFBZEEsT0FBYztBQUMxRCxzQkFDRSxnQ0FBQywwQkFBRDtBQUFZLElB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OztFQXREK0JFLGtCQUFNQyxTOzs7aUNBQTNCeEIsWSxlQUNRO0FBQ2pCRyxFQUFBQSxRQUFRLEVBQUVSLHNCQUFVSSxJQUFWLENBQWVGLFVBRFI7QUFFakJpQixFQUFBQSxPQUFPLEVBQUVuQixzQkFBVThCLE1BQVYsQ0FBaUI1QixVQUZUO0FBR2pCTixFQUFBQSxTQUFTLEVBQUVJLHNCQUFVQyxNQUhKO0FBSWpCUSxFQUFBQSxHQUFHLEVBQUVULHNCQUFVQyxNQUpFO0FBS2pCbUIsRUFBQUEsV0FBVyxFQUFFcEIsc0JBQVVHLElBTE47QUFNakJrQixFQUFBQSw0QkFBNEIsRUFBRXJCLHNCQUFVRztBQU52QixDOztBQXdEckIsSUFBTTRCLE1BQU0sR0FBRyxTQUFUQSxNQUFTLENBQUNDLEtBQUQ7QUFBQSxTQUFZO0FBQ3pCVixJQUFBQSxNQUFNLEVBQUU7QUFDTlcsTUFBQUEsV0FBVyxFQUFFRCxLQUFLLENBQUNFLE9BQU4sQ0FBY0MsSUFEckI7QUFFTkMsTUFBQUEsT0FBTyxFQUFFLE1BRkg7QUFHTkMsTUFBQUEsVUFBVSxFQUFFO0FBSE4sS0FEaUI7QUFNekJiLElBQUFBLFFBQVEsRUFBRTtBQUNSYyxNQUFBQSxPQUFPLEVBQUU7QUFERCxLQU5lO0FBU3pCYixJQUFBQSxTQUFTLEVBQUU7QUFDVGMsTUFBQUEsVUFBVSxFQUFFLGdCQURIO0FBRVROLE1BQUFBLFdBQVcsRUFBRSxDQUZKO0FBR1RPLE1BQUFBLFVBQVUsRUFBRTtBQUhIO0FBVGMsR0FBWjtBQUFBLENBQWY7O2VBZ0JlLHdCQUFXVCxNQUFYLEVBQW1CMUIsWUFBbkIsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IGRlYnVnIGZyb20gJ2RlYnVnJztcbmltcG9ydCBSZWFjdERPTSBmcm9tICdyZWFjdC1kb20nO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL3N0eWxlcyc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICdjbGFzc25hbWVzJztcblxuaW1wb3J0IEFsdERpYWxvZyBmcm9tICcuL0FsdERpYWxvZyc7XG5pbXBvcnQgeyBNYXJrQnV0dG9uIH0gZnJvbSAnLi4vY29tbW9uL3Rvb2xiYXItYnV0dG9ucyc7XG5cbmNvbnN0IGxvZyA9IGRlYnVnKCdAcGllLWxpYjplZGl0YWJsZS1odG1sOnBsdWdpbnM6aW1hZ2U6aW1hZ2UtdG9vbGJhcicpO1xuXG5jb25zdCBBbGlnbm1lbnRCdXR0b24gPSAoeyBhbGlnbm1lbnQsIGFjdGl2ZSwgb25DbGljayB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPE1hcmtCdXR0b24gYWN0aXZlPXthY3RpdmV9IG9uVG9nZ2xlPXsoKSA9PiBvbkNsaWNrKGFsaWdubWVudCl9IGxhYmVsPXthbGlnbm1lbnR9PlxuICAgICAge2FsaWdubWVudH1cbiAgICA8L01hcmtCdXR0b24+XG4gICk7XG59O1xuXG5BbGlnbm1lbnRCdXR0b24ucHJvcFR5cGVzID0ge1xuICBhbGlnbm1lbnQ6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgYWN0aXZlOiBQcm9wVHlwZXMuYm9vbC5pc1JlcXVpcmVkLFxuICBvbkNsaWNrOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxufTtcblxuZXhwb3J0IGNsYXNzIEltYWdlVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgY2xhc3NlczogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICAgIGFsaWdubWVudDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBhbHQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgaW1hZ2VMb2FkZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgIGRpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnM6IFByb3BUeXBlcy5ib29sLFxuICB9O1xuXG4gIG9uQWx0VGV4dERvbmUgPSAobmV3QWx0KSA9PiB7XG4gICAgbG9nKCdbb25BbHRUZXh0RG9uZV06IGFsdDonLCBuZXdBbHQpO1xuXG4gICAgdGhpcy5wcm9wcy5vbkNoYW5nZSh7IGFsdDogbmV3QWx0IH0sIHRydWUpO1xuICB9O1xuXG4gIG9uQWxpZ25tZW50Q2xpY2sgPSAoYWxpZ25tZW50KSA9PiB7XG4gICAgbG9nKCdbb25BbGlnbm1lbnRDbGlja106IGFsaWdubWVudDonLCBhbGlnbm1lbnQpO1xuICAgIHRoaXMucHJvcHMub25DaGFuZ2UoeyBhbGlnbm1lbnQgfSk7XG4gIH07XG5cbiAgcmVuZGVyRGlhbG9nID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgYWx0IH0gPSB0aGlzLnByb3BzO1xuICAgIGNvbnN0IHBvcG92ZXJFbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuXG4gICAgY29uc3QgZWwgPSA8QWx0RGlhbG9nIGFsdD17YWx0fSBvbkRvbmU9e3RoaXMub25BbHRUZXh0RG9uZX0gLz47XG5cbiAgICBSZWFjdERPTS5yZW5kZXIoZWwsIHBvcG92ZXJFbCk7XG5cbiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHBvcG92ZXJFbCk7XG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHsgY2xhc3NlcywgYWxpZ25tZW50LCBpbWFnZUxvYWRlZCwgZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyB9ID0gdGhpcy5wcm9wcztcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzZXMuaG9sZGVyfT5cbiAgICAgICAgeyFkaXNhYmxlSW1hZ2VBbGlnbm1lbnRCdXR0b25zICYmIChcbiAgICAgICAgICA8PlxuICAgICAgICAgICAgPEFsaWdubWVudEJ1dHRvbiBhbGlnbm1lbnQ9eydsZWZ0J30gYWN0aXZlPXthbGlnbm1lbnQgPT09ICdsZWZ0J30gb25DbGljaz17dGhpcy5vbkFsaWdubWVudENsaWNrfSAvPlxuICAgICAgICAgICAgPEFsaWdubWVudEJ1dHRvbiBhbGlnbm1lbnQ9eydjZW50ZXInfSBhY3RpdmU9e2FsaWdubWVudCA9PT0gJ2NlbnRlcid9IG9uQ2xpY2s9e3RoaXMub25BbGlnbm1lbnRDbGlja30gLz5cbiAgICAgICAgICAgIDxBbGlnbm1lbnRCdXR0b24gYWxpZ25tZW50PXsncmlnaHQnfSBhY3RpdmU9e2FsaWdubWVudCA9PT0gJ3JpZ2h0J30gb25DbGljaz17dGhpcy5vbkFsaWdubWVudENsaWNrfSAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApfVxuICAgICAgICA8c3BhblxuICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lcyh7XG4gICAgICAgICAgICBbY2xhc3Nlcy5kaXNhYmxlZF06ICFpbWFnZUxvYWRlZCxcbiAgICAgICAgICAgIFtjbGFzc2VzLmFsdEJ1dHRvbl06ICFkaXNhYmxlSW1hZ2VBbGlnbm1lbnRCdXR0b25zLFxuICAgICAgICAgIH0pfVxuICAgICAgICAgIG9uTW91c2VEb3duPXsoZXZlbnQpID0+IGltYWdlTG9hZGVkICYmIHRoaXMucmVuZGVyRGlhbG9nKGV2ZW50KX1cbiAgICAgICAgPlxuICAgICAgICAgIEFsdCB0ZXh0XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbn1cblxuY29uc3Qgc3R5bGVzID0gKHRoZW1lKSA9PiAoe1xuICBob2xkZXI6IHtcbiAgICBwYWRkaW5nTGVmdDogdGhlbWUuc3BhY2luZy51bml0LFxuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgfSxcbiAgZGlzYWJsZWQ6IHtcbiAgICBvcGFjaXR5OiAwLjUsXG4gIH0sXG4gIGFsdEJ1dHRvbjoge1xuICAgIGJvcmRlckxlZnQ6ICcxcHggc29saWQgZ3JleScsXG4gICAgcGFkZGluZ0xlZnQ6IDgsXG4gICAgbWFyZ2luTGVmdDogNCxcbiAgfSxcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGVzKHN0eWxlcykoSW1hZ2VUb29sYmFyKTtcbiJdfQ==
136
+ var _default = exports["default"] = ImageToolbar;
137
+ //# sourceMappingURL=ImageToolbar.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/image/ImageToolbar.jsx"],"names":["log","AlignmentButton","alignment","active","onClick","propTypes","PropTypes","string","isRequired","bool","func","ImageToolbar","newAlt","props","onChange","alt","popoverEl","document","createElement","el","onAltTextDone","ReactDOM","render","body","appendChild","classes","imageLoaded","disableImageAlignmentButtons","holder","onAlignmentClick","disabled","altButton","event","renderDialog","React","Component","object","styles","theme","paddingLeft","spacing","unit","display","alignItems","opacity","borderLeft","marginLeft"],"mappings":"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","sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport debug from 'debug';\nimport ReactDOM from 'react-dom';\nimport { withStyles } from '@material-ui/core/styles';\nimport classNames from 'classnames';\n\nimport AltDialog from './AltDialog';\nimport { MarkButton } from '../common/toolbar-buttons';\n\nconst log = debug('@pie-lib:editable-html:plugins:image:image-toolbar');\n\nconst AlignmentButton = ({ alignment, active, onClick }) => {\n return (\n <MarkButton active={active} onToggle={() => onClick(alignment)} label={alignment}>\n {alignment}\n </MarkButton>\n );\n};\n\nAlignmentButton.propTypes = {\n alignment: PropTypes.string.isRequired,\n active: PropTypes.bool.isRequired,\n onClick: PropTypes.func.isRequired,\n};\n\nexport class ImageToolbar extends React.Component {\n static propTypes = {\n onChange: PropTypes.func.isRequired,\n classes: PropTypes.object.isRequired,\n alignment: PropTypes.string,\n alt: PropTypes.string,\n imageLoaded: PropTypes.bool,\n disableImageAlignmentButtons: PropTypes.bool,\n };\n\n onAltTextDone = (newAlt) => {\n log('[onAltTextDone]: alt:', newAlt);\n\n this.props.onChange({ alt: newAlt }, true);\n };\n\n onAlignmentClick = (alignment) => {\n log('[onAlignmentClick]: alignment:', alignment);\n this.props.onChange({ alignment });\n };\n\n renderDialog = () => {\n const { alt } = this.props;\n const popoverEl = document.createElement('div');\n\n const el = <AltDialog alt={alt} onDone={this.onAltTextDone} />;\n\n ReactDOM.render(el, popoverEl);\n\n document.body.appendChild(popoverEl);\n };\n\n render() {\n const { classes, alignment, imageLoaded, disableImageAlignmentButtons } = this.props;\n return (\n <div className={classes.holder}>\n {!disableImageAlignmentButtons && (\n <>\n <AlignmentButton alignment={'left'} active={alignment === 'left'} onClick={this.onAlignmentClick} />\n <AlignmentButton alignment={'center'} active={alignment === 'center'} onClick={this.onAlignmentClick} />\n <AlignmentButton alignment={'right'} active={alignment === 'right'} onClick={this.onAlignmentClick} />\n </>\n )}\n <span\n className={classNames({\n [classes.disabled]: !imageLoaded,\n [classes.altButton]: !disableImageAlignmentButtons,\n })}\n onMouseDown={(event) => imageLoaded && this.renderDialog(event)}\n >\n Alt text\n </span>\n </div>\n );\n }\n}\n\nconst styles = (theme) => ({\n holder: {\n paddingLeft: theme.spacing.unit,\n display: 'flex',\n alignItems: 'center',\n },\n disabled: {\n opacity: 0.5,\n },\n altButton: {\n borderLeft: '1px solid grey',\n paddingLeft: 8,\n marginLeft: 4,\n },\n});\n\nexport default withStyles(styles)(ImageToolbar);\n"],"file":"ImageToolbar.js"}
1
+ {"version":3,"file":"ImageToolbar.js","names":["_propTypes","_interopRequireDefault","require","_react","_debug","_reactDom","_styles","_AltDialog","_toolbarButtons","_callSuper","t","o","e","_getPrototypeOf2","_possibleConstructorReturn2","_isNativeReflectConstruct","Reflect","construct","constructor","apply","Boolean","prototype","valueOf","call","ownKeys","r","Object","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","log","debug","StyledHolder","styled","_ref","theme","paddingLeft","spacing","unit","display","alignItems","StyledAltText","shouldForwardProp","prop","includes","_ref2","disabled","hasAlignmentButtons","opacity","borderLeft","marginLeft","AlignmentButton","_ref3","alignment","active","onClick","createElement","MarkButton","onToggle","label","propTypes","PropTypes","string","isRequired","bool","func","ImageToolbar","exports","_React$Component","_this","_classCallCheck2","_len","args","Array","_key","concat","newAlt","props","onChange","alt","popoverEl","document","el","onDone","onAltTextDone","ReactDOM","render","body","appendChild","_inherits2","_createClass2","key","value","_this2","_this$props","imageLoaded","disableImageAlignmentButtons","Fragment","onAlignmentClick","onMouseDown","event","renderDialog","React","Component","_default"],"sources":["../../../src/components/image/ImageToolbar.jsx"],"sourcesContent":["import PropTypes from 'prop-types';\nimport React from 'react';\nimport debug from 'debug';\nimport ReactDOM from 'react-dom';\nimport { styled } from '@mui/material/styles';\n\nimport AltDialog from './AltDialog';\nimport { MarkButton } from '../common/toolbar-buttons';\n\nconst log = debug('@pie-lib:editable-html:plugins:image:image-toolbar');\n\nconst StyledHolder = styled('div')(({ theme }) => ({\n paddingLeft: theme.spacing.unit,\n display: 'flex',\n alignItems: 'center',\n}));\n\nconst StyledAltText = styled('span', {\n shouldForwardProp: (prop) => !['disabled', 'hasAlignmentButtons'].includes(prop),\n})(({ disabled, hasAlignmentButtons }) => ({\n ...(disabled && {\n opacity: 0.5,\n }),\n ...(hasAlignmentButtons && {\n borderLeft: '1px solid grey',\n paddingLeft: 8,\n marginLeft: 4,\n }),\n}));\n\nconst AlignmentButton = ({ alignment, active, onClick }) => {\n return (\n <MarkButton active={active} onToggle={() => onClick(alignment)} label={alignment}>\n {alignment}\n </MarkButton>\n );\n};\n\nAlignmentButton.propTypes = {\n alignment: PropTypes.string.isRequired,\n active: PropTypes.bool.isRequired,\n onClick: PropTypes.func.isRequired,\n};\n\nexport class ImageToolbar extends React.Component {\n static propTypes = {\n onChange: PropTypes.func.isRequired,\n alignment: PropTypes.string,\n alt: PropTypes.string,\n imageLoaded: PropTypes.bool,\n disableImageAlignmentButtons: PropTypes.bool,\n };\n\n onAltTextDone = (newAlt) => {\n log('[onAltTextDone]: alt:', newAlt);\n\n this.props.onChange({ alt: newAlt }, true);\n };\n\n onAlignmentClick = (alignment) => {\n log('[onAlignmentClick]: alignment:', alignment);\n this.props.onChange({ alignment });\n };\n\n renderDialog = () => {\n const { alt } = this.props;\n const popoverEl = document.createElement('div');\n\n const el = <AltDialog alt={alt} onDone={this.onAltTextDone} />;\n\n ReactDOM.render(el, popoverEl);\n\n document.body.appendChild(popoverEl);\n };\n\n render() {\n const { alignment, imageLoaded, disableImageAlignmentButtons } = this.props;\n return (\n <StyledHolder>\n {!disableImageAlignmentButtons && (\n <>\n <AlignmentButton alignment={'left'} active={alignment === 'left'} onClick={this.onAlignmentClick} />\n <AlignmentButton alignment={'center'} active={alignment === 'center'} onClick={this.onAlignmentClick} />\n <AlignmentButton alignment={'right'} active={alignment === 'right'} onClick={this.onAlignmentClick} />\n </>\n )}\n <StyledAltText\n disabled={!imageLoaded}\n hasAlignmentButtons={!disableImageAlignmentButtons}\n onMouseDown={(event) => imageLoaded && this.renderDialog(event)}\n >\n Alt text\n </StyledAltText>\n </StyledHolder>\n );\n }\n}\n\nexport default ImageToolbar;\n"],"mappings":"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","ignoreList":[]}
@@ -1,25 +1,18 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports["default"] = void 0;
9
-
10
8
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
-
12
9
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
13
-
14
10
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
-
16
11
  var _debug = _interopRequireDefault(require("debug"));
17
-
18
- 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; }
19
-
20
- 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; }
21
-
12
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
13
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
22
14
  var log = (0, _debug["default"])('@pie-lib:editable-html:image:insert-image-handler');
15
+
23
16
  /**
24
17
  * Handles user selection, insertion (or cancellation) of an image into the editor.
25
18
  * @param {Block} placeholderBlock - a block that has been added to the editor as a place holder for the image
@@ -28,11 +21,9 @@ var log = (0, _debug["default"])('@pie-lib:editable-html:image:insert-image-hand
28
21
  * @param {Function} onChange - callback to notify changes applied by the handler
29
22
  * @param {Boolean} isPasted - a boolean that keeps track if the file is pasted
30
23
  */
31
-
32
24
  var InsertImageHandler = /*#__PURE__*/function () {
33
25
  function InsertImageHandler(editor, node, onFinish) {
34
26
  var _this = this;
35
-
36
27
  var isPasted = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
37
28
  (0, _classCallCheck2["default"])(this, InsertImageHandler);
38
29
  this.editor = editor;
@@ -49,27 +40,25 @@ var InsertImageHandler = /*#__PURE__*/function () {
49
40
  this.isPasted = isPasted;
50
41
  this.chosenFile = null;
51
42
  }
52
-
53
- (0, _createClass2["default"])(InsertImageHandler, [{
43
+ return (0, _createClass2["default"])(InsertImageHandler, [{
54
44
  key: "cancel",
55
45
  value: function cancel() {
56
46
  log('insert cancelled');
57
-
58
47
  try {
59
48
  this.deleteNode();
60
49
  this.onFinish(false);
61
- } catch (err) {//
50
+ } catch (err) {
51
+ //
62
52
  }
63
53
  }
64
54
  }, {
65
55
  key: "updateNode",
66
56
  value: function updateNode(newAttrs) {
67
57
  var _this$editor = this.editor,
68
- state = _this$editor.state,
69
- view = _this$editor.view;
58
+ state = _this$editor.state,
59
+ view = _this$editor.view;
70
60
  var tr = state.tr;
71
61
  var node = state.doc.nodeAt(this.nodePos);
72
-
73
62
  if (node) {
74
63
  var transaction = tr.setNodeMarkup(this.nodePos, undefined, _objectSpread(_objectSpread({}, node.attrs), newAttrs));
75
64
  view.dispatch(transaction);
@@ -79,8 +68,8 @@ var InsertImageHandler = /*#__PURE__*/function () {
79
68
  key: "deleteNode",
80
69
  value: function deleteNode() {
81
70
  var _this$editor2 = this.editor,
82
- state = _this$editor2.state,
83
- view = _this$editor2.view;
71
+ state = _this$editor2.state,
72
+ view = _this$editor2.view;
84
73
  var tr = state.tr;
85
74
  var transaction = tr["delete"](this.nodePos, this.nodePos + this.node.nodeSize);
86
75
  view.dispatch(transaction);
@@ -89,7 +78,6 @@ var InsertImageHandler = /*#__PURE__*/function () {
89
78
  key: "done",
90
79
  value: function done(err, src) {
91
80
  log('done: err:', err);
92
-
93
81
  if (err) {
94
82
  //eslint-disable-next-line
95
83
  console.log(err);
@@ -103,34 +91,30 @@ var InsertImageHandler = /*#__PURE__*/function () {
103
91
  this.onFinish(true);
104
92
  }
105
93
  }
94
+
106
95
  /**
107
96
  * Notify handler that the user chose a file - will create a change with a preview in the editor.
108
97
  *
109
98
  * @param {File} file - the file that the user chose using a file input.
110
99
  */
111
-
112
100
  }, {
113
101
  key: "fileChosen",
114
102
  value: function fileChosen(file) {
115
103
  var _this2 = this;
116
-
117
104
  if (!file) {
118
105
  return;
119
- } // Save the chosen file to this.chosenFile
120
-
106
+ }
121
107
 
108
+ // Save the chosen file to this.chosenFile
122
109
  this.chosenFile = file;
123
110
  log('[fileChosen] file: ', file);
124
111
  var reader = new FileReader();
125
-
126
112
  reader.onload = function () {
127
113
  var dataURL = reader.result;
128
-
129
114
  _this2.updateNode({
130
115
  src: dataURL
131
116
  });
132
117
  };
133
-
134
118
  reader.readAsDataURL(file);
135
119
  }
136
120
  }, {
@@ -140,17 +124,15 @@ var InsertImageHandler = /*#__PURE__*/function () {
140
124
  this.updateNode({
141
125
  percent: percent
142
126
  });
143
- } // Add a getter method to retrieve the chosen file
127
+ }
144
128
 
129
+ // Add a getter method to retrieve the chosen file
145
130
  }, {
146
131
  key: "getChosenFile",
147
132
  value: function getChosenFile() {
148
133
  return this.chosenFile;
149
134
  }
150
135
  }]);
151
- return InsertImageHandler;
152
136
  }();
153
-
154
- var _default = InsertImageHandler;
155
- exports["default"] = _default;
156
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ltYWdlL0luc2VydEltYWdlSGFuZGxlci5qcyJdLCJuYW1lcyI6WyJsb2ciLCJJbnNlcnRJbWFnZUhhbmRsZXIiLCJlZGl0b3IiLCJub2RlIiwib25GaW5pc2giLCJpc1Bhc3RlZCIsIm5vZGVQb3MiLCJzdGF0ZSIsImRvYyIsImRlc2NlbmRhbnRzIiwicG9zIiwiY2hvc2VuRmlsZSIsImRlbGV0ZU5vZGUiLCJlcnIiLCJuZXdBdHRycyIsInZpZXciLCJ0ciIsIm5vZGVBdCIsInRyYW5zYWN0aW9uIiwic2V0Tm9kZU1hcmt1cCIsInVuZGVmaW5lZCIsImF0dHJzIiwiZGlzcGF0Y2giLCJub2RlU2l6ZSIsInNyYyIsImNvbnNvbGUiLCJ1cGRhdGVOb2RlIiwibG9hZGVkIiwicGVyY2VudCIsImZpbGUiLCJyZWFkZXIiLCJGaWxlUmVhZGVyIiwib25sb2FkIiwiZGF0YVVSTCIsInJlc3VsdCIsInJlYWRBc0RhdGFVUkwiLCJieXRlcyIsInRvdGFsIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFBQTs7Ozs7O0FBRUEsSUFBTUEsR0FBRyxHQUFHLHVCQUFNLG1EQUFOLENBQVo7QUFFQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztJQUNNQyxrQjtBQUNKLDhCQUFZQyxNQUFaLEVBQW9CQyxJQUFwQixFQUEwQkMsUUFBMUIsRUFBc0Q7QUFBQTs7QUFBQSxRQUFsQkMsUUFBa0IsdUVBQVAsS0FBTztBQUFBO0FBQ3BELFNBQUtILE1BQUwsR0FBY0EsTUFBZDtBQUNBLFNBQUtDLElBQUwsR0FBWUEsSUFBWjtBQUVBLFFBQUlHLE9BQUo7QUFFQUosSUFBQUEsTUFBTSxDQUFDSyxLQUFQLENBQWFDLEdBQWIsQ0FBaUJDLFdBQWpCLENBQTZCLFVBQUNOLElBQUQsRUFBT08sR0FBUCxFQUFlO0FBQzFDLFVBQUlQLElBQUksS0FBSyxLQUFJLENBQUNBLElBQWxCLEVBQXdCO0FBQ3RCRyxRQUFBQSxP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QztBQUM5QnJDLE1BQUFBLEdBQUcsQ0FBQyxZQUFELEVBQWU0QixPQUFmLEVBQXdCUSxLQUF4QixFQUErQkMsS0FBL0IsQ0FBSDtBQUNBLFdBQUtYLFVBQUwsQ0FBZ0I7QUFBRUUsUUFBQUEsT0FBTyxFQUFQQTtBQUFGLE9BQWhCO0FBQ0QsSyxDQUVEOzs7O1dBQ0EseUJBQWdCO0FBQ2QsYUFBTyxLQUFLakIsVUFBWjtBQUNEOzs7OztlQUdZVixrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkZWJ1ZyBmcm9tICdkZWJ1Zyc7XG5cbmNvbnN0IGxvZyA9IGRlYnVnKCdAcGllLWxpYjplZGl0YWJsZS1odG1sOmltYWdlOmluc2VydC1pbWFnZS1oYW5kbGVyJyk7XG5cbi8qKlxuICogSGFuZGxlcyB1c2VyIHNlbGVjdGlvbiwgaW5zZXJ0aW9uIChvciBjYW5jZWxsYXRpb24pIG9mIGFuIGltYWdlIGludG8gdGhlIGVkaXRvci5cbiAqIEBwYXJhbSB7QmxvY2t9IHBsYWNlaG9sZGVyQmxvY2sgLSBhIGJsb2NrIHRoYXQgaGFzIGJlZW4gYWRkZWQgdG8gdGhlIGVkaXRvciBhcyBhIHBsYWNlIGhvbGRlciBmb3IgdGhlIGltYWdlXG4gKiBAcGFyYW0ge0Z1bmN0aW9ufSBvbkZpbmlzaCAtIGEgZnVuY3Rpb24gdG8gY2FsbCBpZiB1cGxvYWRpbmcgZmFpbHMgb3Igc3VjY2VlZHNcbiAqIEBwYXJhbSB7RnVuY3Rpb259IGdldFZhbHVlIC0gYSBmdW5jdGlvbiB0byByZXR1cm4gdGhlIHZhbHVlIG9mIHRoZSBlZGl0b3JcbiAqIEBwYXJhbSB7RnVuY3Rpb259IG9uQ2hhbmdlIC0gY2FsbGJhY2sgdG8gbm90aWZ5IGNoYW5nZXMgYXBwbGllZCBieSB0aGUgaGFuZGxlclxuICogQHBhcmFtIHtCb29sZWFufSBpc1Bhc3RlZCAtIGEgYm9vbGVhbiB0aGF0IGtlZXBzIHRyYWNrIGlmIHRoZSBmaWxlIGlzIHBhc3RlZFxuICovXG5jbGFzcyBJbnNlcnRJbWFnZUhhbmRsZXIge1xuICBjb25zdHJ1Y3RvcihlZGl0b3IsIG5vZGUsIG9uRmluaXNoLCBpc1Bhc3RlZCA9IGZhbHNlKSB7XG4gICAgdGhpcy5lZGl0b3IgPSBlZGl0b3I7XG4gICAgdGhpcy5ub2RlID0gbm9kZTtcblxuICAgIGxldCBub2RlUG9zO1xuXG4gICAgZWRpdG9yLnN0YXRlLmRvYy5kZXNjZW5kYW50cygobm9kZSwgcG9zKSA9PiB7XG4gICAgICBpZiAobm9kZSA9PT0gdGhpcy5ub2RlKSB7XG4gICAgICAgIG5vZGVQb3MgPSBwb3M7XG4gICAgICAgIHJldHVybiBmYWxzZVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5ub2RlUG9zID0gbm9kZVBvcztcbiAgICB0aGlzLm9uRmluaXNoID0gb25GaW5pc2g7XG4gICAgdGhpcy5pc1Bhc3RlZCA9IGlzUGFzdGVkO1xuICAgIHRoaXMuY2hvc2VuRmlsZSA9IG51bGw7XG4gIH1cblxuICBjYW5jZWwoKSB7XG4gICAgbG9nKCdpbnNlcnQgY2FuY2VsbGVkJyk7XG5cbiAgICB0cnkge1xuICAgICAgdGhpcy5kZWxldGVOb2RlKCk7XG4gICAgICB0aGlzLm9uRmluaXNoKGZhbHNlKTtcbiAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgIC8vXG4gICAgfVxuICB9XG5cbiAgdXBkYXRlTm9kZShuZXdBdHRycykge1xuICAgIGNvbnN0IHsgc3RhdGUsIHZpZXcgfSA9IHRoaXMuZWRpdG9yO1xuICAgIGNvbnN0IHsgdHIgfSA9IHN0YXRlO1xuICAgIGNvbnN0IG5vZGUgPSBzdGF0ZS5kb2Mubm9kZUF0KHRoaXMubm9kZVBvcyk7XG5cbiAgICBpZiAobm9kZSkge1xuICAgICAgY29uc3QgdHJhbnNhY3Rpb24gPSB0ci5zZXROb2RlTWFya3VwKHRoaXMubm9kZVBvcywgdW5kZWZpbmVkLCB7IC4uLm5vZGUuYXR0cnMsIC4uLm5ld0F0dHJzIH0pO1xuXG4gICAgICB2aWV3LmRpc3BhdGNoKHRyYW5zYWN0aW9uKTtcbiAgICB9XG4gIH1cblxuICBkZWxldGVOb2RlKCkge1xuICAgIGNvbnN0IHsgc3RhdGUsIHZpZXcgfSA9IHRoaXMuZWRpdG9yO1xuICAgIGNvbnN0IHsgdHIgfSA9IHN0YXRlO1xuXG4gICAgY29uc3QgdHJhbnNhY3Rpb24gPSB0ci5kZWxldGUodGhpcy5ub2RlUG9zLCB0aGlzLm5vZGVQb3MgKyB0aGlzLm5vZGUubm9kZVNpemUpO1xuXG4gICAgdmlldy5kaXNwYXRjaCh0cmFuc2FjdGlvbik7XG4gIH1cblxuICBkb25lKGVyciwgc3JjKSB7XG4gICAgbG9nKCdkb25lOiBlcnI6JywgZXJyKTtcbiAgICBpZiAoZXJyKSB7XG4gICAgICAvL2VzbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgICAgY29uc29sZS5sb2coZXJyKTtcbiAgICAgIHRoaXMub25GaW5pc2goZmFsc2UpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnVwZGF0ZU5vZGUoeyBsb2FkZWQ6IHRydWUsIHNyYywgcGVyY2VudDogMTAwIH0pO1xuICAgICAgdGhpcy5vbkZpbmlzaCh0cnVlKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTm90aWZ5IGhhbmRsZXIgdGhhdCB0aGUgdXNlciBjaG9zZSBhIGZpbGUgLSB3aWxsIGNyZWF0ZSBhIGNoYW5nZSB3aXRoIGEgcHJldmlldyBpbiB0aGUgZWRpdG9yLlxuICAgKlxuICAgKiBAcGFyYW0ge0ZpbGV9IGZpbGUgLSB0aGUgZmlsZSB0aGF0IHRoZSB1c2VyIGNob3NlIHVzaW5nIGEgZmlsZSBpbnB1dC5cbiAgICovXG4gIGZpbGVDaG9zZW4oZmlsZSkge1xuICAgIGlmICghZmlsZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFNhdmUgdGhlIGNob3NlbiBmaWxlIHRvIHRoaXMuY2hvc2VuRmlsZVxuICAgIHRoaXMuY2hvc2VuRmlsZSA9IGZpbGU7XG5cbiAgICBsb2coJ1tmaWxlQ2hvc2VuXSBmaWxlOiAnLCBmaWxlKTtcbiAgICBjb25zdCByZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAgIHJlYWRlci5vbmxvYWQgPSAoKSA9PiB7XG4gICAgICBjb25zdCBkYXRhVVJMID0gcmVhZGVyLnJlc3VsdDtcblxuICAgICAgdGhpcy51cGRhdGVOb2RlKHsgc3JjOiBkYXRhVVJMIH0pO1xuICAgIH07XG4gICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSk7XG4gIH1cblxuICBwcm9ncmVzcyhwZXJjZW50LCBieXRlcywgdG90YWwpIHtcbiAgICBsb2coJ3Byb2dyZXNzOiAnLCBwZXJjZW50LCBieXRlcywgdG90YWwpO1xuICAgIHRoaXMudXBkYXRlTm9kZSh7IHBlcmNlbnQgfSk7XG4gIH1cblxuICAvLyBBZGQgYSBnZXR0ZXIgbWV0aG9kIHRvIHJldHJpZXZlIHRoZSBjaG9zZW4gZmlsZVxuICBnZXRDaG9zZW5GaWxlKCkge1xuICAgIHJldHVybiB0aGlzLmNob3NlbkZpbGU7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgSW5zZXJ0SW1hZ2VIYW5kbGVyO1xuIl19
137
+ var _default = exports["default"] = InsertImageHandler;
138
+ //# sourceMappingURL=InsertImageHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/image/InsertImageHandler.js"],"names":["log","InsertImageHandler","editor","node","onFinish","isPasted","nodePos","state","doc","descendants","pos","chosenFile","deleteNode","err","newAttrs","view","tr","nodeAt","transaction","setNodeMarkup","undefined","attrs","dispatch","nodeSize","src","console","updateNode","loaded","percent","file","reader","FileReader","onload","dataURL","result","readAsDataURL","bytes","total"],"mappings":"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","sourcesContent":["import debug from 'debug';\n\nconst log = debug('@pie-lib:editable-html:image:insert-image-handler');\n\n/**\n * Handles user selection, insertion (or cancellation) of an image into the editor.\n * @param {Block} placeholderBlock - a block that has been added to the editor as a place holder for the image\n * @param {Function} onFinish - a function to call if uploading fails or succeeds\n * @param {Function} getValue - a function to return the value of the editor\n * @param {Function} onChange - callback to notify changes applied by the handler\n * @param {Boolean} isPasted - a boolean that keeps track if the file is pasted\n */\nclass InsertImageHandler {\n constructor(editor, node, onFinish, isPasted = false) {\n this.editor = editor;\n this.node = node;\n\n let nodePos;\n\n editor.state.doc.descendants((node, pos) => {\n if (node === this.node) {\n nodePos = pos;\n return false\n }\n });\n\n this.nodePos = nodePos;\n this.onFinish = onFinish;\n this.isPasted = isPasted;\n this.chosenFile = null;\n }\n\n cancel() {\n log('insert cancelled');\n\n try {\n this.deleteNode();\n this.onFinish(false);\n } catch (err) {\n //\n }\n }\n\n updateNode(newAttrs) {\n const { state, view } = this.editor;\n const { tr } = state;\n const node = state.doc.nodeAt(this.nodePos);\n\n if (node) {\n const transaction = tr.setNodeMarkup(this.nodePos, undefined, { ...node.attrs, ...newAttrs });\n\n view.dispatch(transaction);\n }\n }\n\n deleteNode() {\n const { state, view } = this.editor;\n const { tr } = state;\n\n const transaction = tr.delete(this.nodePos, this.nodePos + this.node.nodeSize);\n\n view.dispatch(transaction);\n }\n\n done(err, src) {\n log('done: err:', err);\n if (err) {\n //eslint-disable-next-line\n console.log(err);\n this.onFinish(false);\n } else {\n this.updateNode({ loaded: true, src, percent: 100 });\n this.onFinish(true);\n }\n }\n\n /**\n * Notify handler that the user chose a file - will create a change with a preview in the editor.\n *\n * @param {File} file - the file that the user chose using a file input.\n */\n fileChosen(file) {\n if (!file) {\n return;\n }\n\n // Save the chosen file to this.chosenFile\n this.chosenFile = file;\n\n log('[fileChosen] file: ', file);\n const reader = new FileReader();\n reader.onload = () => {\n const dataURL = reader.result;\n\n this.updateNode({ src: dataURL });\n };\n reader.readAsDataURL(file);\n }\n\n progress(percent, bytes, total) {\n log('progress: ', percent, bytes, total);\n this.updateNode({ percent });\n }\n\n // Add a getter method to retrieve the chosen file\n getChosenFile() {\n return this.chosenFile;\n }\n}\n\nexport default InsertImageHandler;\n"],"file":"InsertImageHandler.js"}
1
+ {"version":3,"file":"InsertImageHandler.js","names":["_debug","_interopRequireDefault","require","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","log","debug","InsertImageHandler","editor","node","onFinish","_this","isPasted","undefined","_classCallCheck2","nodePos","state","doc","descendants","pos","chosenFile","_createClass2","key","value","cancel","deleteNode","err","updateNode","newAttrs","_this$editor","view","tr","nodeAt","transaction","setNodeMarkup","attrs","dispatch","_this$editor2","nodeSize","done","src","console","loaded","percent","fileChosen","file","_this2","reader","FileReader","onload","dataURL","result","readAsDataURL","progress","bytes","total","getChosenFile","_default","exports"],"sources":["../../../src/components/image/InsertImageHandler.js"],"sourcesContent":["import debug from 'debug';\n\nconst log = debug('@pie-lib:editable-html:image:insert-image-handler');\n\n/**\n * Handles user selection, insertion (or cancellation) of an image into the editor.\n * @param {Block} placeholderBlock - a block that has been added to the editor as a place holder for the image\n * @param {Function} onFinish - a function to call if uploading fails or succeeds\n * @param {Function} getValue - a function to return the value of the editor\n * @param {Function} onChange - callback to notify changes applied by the handler\n * @param {Boolean} isPasted - a boolean that keeps track if the file is pasted\n */\nclass InsertImageHandler {\n constructor(editor, node, onFinish, isPasted = false) {\n this.editor = editor;\n this.node = node;\n\n let nodePos;\n\n editor.state.doc.descendants((node, pos) => {\n if (node === this.node) {\n nodePos = pos;\n return false\n }\n });\n\n this.nodePos = nodePos;\n this.onFinish = onFinish;\n this.isPasted = isPasted;\n this.chosenFile = null;\n }\n\n cancel() {\n log('insert cancelled');\n\n try {\n this.deleteNode();\n this.onFinish(false);\n } catch (err) {\n //\n }\n }\n\n updateNode(newAttrs) {\n const { state, view } = this.editor;\n const { tr } = state;\n const node = state.doc.nodeAt(this.nodePos);\n\n if (node) {\n const transaction = tr.setNodeMarkup(this.nodePos, undefined, { ...node.attrs, ...newAttrs });\n\n view.dispatch(transaction);\n }\n }\n\n deleteNode() {\n const { state, view } = this.editor;\n const { tr } = state;\n\n const transaction = tr.delete(this.nodePos, this.nodePos + this.node.nodeSize);\n\n view.dispatch(transaction);\n }\n\n done(err, src) {\n log('done: err:', err);\n if (err) {\n //eslint-disable-next-line\n console.log(err);\n this.onFinish(false);\n } else {\n this.updateNode({ loaded: true, src, percent: 100 });\n this.onFinish(true);\n }\n }\n\n /**\n * Notify handler that the user chose a file - will create a change with a preview in the editor.\n *\n * @param {File} file - the file that the user chose using a file input.\n */\n fileChosen(file) {\n if (!file) {\n return;\n }\n\n // Save the chosen file to this.chosenFile\n this.chosenFile = file;\n\n log('[fileChosen] file: ', file);\n const reader = new FileReader();\n reader.onload = () => {\n const dataURL = reader.result;\n\n this.updateNode({ src: dataURL });\n };\n reader.readAsDataURL(file);\n }\n\n progress(percent, bytes, total) {\n log('progress: ', percent, bytes, total);\n this.updateNode({ percent });\n }\n\n // Add a getter method to retrieve the chosen file\n getChosenFile() {\n return this.chosenFile;\n }\n}\n\nexport default InsertImageHandler;\n"],"mappings":"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","ignoreList":[]}