@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.
- package/CHANGELOG.md +7 -73
- package/LICENSE.md +5 -0
- package/NEXT.CHANGELOG.json +1 -0
- package/lib/components/CharacterPicker.js +22 -61
- package/lib/components/CharacterPicker.js.map +1 -1
- package/lib/components/EditableHtml.js +50 -121
- package/lib/components/EditableHtml.js.map +1 -1
- package/lib/components/MenuBar.js +96 -128
- package/lib/components/MenuBar.js.map +1 -1
- package/lib/components/TiptapContainer.js +162 -45
- package/lib/components/TiptapContainer.js.map +1 -1
- package/lib/components/characters/characterUtils.js +4 -7
- package/lib/components/characters/characterUtils.js.map +1 -1
- package/lib/components/characters/custom-popper.js +22 -51
- package/lib/components/characters/custom-popper.js.map +1 -1
- package/lib/components/common/done-button.js +17 -36
- package/lib/components/common/done-button.js.map +1 -1
- package/lib/components/common/toolbar-buttons.js +57 -107
- package/lib/components/common/toolbar-buttons.js.map +1 -1
- package/lib/components/icons/CssIcon.js +14 -26
- package/lib/components/icons/CssIcon.js.map +1 -1
- package/lib/components/icons/RespArea.js +23 -46
- package/lib/components/icons/RespArea.js.map +1 -1
- package/lib/components/icons/TableIcons.js +20 -36
- package/lib/components/icons/TableIcons.js.map +1 -1
- package/lib/components/icons/TextAlign.js +16 -53
- package/lib/components/icons/TextAlign.js.map +1 -1
- package/lib/components/image/AltDialog.js +18 -49
- package/lib/components/image/AltDialog.js.map +1 -1
- package/lib/components/image/ImageToolbar.js +50 -90
- package/lib/components/image/ImageToolbar.js.map +1 -1
- package/lib/components/image/InsertImageHandler.js +17 -35
- package/lib/components/image/InsertImageHandler.js.map +1 -1
- package/lib/components/media/MediaDialog.js +195 -309
- package/lib/components/media/MediaDialog.js.map +1 -1
- package/lib/components/media/MediaToolbar.js +39 -66
- package/lib/components/media/MediaToolbar.js.map +1 -1
- package/lib/components/media/MediaWrapper.js +30 -56
- package/lib/components/media/MediaWrapper.js.map +1 -1
- package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js +21 -36
- package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js.map +1 -1
- package/lib/components/respArea/DragInTheBlank/choice.js +215 -262
- package/lib/components/respArea/DragInTheBlank/choice.js.map +1 -1
- package/lib/components/respArea/ExplicitConstructedResponse.js +11 -33
- package/lib/components/respArea/ExplicitConstructedResponse.js.map +1 -1
- package/lib/components/respArea/InlineDropdown.js +19 -41
- package/lib/components/respArea/InlineDropdown.js.map +1 -1
- package/lib/components/respArea/ToolbarIcon.js +21 -45
- package/lib/components/respArea/ToolbarIcon.js.map +1 -1
- package/lib/constants.js +3 -5
- package/lib/constants.js.map +1 -1
- package/lib/extensions/component.js +94 -148
- package/lib/extensions/component.js.map +1 -1
- package/lib/extensions/css.js +9 -44
- package/lib/extensions/css.js.map +1 -1
- package/lib/extensions/custom-toolbar-wrapper.js +66 -94
- package/lib/extensions/custom-toolbar-wrapper.js.map +1 -1
- package/lib/extensions/extended-table.js +2 -6
- package/lib/extensions/extended-table.js.map +1 -1
- package/lib/extensions/image.js +4 -17
- package/lib/extensions/image.js.map +1 -1
- package/lib/extensions/index.js +11 -21
- package/lib/extensions/index.js.map +1 -1
- package/lib/extensions/math.js +45 -96
- package/lib/extensions/math.js.map +1 -1
- package/lib/extensions/media.js +21 -59
- package/lib/extensions/media.js.map +1 -1
- package/lib/extensions/responseArea.js +43 -89
- package/lib/extensions/responseArea.js.map +1 -1
- package/lib/index.js +3 -11
- package/lib/index.js.map +1 -1
- package/lib/styles/editorContainerStyles.js +2 -7
- package/lib/styles/editorContainerStyles.js.map +1 -1
- package/lib/theme.js +2 -3
- package/lib/theme.js.map +1 -1
- package/lib/utils/size.js +2 -10
- package/lib/utils/size.js.map +1 -1
- package/package.json +15 -13
- package/src/components/CharacterPicker.jsx +1 -0
- package/src/components/EditableHtml.jsx +21 -33
- package/src/components/MenuBar.jsx +66 -37
- package/src/components/TiptapContainer.jsx +133 -34
- package/src/components/characters/custom-popper.js +18 -28
- package/src/components/common/done-button.jsx +15 -26
- package/src/components/common/toolbar-buttons.jsx +28 -44
- package/src/components/icons/CssIcon.jsx +11 -13
- package/src/components/icons/RespArea.jsx +16 -16
- package/src/components/icons/TableIcons.jsx +15 -16
- package/src/components/icons/TextAlign.jsx +3 -3
- package/src/components/image/AltDialog.jsx +6 -6
- package/src/components/image/ImageToolbar.jsx +28 -29
- package/src/components/media/MediaDialog.js +61 -78
- package/src/components/media/MediaToolbar.jsx +30 -37
- package/src/components/media/MediaWrapper.jsx +12 -16
- package/src/components/respArea/DragInTheBlank/DragInTheBlank.jsx +5 -4
- package/src/components/respArea/DragInTheBlank/choice.jsx +191 -185
- package/src/components/respArea/ToolbarIcon.jsx +13 -15
- package/src/extensions/component.jsx +61 -89
- package/src/extensions/css.js +6 -5
- package/src/extensions/custom-toolbar-wrapper.jsx +61 -81
- package/lib/__tests__/utils.js +0 -106
- 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
|
|
41
|
-
|
|
42
|
-
function
|
|
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
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
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
|
-
|
|
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"])(
|
|
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"])(
|
|
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
|
|
114
|
-
_this2 = this;
|
|
115
|
-
|
|
102
|
+
var _this2 = this;
|
|
116
103
|
var _this$props = this.props,
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
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(
|
|
136
|
-
|
|
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
|
-
|
|
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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2ltYWdlL0ltYWdlVG9vbGJhci5qc3giXSwibmFtZXMiOlsibG9nIiwiQWxpZ25tZW50QnV0dG9uIiwiYWxpZ25tZW50IiwiYWN0aXZlIiwib25DbGljayIsInByb3BUeXBlcyIsIlByb3BUeXBlcyIsInN0cmluZyIsImlzUmVxdWlyZWQiLCJib29sIiwiZnVuYyIsIkltYWdlVG9vbGJhciIsIm5ld0FsdCIsInByb3BzIiwib25DaGFuZ2UiLCJhbHQiLCJwb3BvdmVyRWwiLCJkb2N1bWVudCIsImNyZWF0ZUVsZW1lbnQiLCJlbCIsIm9uQWx0VGV4dERvbmUiLCJSZWFjdERPTSIsInJlbmRlciIsImJvZHkiLCJhcHBlbmRDaGlsZCIsImNsYXNzZXMiLCJpbWFnZUxvYWRlZCIsImRpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnMiLCJob2xkZXIiLCJvbkFsaWdubWVudENsaWNrIiwiZGlzYWJsZWQiLCJhbHRCdXR0b24iLCJldmVudCIsInJlbmRlckRpYWxvZyIsIlJlYWN0IiwiQ29tcG9uZW50Iiwib2JqZWN0Iiwic3R5bGVzIiwidGhlbWUiLCJwYWRkaW5nTGVmdCIsInNwYWNpbmciLCJ1bml0IiwiZGlzcGxheSIsImFsaWduSXRlbXMiLCJvcGFjaXR5IiwiYm9yZGVyTGVmdCIsIm1hcmdpbkxlZnQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBRUE7O0FBQ0E7Ozs7OztBQUVBLElBQU1BLEdBQUcsR0FBRyx1QkFBTSxvREFBTixDQUFaOztBQUVBLElBQU1DLGVBQWUsR0FBRyxTQUFsQkEsZUFBa0IsT0FBb0M7QUFBQSxNQUFqQ0MsU0FBaUMsUUFBakNBLFNBQWlDO0FBQUEsTUFBdEJDLE1BQXNCLFFBQXRCQSxNQUFzQjtBQUFBLE1BQWRDLE9BQWMsUUFBZEEsT0FBYztBQUMxRCxzQkFDRSxnQ0FBQywwQkFBRDtBQUFZLElBQUEsTUFBTSxFQUFFRCxNQUFwQjtBQUE0QixJQUFBLFFBQVEsRUFBRTtBQUFBLGFBQU1DLE9BQU8sQ0FBQ0YsU0FBRCxDQUFiO0FBQUEsS0FBdEM7QUFBZ0UsSUFBQSxLQUFLLEVBQUVBO0FBQXZFLEtBQ0dBLFNBREgsQ0FERjtBQUtELENBTkQ7O0FBUUFELGVBQWUsQ0FBQ0ksU0FBaEIsR0FBNEI7QUFDMUJILEVBQUFBLFNBQVMsRUFBRUksc0JBQVVDLE1BQVYsQ0FBaUJDLFVBREY7QUFFMUJMLEVBQUFBLE1BQU0sRUFBRUcsc0JBQVVHLElBQVYsQ0FBZUQsVUFGRztBQUcxQkosRUFBQUEsT0FBTyxFQUFFRSxzQkFBVUksSUFBVixDQUFlRjtBQUhFLENBQTVCOztJQU1hRyxZOzs7Ozs7Ozs7Ozs7Ozs7c0dBVUssVUFBQ0MsTUFBRCxFQUFZO0FBQzFCWixNQUFBQSxHQUFHLENBQUMsdUJBQUQsRUFBMEJZLE1BQTFCLENBQUg7O0FBRUEsWUFBS0MsS0FBTCxDQUFXQyxRQUFYLENBQW9CO0FBQUVDLFFBQUFBLEdBQUcsRUFBRUg7QUFBUCxPQUFwQixFQUFxQyxJQUFyQztBQUNELEs7eUdBRWtCLFVBQUNWLFNBQUQsRUFBZTtBQUNoQ0YsTUFBQUEsR0FBRyxDQUFDLGdDQUFELEVBQW1DRSxTQUFuQyxDQUFIOztBQUNBLFlBQUtXLEtBQUwsQ0FBV0MsUUFBWCxDQUFvQjtBQUFFWixRQUFBQSxTQUFTLEVBQVRBO0FBQUYsT0FBcEI7QUFDRCxLO3FHQUVjLFlBQU07QUFDbkIsVUFBUWEsR0FBUixHQUFnQixNQUFLRixLQUFyQixDQUFRRSxHQUFSO0FBQ0EsVUFBTUMsU0FBUyxHQUFHQyxRQUFRLENBQUNDLGFBQVQsQ0FBdUIsS0FBdkIsQ0FBbEI7O0FBRUEsVUFBTUMsRUFBRSxnQkFBRyxnQ0FBQyxxQkFBRDtBQUFXLFFBQUEsR0FBRyxFQUFFSixHQUFoQjtBQUFxQixRQUFBLE1BQU0sRUFBRSxNQUFLSztBQUFsQyxRQUFYOztBQUVBQywyQkFBU0MsTUFBVCxDQUFnQkgsRUFBaEIsRUFBb0JILFNBQXBCOztBQUVBQyxNQUFBQSxRQUFRLENBQUNNLElBQVQsQ0FBY0MsV0FBZCxDQUEwQlIsU0FBMUI7QUFDRCxLOzs7Ozs7V0FFRCxrQkFBUztBQUFBO0FBQUE7O0FBQ1Asd0JBQTBFLEtBQUtILEtBQS9FO0FBQUEsVUFBUVksT0FBUixlQUFRQSxPQUFSO0FBQUEsVUFBaUJ2QixTQUFqQixlQUFpQkEsU0FBakI7QUFBQSxVQUE0QndCLFdBQTVCLGVBQTRCQSxXQUE1QjtBQUFBLFVBQXlDQyw0QkFBekMsZUFBeUNBLDRCQUF6QztBQUNBLDBCQUNFO0FBQUssUUFBQSxTQUFTLEVBQUVGLE9BQU8sQ0FBQ0c7QUFBeEIsU0FDRyxDQUFDRCw0QkFBRCxpQkFDQywrRUFDRSxnQ0FBQyxlQUFEO0FBQWlCLFFBQUEsU0FBUyxFQUFFLE1BQTVCO0FBQW9DLFFBQUEsTUFBTSxFQUFFekIsU0FBUyxLQUFLLE1BQTFEO0FBQWtFLFFBQUEsT0FBTyxFQUFFLEtBQUsyQjtBQUFoRixRQURGLGVBRUUsZ0NBQUMsZUFBRDtBQUFpQixRQUFBLFNBQVMsRUFBRSxRQUE1QjtBQUFzQyxRQUFBLE1BQU0sRUFBRTNCLFNBQVMsS0FBSyxRQUE1RDtBQUFzRSxRQUFBLE9BQU8sRUFBRSxLQUFLMkI7QUFBcEYsUUFGRixlQUdFLGdDQUFDLGVBQUQ7QUFBaUIsUUFBQSxTQUFTLEVBQUUsT0FBNUI7QUFBcUMsUUFBQSxNQUFNLEVBQUUzQixTQUFTLEtBQUssT0FBM0Q7QUFBb0UsUUFBQSxPQUFPLEVBQUUsS0FBSzJCO0FBQWxGLFFBSEYsQ0FGSixlQVFFO0FBQ0UsUUFBQSxTQUFTLEVBQUUsNkZBQ1JKLE9BQU8sQ0FBQ0ssUUFEQSxFQUNXLENBQUNKLFdBRFosaURBRVJELE9BQU8sQ0FBQ00sU0FGQSxFQUVZLENBQUNKLDRCQUZiLGdCQURiO0FBS0UsUUFBQSxXQUFXLEVBQUUscUJBQUNLLEtBQUQ7QUFBQSxpQkFBV04sV0FBVyxJQUFJLE1BQUksQ0FBQ08sWUFBTCxDQUFrQkQsS0FBbEIsQ0FBMUI7QUFBQTtBQUxmLG9CQVJGLENBREY7QUFvQkQ7OztFQXREK0JFLGtCQUFNQyxTOzs7aUNBQTNCeEIsWSxlQUNRO0FBQ2pCRyxFQUFBQSxRQUFRLEVBQUVSLHNCQUFVSSxJQUFWLENBQWVGLFVBRFI7QUFFakJpQixFQUFBQSxPQUFPLEVBQUVuQixzQkFBVThCLE1BQVYsQ0FBaUI1QixVQUZUO0FBR2pCTixFQUFBQSxTQUFTLEVBQUVJLHNCQUFVQyxNQUhKO0FBSWpCUSxFQUFBQSxHQUFHLEVBQUVULHNCQUFVQyxNQUpFO0FBS2pCbUIsRUFBQUEsV0FBVyxFQUFFcEIsc0JBQVVHLElBTE47QUFNakJrQixFQUFBQSw0QkFBNEIsRUFBRXJCLHNCQUFVRztBQU52QixDOztBQXdEckIsSUFBTTRCLE1BQU0sR0FBRyxTQUFUQSxNQUFTLENBQUNDLEtBQUQ7QUFBQSxTQUFZO0FBQ3pCVixJQUFBQSxNQUFNLEVBQUU7QUFDTlcsTUFBQUEsV0FBVyxFQUFFRCxLQUFLLENBQUNFLE9BQU4sQ0FBY0MsSUFEckI7QUFFTkMsTUFBQUEsT0FBTyxFQUFFLE1BRkg7QUFHTkMsTUFBQUEsVUFBVSxFQUFFO0FBSE4sS0FEaUI7QUFNekJiLElBQUFBLFFBQVEsRUFBRTtBQUNSYyxNQUFBQSxPQUFPLEVBQUU7QUFERCxLQU5lO0FBU3pCYixJQUFBQSxTQUFTLEVBQUU7QUFDVGMsTUFBQUEsVUFBVSxFQUFFLGdCQURIO0FBRVROLE1BQUFBLFdBQVcsRUFBRSxDQUZKO0FBR1RPLE1BQUFBLFVBQVUsRUFBRTtBQUhIO0FBVGMsR0FBWjtBQUFBLENBQWY7O2VBZ0JlLHdCQUFXVCxNQUFYLEVBQW1CMUIsWUFBbkIsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBQcm9wVHlwZXMgZnJvbSAncHJvcC10eXBlcyc7XG5pbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IGRlYnVnIGZyb20gJ2RlYnVnJztcbmltcG9ydCBSZWFjdERPTSBmcm9tICdyZWFjdC1kb20nO1xuaW1wb3J0IHsgd2l0aFN0eWxlcyB9IGZyb20gJ0BtYXRlcmlhbC11aS9jb3JlL3N0eWxlcyc7XG5pbXBvcnQgY2xhc3NOYW1lcyBmcm9tICdjbGFzc25hbWVzJztcblxuaW1wb3J0IEFsdERpYWxvZyBmcm9tICcuL0FsdERpYWxvZyc7XG5pbXBvcnQgeyBNYXJrQnV0dG9uIH0gZnJvbSAnLi4vY29tbW9uL3Rvb2xiYXItYnV0dG9ucyc7XG5cbmNvbnN0IGxvZyA9IGRlYnVnKCdAcGllLWxpYjplZGl0YWJsZS1odG1sOnBsdWdpbnM6aW1hZ2U6aW1hZ2UtdG9vbGJhcicpO1xuXG5jb25zdCBBbGlnbm1lbnRCdXR0b24gPSAoeyBhbGlnbm1lbnQsIGFjdGl2ZSwgb25DbGljayB9KSA9PiB7XG4gIHJldHVybiAoXG4gICAgPE1hcmtCdXR0b24gYWN0aXZlPXthY3RpdmV9IG9uVG9nZ2xlPXsoKSA9PiBvbkNsaWNrKGFsaWdubWVudCl9IGxhYmVsPXthbGlnbm1lbnR9PlxuICAgICAge2FsaWdubWVudH1cbiAgICA8L01hcmtCdXR0b24+XG4gICk7XG59O1xuXG5BbGlnbm1lbnRCdXR0b24ucHJvcFR5cGVzID0ge1xuICBhbGlnbm1lbnQ6IFByb3BUeXBlcy5zdHJpbmcuaXNSZXF1aXJlZCxcbiAgYWN0aXZlOiBQcm9wVHlwZXMuYm9vbC5pc1JlcXVpcmVkLFxuICBvbkNsaWNrOiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxufTtcblxuZXhwb3J0IGNsYXNzIEltYWdlVG9vbGJhciBleHRlbmRzIFJlYWN0LkNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSB7XG4gICAgb25DaGFuZ2U6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gICAgY2xhc3NlczogUHJvcFR5cGVzLm9iamVjdC5pc1JlcXVpcmVkLFxuICAgIGFsaWdubWVudDogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBhbHQ6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgaW1hZ2VMb2FkZWQ6IFByb3BUeXBlcy5ib29sLFxuICAgIGRpc2FibGVJbWFnZUFsaWdubWVudEJ1dHRvbnM6IFByb3BUeXBlcy5ib29sLFxuICB9O1xuXG4gIG9uQWx0VGV4dERvbmUgPSAobmV3QWx0KSA9PiB7XG4gICAgbG9nKCdbb25BbHRUZXh0RG9uZV06IGFsdDonLCBuZXdBbHQpO1xuXG4gICAgdGhpcy5wcm9wcy5vbkNoYW5nZSh7IGFsdDogbmV3QWx0IH0sIHRydWUpO1xuICB9O1xuXG4gIG9uQWxpZ25tZW50Q2xpY2sgPSAoYWxpZ25tZW50KSA9PiB7XG4gICAgbG9nKCdbb25BbGlnbm1lbnRDbGlja106IGFsaWdubWVudDonLCBhbGlnbm1lbnQpO1xuICAgIHRoaXMucHJvcHMub25DaGFuZ2UoeyBhbGlnbm1lbnQgfSk7XG4gIH07XG5cbiAgcmVuZGVyRGlhbG9nID0gKCkgPT4ge1xuICAgIGNvbnN0IHsgYWx0IH0gPSB0aGlzLnByb3BzO1xuICAgIGNvbnN0IHBvcG92ZXJFbCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuXG4gICAgY29uc3QgZWwgPSA8QWx0RGlhbG9nIGFsdD17YWx0fSBvbkRvbmU9e3RoaXMub25BbHRUZXh0RG9uZX0gLz47XG5cbiAgICBSZWFjdERPTS5yZW5kZXIoZWwsIHBvcG92ZXJFbCk7XG5cbiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHBvcG92ZXJFbCk7XG4gIH07XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHsgY2xhc3NlcywgYWxpZ25tZW50LCBpbWFnZUxvYWRlZCwgZGlzYWJsZUltYWdlQWxpZ25tZW50QnV0dG9ucyB9ID0gdGhpcy5wcm9wcztcbiAgICByZXR1cm4gKFxuICAgICAgPGRpdiBjbGFzc05hbWU9e2NsYXNzZXMuaG9sZGVyfT5cbiAgICAgICAgeyFkaXNhYmxlSW1hZ2VBbGlnbm1lbnRCdXR0b25zICYmIChcbiAgICAgICAgICA8PlxuICAgICAgICAgICAgPEFsaWdubWVudEJ1dHRvbiBhbGlnbm1lbnQ9eydsZWZ0J30gYWN0aXZlPXthbGlnbm1lbnQgPT09ICdsZWZ0J30gb25DbGljaz17dGhpcy5vbkFsaWdubWVudENsaWNrfSAvPlxuICAgICAgICAgICAgPEFsaWdubWVudEJ1dHRvbiBhbGlnbm1lbnQ9eydjZW50ZXInfSBhY3RpdmU9e2FsaWdubWVudCA9PT0gJ2NlbnRlcid9IG9uQ2xpY2s9e3RoaXMub25BbGlnbm1lbnRDbGlja30gLz5cbiAgICAgICAgICAgIDxBbGlnbm1lbnRCdXR0b24gYWxpZ25tZW50PXsncmlnaHQnfSBhY3RpdmU9e2FsaWdubWVudCA9PT0gJ3JpZ2h0J30gb25DbGljaz17dGhpcy5vbkFsaWdubWVudENsaWNrfSAvPlxuICAgICAgICAgIDwvPlxuICAgICAgICApfVxuICAgICAgICA8c3BhblxuICAgICAgICAgIGNsYXNzTmFtZT17Y2xhc3NOYW1lcyh7XG4gICAgICAgICAgICBbY2xhc3Nlcy5kaXNhYmxlZF06ICFpbWFnZUxvYWRlZCxcbiAgICAgICAgICAgIFtjbGFzc2VzLmFsdEJ1dHRvbl06ICFkaXNhYmxlSW1hZ2VBbGlnbm1lbnRCdXR0b25zLFxuICAgICAgICAgIH0pfVxuICAgICAgICAgIG9uTW91c2VEb3duPXsoZXZlbnQpID0+IGltYWdlTG9hZGVkICYmIHRoaXMucmVuZGVyRGlhbG9nKGV2ZW50KX1cbiAgICAgICAgPlxuICAgICAgICAgIEFsdCB0ZXh0XG4gICAgICAgIDwvc3Bhbj5cbiAgICAgIDwvZGl2PlxuICAgICk7XG4gIH1cbn1cblxuY29uc3Qgc3R5bGVzID0gKHRoZW1lKSA9PiAoe1xuICBob2xkZXI6IHtcbiAgICBwYWRkaW5nTGVmdDogdGhlbWUuc3BhY2luZy51bml0LFxuICAgIGRpc3BsYXk6ICdmbGV4JyxcbiAgICBhbGlnbkl0ZW1zOiAnY2VudGVyJyxcbiAgfSxcbiAgZGlzYWJsZWQ6IHtcbiAgICBvcGFjaXR5OiAwLjUsXG4gIH0sXG4gIGFsdEJ1dHRvbjoge1xuICAgIGJvcmRlckxlZnQ6ICcxcHggc29saWQgZ3JleScsXG4gICAgcGFkZGluZ0xlZnQ6IDgsXG4gICAgbWFyZ2luTGVmdDogNCxcbiAgfSxcbn0pO1xuXG5leHBvcnQgZGVmYXVsdCB3aXRoU3R5bGVzKHN0eWxlcykoSW1hZ2VUb29sYmFyKTtcbiJdfQ==
|
|
136
|
+
var _default = exports["default"] = ImageToolbar;
|
|
137
|
+
//# sourceMappingURL=ImageToolbar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
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":";;;;;;;;;;;;;AAAA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,MAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,SAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,OAAA,GAAAJ,OAAA;AAEA,IAAAK,UAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,eAAA,GAAAN,OAAA;AAAuD,SAAAO,WAAAC,CAAA,EAAAC,CAAA,EAAAC,CAAA,WAAAD,CAAA,OAAAE,gBAAA,aAAAF,CAAA,OAAAG,2BAAA,aAAAJ,CAAA,EAAAK,yBAAA,KAAAC,OAAA,CAAAC,SAAA,CAAAN,CAAA,EAAAC,CAAA,YAAAC,gBAAA,aAAAH,CAAA,EAAAQ,WAAA,IAAAP,CAAA,CAAAQ,KAAA,CAAAT,CAAA,EAAAE,CAAA;AAAA,SAAAG,0BAAA,cAAAL,CAAA,IAAAU,OAAA,CAAAC,SAAA,CAAAC,OAAA,CAAAC,IAAA,CAAAP,OAAA,CAAAC,SAAA,CAAAG,OAAA,iCAAAV,CAAA,aAAAK,yBAAA,YAAAA,0BAAA,aAAAL,CAAA;AAAA,SAAAc,QAAAZ,CAAA,EAAAa,CAAA,QAAAf,CAAA,GAAAgB,MAAA,CAAAC,IAAA,CAAAf,CAAA,OAAAc,MAAA,CAAAE,qBAAA,QAAAjB,CAAA,GAAAe,MAAA,CAAAE,qBAAA,CAAAhB,CAAA,GAAAa,CAAA,KAAAd,CAAA,GAAAA,CAAA,CAAAkB,MAAA,WAAAJ,CAAA,WAAAC,MAAA,CAAAI,wBAAA,CAAAlB,CAAA,EAAAa,CAAA,EAAAM,UAAA,OAAArB,CAAA,CAAAsB,IAAA,CAAAb,KAAA,CAAAT,CAAA,EAAAC,CAAA,YAAAD,CAAA;AAAA,SAAAuB,cAAArB,CAAA,aAAAa,CAAA,MAAAA,CAAA,GAAAS,SAAA,CAAAC,MAAA,EAAAV,CAAA,UAAAf,CAAA,WAAAwB,SAAA,CAAAT,CAAA,IAAAS,SAAA,CAAAT,CAAA,QAAAA,CAAA,OAAAD,OAAA,CAAAE,MAAA,CAAAhB,CAAA,OAAA0B,OAAA,WAAAX,CAAA,QAAAY,gBAAA,aAAAzB,CAAA,EAAAa,CAAA,EAAAf,CAAA,CAAAe,CAAA,SAAAC,MAAA,CAAAY,yBAAA,GAAAZ,MAAA,CAAAa,gBAAA,CAAA3B,CAAA,EAAAc,MAAA,CAAAY,yBAAA,CAAA5B,CAAA,KAAAc,OAAA,CAAAE,MAAA,CAAAhB,CAAA,GAAA0B,OAAA,WAAAX,CAAA,IAAAC,MAAA,CAAAc,cAAA,CAAA5B,CAAA,EAAAa,CAAA,EAAAC,MAAA,CAAAI,wBAAA,CAAApB,CAAA,EAAAe,CAAA,iBAAAb,CAAA;AAEvD,IAAM6B,GAAG,GAAG,IAAAC,iBAAK,EAAC,oDAAoD,CAAC;AAEvE,IAAMC,YAAY,GAAG,IAAAC,cAAM,EAAC,KAAK,CAAC,CAAC,UAAAC,IAAA;EAAA,IAAGC,KAAK,GAAAD,IAAA,CAALC,KAAK;EAAA,OAAQ;IACjDC,WAAW,EAAED,KAAK,CAACE,OAAO,CAACC,IAAI;IAC/BC,OAAO,EAAE,MAAM;IACfC,UAAU,EAAE;EACd,CAAC;AAAA,CAAC,CAAC;AAEH,IAAMC,aAAa,GAAG,IAAAR,cAAM,EAAC,MAAM,EAAE;EACnCS,iBAAiB,EAAE,SAAnBA,iBAAiBA,CAAGC,IAAI;IAAA,OAAK,CAAC,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAACC,QAAQ,CAACD,IAAI,CAAC;EAAA;AAClF,CAAC,CAAC,CAAC,UAAAE,KAAA;EAAA,IAAGC,QAAQ,GAAAD,KAAA,CAARC,QAAQ;IAAEC,mBAAmB,GAAAF,KAAA,CAAnBE,mBAAmB;EAAA,OAAAzB,aAAA,CAAAA,aAAA,KAC7BwB,QAAQ,IAAI;IACdE,OAAO,EAAE;EACX,CAAC,GACGD,mBAAmB,IAAI;IACzBE,UAAU,EAAE,gBAAgB;IAC5Bb,WAAW,EAAE,CAAC;IACdc,UAAU,EAAE;EACd,CAAC;AAAA,CACD,CAAC;AAEH,IAAMC,eAAe,GAAG,SAAlBA,eAAeA,CAAAC,KAAA,EAAuC;EAAA,IAAjCC,SAAS,GAAAD,KAAA,CAATC,SAAS;IAAEC,MAAM,GAAAF,KAAA,CAANE,MAAM;IAAEC,OAAO,GAAAH,KAAA,CAAPG,OAAO;EACnD,oBACE/D,MAAA,YAAAgE,aAAA,CAAC3D,eAAA,CAAA4D,UAAU;IAACH,MAAM,EAAEA,MAAO;IAACI,QAAQ,EAAE,SAAVA,QAAQA,CAAA;MAAA,OAAQH,OAAO,CAACF,SAAS,CAAC;IAAA,CAAC;IAACM,KAAK,EAAEN;EAAU,GAC9EA,SACS,CAAC;AAEjB,CAAC;AAEDF,eAAe,CAACS,SAAS,GAAG;EAC1BP,SAAS,EAAEQ,qBAAS,CAACC,MAAM,CAACC,UAAU;EACtCT,MAAM,EAAEO,qBAAS,CAACG,IAAI,CAACD,UAAU;EACjCR,OAAO,EAAEM,qBAAS,CAACI,IAAI,CAACF;AAC1B,CAAC;AAAC,IAEWG,YAAY,GAAAC,OAAA,CAAAD,YAAA,0BAAAE,gBAAA;EAAA,SAAAF,aAAA;IAAA,IAAAG,KAAA;IAAA,IAAAC,gBAAA,mBAAAJ,YAAA;IAAA,SAAAK,IAAA,GAAAhD,SAAA,CAAAC,MAAA,EAAAgD,IAAA,OAAAC,KAAA,CAAAF,IAAA,GAAAG,IAAA,MAAAA,IAAA,GAAAH,IAAA,EAAAG,IAAA;MAAAF,IAAA,CAAAE,IAAA,IAAAnD,SAAA,CAAAmD,IAAA;IAAA;IAAAL,KAAA,GAAAvE,UAAA,OAAAoE,YAAA,KAAAS,MAAA,CAAAH,IAAA;IAAA,IAAA9C,gBAAA,aAAA2C,KAAA,mBASP,UAACO,MAAM,EAAK;MAC1B9C,GAAG,CAAC,uBAAuB,EAAE8C,MAAM,CAAC;MAEpCP,KAAA,CAAKQ,KAAK,CAACC,QAAQ,CAAC;QAAEC,GAAG,EAAEH;MAAO,CAAC,EAAE,IAAI,CAAC;IAC5C,CAAC;IAAA,IAAAlD,gBAAA,aAAA2C,KAAA,sBAEkB,UAAChB,SAAS,EAAK;MAChCvB,GAAG,CAAC,gCAAgC,EAAEuB,SAAS,CAAC;MAChDgB,KAAA,CAAKQ,KAAK,CAACC,QAAQ,CAAC;QAAEzB,SAAS,EAATA;MAAU,CAAC,CAAC;IACpC,CAAC;IAAA,IAAA3B,gBAAA,aAAA2C,KAAA,kBAEc,YAAM;MACnB,IAAQU,GAAG,GAAKV,KAAA,CAAKQ,KAAK,CAAlBE,GAAG;MACX,IAAMC,SAAS,GAAGC,QAAQ,CAACzB,aAAa,CAAC,KAAK,CAAC;MAE/C,IAAM0B,EAAE,gBAAG1F,MAAA,YAAAgE,aAAA,CAAC5D,UAAA,WAAS;QAACmF,GAAG,EAAEA,GAAI;QAACI,MAAM,EAAEd,KAAA,CAAKe;MAAc,CAAE,CAAC;MAE9DC,oBAAQ,CAACC,MAAM,CAACJ,EAAE,EAAEF,SAAS,CAAC;MAE9BC,QAAQ,CAACM,IAAI,CAACC,WAAW,CAACR,SAAS,CAAC;IACtC,CAAC;IAAA,OAAAX,KAAA;EAAA;EAAA,IAAAoB,UAAA,aAAAvB,YAAA,EAAAE,gBAAA;EAAA,WAAAsB,aAAA,aAAAxB,YAAA;IAAAyB,GAAA;IAAAC,KAAA,EAED,SAAAN,MAAMA,CAAA,EAAG;MAAA,IAAAO,MAAA;MACP,IAAAC,WAAA,GAAiE,IAAI,CAACjB,KAAK;QAAnExB,SAAS,GAAAyC,WAAA,CAATzC,SAAS;QAAE0C,WAAW,GAAAD,WAAA,CAAXC,WAAW;QAAEC,4BAA4B,GAAAF,WAAA,CAA5BE,4BAA4B;MAC5D,oBACExG,MAAA,YAAAgE,aAAA,CAACxB,YAAY,QACV,CAACgE,4BAA4B,iBAC5BxG,MAAA,YAAAgE,aAAA,CAAAhE,MAAA,YAAAyG,QAAA,qBACEzG,MAAA,YAAAgE,aAAA,CAACL,eAAe;QAACE,SAAS,EAAE,MAAO;QAACC,MAAM,EAAED,SAAS,KAAK,MAAO;QAACE,OAAO,EAAE,IAAI,CAAC2C;MAAiB,CAAE,CAAC,eACpG1G,MAAA,YAAAgE,aAAA,CAACL,eAAe;QAACE,SAAS,EAAE,QAAS;QAACC,MAAM,EAAED,SAAS,KAAK,QAAS;QAACE,OAAO,EAAE,IAAI,CAAC2C;MAAiB,CAAE,CAAC,eACxG1G,MAAA,YAAAgE,aAAA,CAACL,eAAe;QAACE,SAAS,EAAE,OAAQ;QAACC,MAAM,EAAED,SAAS,KAAK,OAAQ;QAACE,OAAO,EAAE,IAAI,CAAC2C;MAAiB,CAAE,CACrG,CACH,eACD1G,MAAA,YAAAgE,aAAA,CAACf,aAAa;QACZK,QAAQ,EAAE,CAACiD,WAAY;QACvBhD,mBAAmB,EAAE,CAACiD,4BAA6B;QACnDG,WAAW,EAAE,SAAbA,WAAWA,CAAGC,KAAK;UAAA,OAAKL,WAAW,IAAIF,MAAI,CAACQ,YAAY,CAACD,KAAK,CAAC;QAAA;MAAC,GACjE,UAEc,CACH,CAAC;IAEnB;EAAC;AAAA,EAnD+BE,iBAAK,CAACC,SAAS;AAAA,IAAA7E,gBAAA,aAApCwC,YAAY,eACJ;EACjBY,QAAQ,EAAEjB,qBAAS,CAACI,IAAI,CAACF,UAAU;EACnCV,SAAS,EAAEQ,qBAAS,CAACC,MAAM;EAC3BiB,GAAG,EAAElB,qBAAS,CAACC,MAAM;EACrBiC,WAAW,EAAElC,qBAAS,CAACG,IAAI;EAC3BgC,4BAA4B,EAAEnC,qBAAS,CAACG;AAC1C,CAAC;AAAA,IAAAwC,QAAA,GAAArC,OAAA,cA+CYD,YAAY","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
|
|
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
|
-
|
|
69
|
-
|
|
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
|
-
|
|
83
|
-
|
|
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
|
-
}
|
|
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
|
-
}
|
|
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
|
-
|
|
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,"
|
|
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":";;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA0B,SAAAC,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,QAAAe,gBAAA,aAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAE1B,IAAMoB,GAAG,GAAG,IAAAC,iBAAK,EAAC,mDAAmD,CAAC;;AAEtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA,IAQMC,kBAAkB;EACtB,SAAAA,mBAAYC,MAAM,EAAEC,IAAI,EAAEC,QAAQ,EAAoB;IAAA,IAAAC,KAAA;IAAA,IAAlBC,QAAQ,GAAAd,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAe,SAAA,GAAAf,SAAA,MAAG,KAAK;IAAA,IAAAgB,gBAAA,mBAAAP,kBAAA;IAClD,IAAI,CAACC,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,IAAI,GAAGA,IAAI;IAEhB,IAAIM,OAAO;IAEXP,MAAM,CAACQ,KAAK,CAACC,GAAG,CAACC,WAAW,CAAC,UAACT,IAAI,EAAEU,GAAG,EAAK;MAC1C,IAAIV,IAAI,KAAKE,KAAI,CAACF,IAAI,EAAE;QACtBM,OAAO,GAAGI,GAAG;QACb,OAAO,KAAK;MACd;IACF,CAAC,CAAC;IAEF,IAAI,CAACJ,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACL,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACE,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACQ,UAAU,GAAG,IAAI;EACxB;EAAC,WAAAC,aAAA,aAAAd,kBAAA;IAAAe,GAAA;IAAAC,KAAA,EAED,SAAAC,MAAMA,CAAA,EAAG;MACPnB,GAAG,CAAC,kBAAkB,CAAC;MAEvB,IAAI;QACF,IAAI,CAACoB,UAAU,CAAC,CAAC;QACjB,IAAI,CAACf,QAAQ,CAAC,KAAK,CAAC;MACtB,CAAC,CAAC,OAAOgB,GAAG,EAAE;QACZ;MAAA;IAEJ;EAAC;IAAAJ,GAAA;IAAAC,KAAA,EAED,SAAAI,UAAUA,CAACC,QAAQ,EAAE;MACnB,IAAAC,YAAA,GAAwB,IAAI,CAACrB,MAAM;QAA3BQ,KAAK,GAAAa,YAAA,CAALb,KAAK;QAAEc,IAAI,GAAAD,YAAA,CAAJC,IAAI;MACnB,IAAQC,EAAE,GAAKf,KAAK,CAAZe,EAAE;MACV,IAAMtB,IAAI,GAAGO,KAAK,CAACC,GAAG,CAACe,MAAM,CAAC,IAAI,CAACjB,OAAO,CAAC;MAE3C,IAAIN,IAAI,EAAE;QACR,IAAMwB,WAAW,GAAGF,EAAE,CAACG,aAAa,CAAC,IAAI,CAACnB,OAAO,EAAEF,SAAS,EAAAhB,aAAA,CAAAA,aAAA,KAAOY,IAAI,CAAC0B,KAAK,GAAKP,QAAQ,CAAE,CAAC;QAE7FE,IAAI,CAACM,QAAQ,CAACH,WAAW,CAAC;MAC5B;IACF;EAAC;IAAAX,GAAA;IAAAC,KAAA,EAED,SAAAE,UAAUA,CAAA,EAAG;MACX,IAAAY,aAAA,GAAwB,IAAI,CAAC7B,MAAM;QAA3BQ,KAAK,GAAAqB,aAAA,CAALrB,KAAK;QAAEc,IAAI,GAAAO,aAAA,CAAJP,IAAI;MACnB,IAAQC,EAAE,GAAKf,KAAK,CAAZe,EAAE;MAEV,IAAME,WAAW,GAAGF,EAAE,UAAO,CAAC,IAAI,CAAChB,OAAO,EAAE,IAAI,CAACA,OAAO,GAAG,IAAI,CAACN,IAAI,CAAC6B,QAAQ,CAAC;MAE9ER,IAAI,CAACM,QAAQ,CAACH,WAAW,CAAC;IAC5B;EAAC;IAAAX,GAAA;IAAAC,KAAA,EAED,SAAAgB,IAAIA,CAACb,GAAG,EAAEc,GAAG,EAAE;MACbnC,GAAG,CAAC,YAAY,EAAEqB,GAAG,CAAC;MACtB,IAAIA,GAAG,EAAE;QACP;QACAe,OAAO,CAACpC,GAAG,CAACqB,GAAG,CAAC;QAChB,IAAI,CAAChB,QAAQ,CAAC,KAAK,CAAC;MACtB,CAAC,MAAM;QACL,IAAI,CAACiB,UAAU,CAAC;UAAEe,MAAM,EAAE,IAAI;UAAEF,GAAG,EAAHA,GAAG;UAAEG,OAAO,EAAE;QAAI,CAAC,CAAC;QACpD,IAAI,CAACjC,QAAQ,CAAC,IAAI,CAAC;MACrB;IACF;;IAEA;AACF;AACA;AACA;AACA;EAJE;IAAAY,GAAA;IAAAC,KAAA,EAKA,SAAAqB,UAAUA,CAACC,IAAI,EAAE;MAAA,IAAAC,MAAA;MACf,IAAI,CAACD,IAAI,EAAE;QACT;MACF;;MAEA;MACA,IAAI,CAACzB,UAAU,GAAGyB,IAAI;MAEtBxC,GAAG,CAAC,qBAAqB,EAAEwC,IAAI,CAAC;MAChC,IAAME,MAAM,GAAG,IAAIC,UAAU,CAAC,CAAC;MAC/BD,MAAM,CAACE,MAAM,GAAG,YAAM;QACpB,IAAMC,OAAO,GAAGH,MAAM,CAACI,MAAM;QAE7BL,MAAI,CAACnB,UAAU,CAAC;UAAEa,GAAG,EAAEU;QAAQ,CAAC,CAAC;MACnC,CAAC;MACDH,MAAM,CAACK,aAAa,CAACP,IAAI,CAAC;IAC5B;EAAC;IAAAvB,GAAA;IAAAC,KAAA,EAED,SAAA8B,QAAQA,CAACV,OAAO,EAAEW,KAAK,EAAEC,KAAK,EAAE;MAC9BlD,GAAG,CAAC,YAAY,EAAEsC,OAAO,EAAEW,KAAK,EAAEC,KAAK,CAAC;MACxC,IAAI,CAAC5B,UAAU,CAAC;QAAEgB,OAAO,EAAPA;MAAQ,CAAC,CAAC;IAC9B;;IAEA;EAAA;IAAArB,GAAA;IAAAC,KAAA,EACA,SAAAiC,aAAaA,CAAA,EAAG;MACd,OAAO,IAAI,CAACpC,UAAU;IACxB;EAAC;AAAA;AAAA,IAAAqC,QAAA,GAAAC,OAAA,cAGYnD,kBAAkB","ignoreList":[]}
|