@pie-lib/editable-html 11.18.6-esmbeta.0 → 11.19.0-mui-update.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +37 -0
- package/lib/block-tags.js +2 -3
- package/lib/block-tags.js.map +1 -1
- package/lib/constants.js +3 -6
- package/lib/constants.js.map +1 -1
- package/lib/editor.js +302 -450
- package/lib/editor.js.map +1 -1
- package/lib/index.js +19 -77
- package/lib/index.js.map +1 -1
- package/lib/parse-html.js +7 -7
- package/lib/parse-html.js.map +1 -1
- package/lib/plugins/characters/custom-popper.js +24 -44
- package/lib/plugins/characters/custom-popper.js.map +1 -1
- package/lib/plugins/characters/index.js +9 -60
- package/lib/plugins/characters/index.js.map +1 -1
- package/lib/plugins/characters/utils.js +3 -6
- package/lib/plugins/characters/utils.js.map +1 -1
- package/lib/plugins/css/icons/index.js +13 -25
- package/lib/plugins/css/icons/index.js.map +1 -1
- package/lib/plugins/css/index.js +22 -88
- package/lib/plugins/css/index.js.map +1 -1
- package/lib/plugins/customPlugin/index.js +10 -26
- package/lib/plugins/customPlugin/index.js.map +1 -1
- package/lib/plugins/html/icons/index.js +14 -26
- package/lib/plugins/html/icons/index.js.map +1 -1
- package/lib/plugins/html/index.js +4 -13
- package/lib/plugins/html/index.js.map +1 -1
- package/lib/plugins/image/alt-dialog.js +20 -49
- package/lib/plugins/image/alt-dialog.js.map +1 -1
- package/lib/plugins/image/component.js +119 -190
- package/lib/plugins/image/component.js.map +1 -1
- package/lib/plugins/image/image-toolbar.js +44 -86
- package/lib/plugins/image/image-toolbar.js.map +1 -1
- package/lib/plugins/image/index.js +6 -46
- package/lib/plugins/image/index.js.map +1 -1
- package/lib/plugins/image/insert-image-handler.js +10 -31
- package/lib/plugins/image/insert-image-handler.js.map +1 -1
- package/lib/plugins/index.js +44 -106
- package/lib/plugins/index.js.map +1 -1
- package/lib/plugins/list/index.js +27 -73
- package/lib/plugins/list/index.js.map +1 -1
- package/lib/plugins/math/index.js +64 -116
- package/lib/plugins/math/index.js.map +1 -1
- package/lib/plugins/media/index.js +23 -81
- package/lib/plugins/media/index.js.map +1 -1
- package/lib/plugins/media/media-dialog.js +192 -307
- package/lib/plugins/media/media-dialog.js.map +1 -1
- package/lib/plugins/media/media-toolbar.js +40 -65
- package/lib/plugins/media/media-toolbar.js.map +1 -1
- package/lib/plugins/media/media-wrapper.js +20 -49
- package/lib/plugins/media/media-wrapper.js.map +1 -1
- package/lib/plugins/rendering/index.js +5 -15
- package/lib/plugins/rendering/index.js.map +1 -1
- package/lib/plugins/respArea/drag-in-the-blank/choice.js +175 -249
- package/lib/plugins/respArea/drag-in-the-blank/choice.js.map +1 -1
- package/lib/plugins/respArea/drag-in-the-blank/index.js +39 -29
- package/lib/plugins/respArea/drag-in-the-blank/index.js.map +1 -1
- package/lib/plugins/respArea/explicit-constructed-response/index.js +3 -10
- package/lib/plugins/respArea/explicit-constructed-response/index.js.map +1 -1
- package/lib/plugins/respArea/icons/index.js +22 -45
- package/lib/plugins/respArea/icons/index.js.map +1 -1
- package/lib/plugins/respArea/index.js +5 -59
- package/lib/plugins/respArea/index.js.map +1 -1
- package/lib/plugins/respArea/inline-dropdown/index.js +2 -10
- package/lib/plugins/respArea/inline-dropdown/index.js.map +1 -1
- package/lib/plugins/respArea/math-templated/index.js +92 -109
- package/lib/plugins/respArea/math-templated/index.js.map +1 -1
- package/lib/plugins/respArea/utils.js +8 -40
- package/lib/plugins/respArea/utils.js.map +1 -1
- package/lib/plugins/table/CustomTablePlugin.js +24 -41
- package/lib/plugins/table/CustomTablePlugin.js.map +1 -1
- package/lib/plugins/table/icons/index.js +19 -35
- package/lib/plugins/table/icons/index.js.map +1 -1
- package/lib/plugins/table/index.js +41 -118
- package/lib/plugins/table/index.js.map +1 -1
- package/lib/plugins/table/table-toolbar.js +37 -87
- package/lib/plugins/table/table-toolbar.js.map +1 -1
- package/lib/plugins/textAlign/icons/index.js +18 -64
- package/lib/plugins/textAlign/icons/index.js.map +1 -1
- package/lib/plugins/textAlign/index.js +1 -6
- package/lib/plugins/textAlign/index.js.map +1 -1
- package/lib/plugins/toolbar/default-toolbar.js +30 -79
- package/lib/plugins/toolbar/default-toolbar.js.map +1 -1
- package/lib/plugins/toolbar/done-button.js +16 -34
- package/lib/plugins/toolbar/done-button.js.map +1 -1
- package/lib/plugins/toolbar/editor-and-toolbar.js +174 -201
- package/lib/plugins/toolbar/editor-and-toolbar.js.map +1 -1
- package/lib/plugins/toolbar/index.js +0 -5
- package/lib/plugins/toolbar/index.js.map +1 -1
- package/lib/plugins/toolbar/toolbar-buttons.js +57 -107
- package/lib/plugins/toolbar/toolbar-buttons.js.map +1 -1
- package/lib/plugins/toolbar/toolbar.js +95 -161
- package/lib/plugins/toolbar/toolbar.js.map +1 -1
- package/lib/plugins/utils.js +5 -25
- package/lib/plugins/utils.js.map +1 -1
- package/lib/serialization.js +44 -150
- package/lib/serialization.js.map +1 -1
- package/lib/shared/alert-dialog.js +23 -42
- package/lib/theme.js +1 -2
- package/lib/theme.js.map +1 -1
- package/package.json +15 -21
- package/src/__tests__/utils.js +1 -1
- package/src/editor.jsx +110 -108
- package/src/plugins/characters/custom-popper.js +20 -25
- package/src/plugins/css/icons/index.jsx +11 -13
- package/src/plugins/css/index.jsx +3 -5
- package/src/plugins/html/icons/index.jsx +12 -14
- package/src/plugins/image/alt-dialog.jsx +9 -8
- package/src/plugins/image/component.jsx +67 -87
- package/src/plugins/image/image-toolbar.jsx +26 -26
- package/src/plugins/image/index.jsx +1 -1
- package/src/plugins/index.jsx +10 -10
- package/src/plugins/math/index.jsx +1 -1
- package/src/plugins/media/index.jsx +2 -2
- package/src/plugins/media/media-dialog.js +65 -76
- package/src/plugins/media/media-toolbar.jsx +32 -33
- package/src/plugins/media/media-wrapper.jsx +10 -13
- package/src/plugins/respArea/drag-in-the-blank/choice.jsx +193 -180
- package/src/plugins/respArea/drag-in-the-blank/index.jsx +58 -22
- package/src/plugins/respArea/icons/index.jsx +16 -16
- package/src/plugins/respArea/math-templated/index.jsx +88 -89
- package/src/plugins/respArea/utils.jsx +1 -1
- package/src/plugins/table/icons/index.jsx +14 -16
- package/src/plugins/table/index.jsx +27 -19
- package/src/plugins/table/table-toolbar.jsx +17 -19
- package/src/plugins/textAlign/icons/index.jsx +3 -3
- package/src/plugins/toolbar/__tests__/default-toolbar.test.jsx +1 -1
- package/src/plugins/toolbar/__tests__/toolbar.test.jsx +1 -1
- package/src/plugins/toolbar/default-toolbar.jsx +18 -21
- package/src/plugins/toolbar/done-button.jsx +16 -22
- package/src/plugins/toolbar/editor-and-toolbar.jsx +134 -157
- package/src/plugins/toolbar/toolbar-buttons.jsx +29 -46
- package/src/plugins/toolbar/toolbar.jsx +60 -78
- package/esm/index.js +0 -111560
- package/esm/index.js.map +0 -1
- package/esm/package.json +0 -1
|
@@ -1,70 +1,49 @@
|
|
|
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"] = MediaPlugin;
|
|
9
8
|
exports.serialization = exports.insertDialog = void 0;
|
|
10
|
-
|
|
11
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
12
|
-
|
|
13
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
14
|
-
|
|
15
11
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
16
|
-
|
|
17
12
|
var _react = _interopRequireDefault(require("react"));
|
|
18
|
-
|
|
19
13
|
var _reactDom = _interopRequireDefault(require("react-dom"));
|
|
20
|
-
|
|
21
14
|
var _slate = require("slate");
|
|
22
|
-
|
|
23
|
-
var
|
|
24
|
-
|
|
25
|
-
var _VolumeUp = _interopRequireDefault(require("@material-ui/icons/VolumeUp"));
|
|
26
|
-
|
|
15
|
+
var _Theaters = _interopRequireDefault(require("@mui/icons-material/Theaters"));
|
|
16
|
+
var _VolumeUp = _interopRequireDefault(require("@mui/icons-material/VolumeUp"));
|
|
27
17
|
var _debug = _interopRequireDefault(require("debug"));
|
|
28
|
-
|
|
29
18
|
var _mediaDialog = _interopRequireDefault(require("./media-dialog"));
|
|
30
|
-
|
|
31
19
|
var _mediaToolbar = _interopRequireDefault(require("./media-toolbar"));
|
|
32
|
-
|
|
33
20
|
var _mediaWrapper = _interopRequireDefault(require("./media-wrapper"));
|
|
34
|
-
|
|
35
21
|
var _excluded = ["type", "callback", "opts"],
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
function
|
|
39
|
-
|
|
40
|
-
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; }
|
|
41
|
-
|
|
22
|
+
_excluded2 = ["src", "height", "width", "editing", "tag"];
|
|
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; }
|
|
42
25
|
var log = (0, _debug["default"])('@pie-lib:editable-html:plugins:image');
|
|
43
|
-
|
|
44
26
|
var removeDialogs = function removeDialogs() {
|
|
45
27
|
var prevDialogs = document.querySelectorAll('.insert-media-dialog');
|
|
46
28
|
prevDialogs.forEach(function (s) {
|
|
47
29
|
return s.remove();
|
|
48
30
|
});
|
|
49
31
|
};
|
|
50
|
-
|
|
51
|
-
var insertDialog = function insertDialog(props) {
|
|
32
|
+
var insertDialog = exports.insertDialog = function insertDialog(props) {
|
|
52
33
|
var newEl = document.createElement('div');
|
|
53
34
|
var type = props.type,
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
35
|
+
callback = props.callback,
|
|
36
|
+
opts = props.opts,
|
|
37
|
+
rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
57
38
|
var initialBodyOverflow = document.body.style.overflow;
|
|
58
39
|
removeDialogs();
|
|
59
40
|
newEl.className = 'insert-media-dialog';
|
|
60
41
|
document.body.style.overflow = 'hidden';
|
|
61
|
-
|
|
62
42
|
var handleClose = function handleClose(val, data) {
|
|
63
43
|
callback(val, data);
|
|
64
44
|
newEl.remove();
|
|
65
45
|
document.body.style.overflow = initialBodyOverflow;
|
|
66
46
|
};
|
|
67
|
-
|
|
68
47
|
var el = /*#__PURE__*/_react["default"].createElement(_mediaDialog["default"], (0, _extends2["default"])({}, rest, {
|
|
69
48
|
uploadSoundSupport: opts.uploadSoundSupport,
|
|
70
49
|
type: type,
|
|
@@ -72,22 +51,16 @@ var insertDialog = function insertDialog(props) {
|
|
|
72
51
|
open: true,
|
|
73
52
|
handleClose: handleClose
|
|
74
53
|
}));
|
|
75
|
-
|
|
76
54
|
_reactDom["default"].render(el, newEl);
|
|
77
|
-
|
|
78
55
|
document.body.appendChild(newEl);
|
|
79
56
|
};
|
|
80
|
-
|
|
81
|
-
exports.insertDialog = insertDialog;
|
|
82
57
|
var types = ['audio', 'video'];
|
|
83
|
-
|
|
84
58
|
function MediaPlugin(type, opts) {
|
|
85
59
|
var toolbar = {
|
|
86
60
|
icon: type === 'audio' ? /*#__PURE__*/_react["default"].createElement(_VolumeUp["default"], null) : /*#__PURE__*/_react["default"].createElement(_Theaters["default"], null),
|
|
87
61
|
ariaLabel: type === 'audio' ? 'Insert audio' : 'Insert video',
|
|
88
62
|
onClick: function onClick(value, onChange) {
|
|
89
63
|
log('[toolbar] onClick');
|
|
90
|
-
|
|
91
64
|
var inline = _slate.Inline.create({
|
|
92
65
|
type: type,
|
|
93
66
|
isVoid: true,
|
|
@@ -102,7 +75,6 @@ function MediaPlugin(type, opts) {
|
|
|
102
75
|
width: undefined
|
|
103
76
|
}
|
|
104
77
|
});
|
|
105
|
-
|
|
106
78
|
var change = value.change().insertInline(inline);
|
|
107
79
|
onChange(change);
|
|
108
80
|
insertDialog({
|
|
@@ -112,7 +84,6 @@ function MediaPlugin(type, opts) {
|
|
|
112
84
|
var nodeIsThere = change.value.document.findDescendant(function (d) {
|
|
113
85
|
return d.key === inline.key;
|
|
114
86
|
});
|
|
115
|
-
|
|
116
87
|
if (nodeIsThere) {
|
|
117
88
|
if (!val) {
|
|
118
89
|
var c = change.removeNodeByKey(inline.key);
|
|
@@ -123,7 +94,6 @@ function MediaPlugin(type, opts) {
|
|
|
123
94
|
var _c = change.setNodeByKey(inline.key, {
|
|
124
95
|
data: data
|
|
125
96
|
});
|
|
126
|
-
|
|
127
97
|
onChange(_c, function () {
|
|
128
98
|
return opts.focus('beginning', nodeIsThere);
|
|
129
99
|
});
|
|
@@ -149,16 +119,15 @@ function MediaPlugin(type, opts) {
|
|
|
149
119
|
renderNode: function renderNode(props) {
|
|
150
120
|
if (props.node.type === type) {
|
|
151
121
|
var node = props.node,
|
|
152
|
-
|
|
122
|
+
key = props.key;
|
|
153
123
|
var data = node.data;
|
|
154
124
|
var jsonData = data.toJSON();
|
|
155
125
|
var src = jsonData.src,
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
126
|
+
height = jsonData.height,
|
|
127
|
+
width = jsonData.width,
|
|
128
|
+
editing = jsonData.editing,
|
|
129
|
+
tag = jsonData.tag,
|
|
130
|
+
rest = (0, _objectWithoutProperties2["default"])(jsonData, _excluded2);
|
|
162
131
|
var handleEdit = function handleEdit() {
|
|
163
132
|
var change = opts.createChange();
|
|
164
133
|
var c = change.setNodeByKey(key, {
|
|
@@ -176,13 +145,11 @@ function MediaPlugin(type, opts) {
|
|
|
176
145
|
var nodeIsThere = change.value.document.findDescendant(function (d) {
|
|
177
146
|
return d.type === type && d.data.get('editing');
|
|
178
147
|
});
|
|
179
|
-
|
|
180
148
|
if (nodeIsThere && val) {
|
|
181
149
|
var _c2 = change.setNodeByKey(key, {
|
|
182
150
|
data: data,
|
|
183
151
|
editing: false
|
|
184
152
|
});
|
|
185
|
-
|
|
186
153
|
opts.onChange(_c2, function () {
|
|
187
154
|
return opts.focus('beginning', nodeIsThere);
|
|
188
155
|
});
|
|
@@ -193,23 +160,18 @@ function MediaPlugin(type, opts) {
|
|
|
193
160
|
}));
|
|
194
161
|
});
|
|
195
162
|
};
|
|
196
|
-
|
|
197
163
|
var handleDelete = function handleDelete() {
|
|
198
164
|
var change = opts.createChange();
|
|
199
165
|
var c = change.removeNodeByKey(node.key);
|
|
200
166
|
opts.onChange(c);
|
|
201
167
|
};
|
|
202
|
-
|
|
203
168
|
var style = {};
|
|
204
|
-
|
|
205
169
|
if (width) {
|
|
206
170
|
style.width = "".concat(width, "px");
|
|
207
171
|
}
|
|
208
|
-
|
|
209
172
|
if (height) {
|
|
210
173
|
style.height = "".concat(height, "px");
|
|
211
174
|
}
|
|
212
|
-
|
|
213
175
|
if (tag === 'audio') {
|
|
214
176
|
return /*#__PURE__*/_react["default"].createElement(_mediaWrapper["default"], (0, _extends2["default"])({
|
|
215
177
|
editor: true,
|
|
@@ -226,7 +188,6 @@ function MediaPlugin(type, opts) {
|
|
|
226
188
|
onRemove: handleDelete
|
|
227
189
|
}));
|
|
228
190
|
}
|
|
229
|
-
|
|
230
191
|
return /*#__PURE__*/_react["default"].createElement(_mediaWrapper["default"], (0, _extends2["default"])({
|
|
231
192
|
editor: true,
|
|
232
193
|
"data-type": type,
|
|
@@ -252,15 +213,12 @@ function MediaPlugin(type, opts) {
|
|
|
252
213
|
if (d.object === 'text') {
|
|
253
214
|
textNodeMap[index] = d;
|
|
254
215
|
}
|
|
255
|
-
|
|
256
216
|
var isMedia = types.indexOf(d.type) >= 0;
|
|
257
|
-
|
|
258
217
|
if (isMedia) {
|
|
259
218
|
if (index > 0 && textNodeMap[index - 1] && textNodeMap[index - 1].text === '') {
|
|
260
219
|
updateNodesArray.push(textNodeMap[index - 1]);
|
|
261
220
|
}
|
|
262
221
|
}
|
|
263
|
-
|
|
264
222
|
index++;
|
|
265
223
|
});
|
|
266
224
|
if (!updateNodesArray.length) return;
|
|
@@ -274,20 +232,15 @@ function MediaPlugin(type, opts) {
|
|
|
274
232
|
}
|
|
275
233
|
};
|
|
276
234
|
}
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
deserialize: function deserialize(el
|
|
280
|
-
/*, next*/
|
|
281
|
-
) {
|
|
235
|
+
var serialization = exports.serialization = {
|
|
236
|
+
deserialize: function deserialize(el /*, next*/) {
|
|
282
237
|
var type = el.dataset && el.dataset.type;
|
|
283
238
|
var tag = 'iframe';
|
|
284
239
|
var src;
|
|
285
240
|
var typeIndex = types.indexOf(type);
|
|
286
|
-
|
|
287
241
|
if (typeIndex < 0) {
|
|
288
242
|
if (el instanceof Element && el.tagName.toLowerCase() === 'audio') {
|
|
289
243
|
var _el$firstChild;
|
|
290
|
-
|
|
291
244
|
type = 'audio';
|
|
292
245
|
tag = 'audio';
|
|
293
246
|
src = (_el$firstChild = el.firstChild) === null || _el$firstChild === void 0 ? void 0 : _el$firstChild.getAttribute('src');
|
|
@@ -295,14 +248,12 @@ var serialization = {
|
|
|
295
248
|
return;
|
|
296
249
|
}
|
|
297
250
|
}
|
|
298
|
-
|
|
299
251
|
var _ref = el.dataset || {},
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
252
|
+
ends = _ref.ends,
|
|
253
|
+
starts = _ref.starts,
|
|
254
|
+
title = _ref.title,
|
|
255
|
+
editing = _ref.editing,
|
|
256
|
+
url = _ref.url;
|
|
306
257
|
log('deserialize: ', name);
|
|
307
258
|
var width = parseInt(el.getAttribute('width'), 10) || null;
|
|
308
259
|
var height = parseInt(el.getAttribute('height'), 10) || null;
|
|
@@ -325,9 +276,7 @@ var serialization = {
|
|
|
325
276
|
log('return object: ', out);
|
|
326
277
|
return out;
|
|
327
278
|
},
|
|
328
|
-
serialize: function serialize(object
|
|
329
|
-
/*, children*/
|
|
330
|
-
) {
|
|
279
|
+
serialize: function serialize(object /*, children*/) {
|
|
331
280
|
var typeIndex = types.indexOf(object.type);
|
|
332
281
|
if (typeIndex < 0) return;
|
|
333
282
|
var type = types[typeIndex];
|
|
@@ -342,15 +291,12 @@ var serialization = {
|
|
|
342
291
|
var height = data.get('height');
|
|
343
292
|
var url = data.get('url');
|
|
344
293
|
var style = {};
|
|
345
|
-
|
|
346
294
|
if (width) {
|
|
347
295
|
style.width = "".concat(width, "px");
|
|
348
296
|
}
|
|
349
|
-
|
|
350
297
|
if (height) {
|
|
351
298
|
style.height = "".concat(height, "px");
|
|
352
299
|
}
|
|
353
|
-
|
|
354
300
|
var divProps = {
|
|
355
301
|
'data-editing': editing,
|
|
356
302
|
'data-ends': ends,
|
|
@@ -358,11 +304,9 @@ var serialization = {
|
|
|
358
304
|
'data-title': title,
|
|
359
305
|
'data-url': url
|
|
360
306
|
};
|
|
361
|
-
|
|
362
307
|
var props = _objectSpread(_objectSpread({}, style), {}, {
|
|
363
308
|
src: src
|
|
364
309
|
});
|
|
365
|
-
|
|
366
310
|
if (tag === 'audio') {
|
|
367
311
|
return /*#__PURE__*/_react["default"].createElement("audio", {
|
|
368
312
|
controls: "controls",
|
|
@@ -372,7 +316,6 @@ var serialization = {
|
|
|
372
316
|
src: src
|
|
373
317
|
}));
|
|
374
318
|
}
|
|
375
|
-
|
|
376
319
|
return /*#__PURE__*/_react["default"].createElement("iframe", (0, _extends2["default"])({
|
|
377
320
|
"data-type": type,
|
|
378
321
|
src: src
|
|
@@ -383,5 +326,4 @@ var serialization = {
|
|
|
383
326
|
}, props));
|
|
384
327
|
}
|
|
385
328
|
};
|
|
386
|
-
exports.serialization = serialization;
|
|
387
329
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/plugins/media/index.jsx"],"names":["log","removeDialogs","prevDialogs","document","querySelectorAll","forEach","s","remove","insertDialog","props","newEl","createElement","type","callback","opts","rest","initialBodyOverflow","body","style","overflow","className","handleClose","val","data","el","uploadSoundSupport","ReactDOM","render","appendChild","types","MediaPlugin","toolbar","icon","ariaLabel","onClick","value","onChange","inline","Inline","create","isVoid","editing","ends","undefined","height","title","starts","src","url","width","change","insertInline","nodeIsThere","findDescendant","d","key","c","removeNodeByKey","focus","setNodeByKey","supports","node","object","name","deleteNode","e","preventDefault","renderNode","jsonData","toJSON","tag","handleEdit","createChange","edit","get","handleDelete","normalizeNode","textNodeMap","updateNodesArray","index","isMedia","indexOf","text","push","length","withoutNormalization","n","insertTextByKey","serialization","deserialize","dataset","typeIndex","Element","tagName","toLowerCase","firstChild","getAttribute","parseInt","out","serialize","divProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Inline } from 'slate';\nimport TheatersIcon from '@material-ui/icons/Theaters';\nimport VolumeUpIcon from '@material-ui/icons/VolumeUp';\nimport debug from 'debug';\n\nimport MediaDialog from './media-dialog';\nimport MediaToolbar from './media-toolbar';\nimport MediaWrapper from './media-wrapper';\n\nconst log = debug('@pie-lib:editable-html:plugins:image');\n\nconst removeDialogs = () => {\n const prevDialogs = document.querySelectorAll('.insert-media-dialog');\n\n prevDialogs.forEach((s) => s.remove());\n};\n\nexport const insertDialog = (props) => {\n const newEl = document.createElement('div');\n const { type, callback, opts, ...rest } = props;\n const initialBodyOverflow = document.body.style.overflow;\n\n removeDialogs();\n\n newEl.className = 'insert-media-dialog';\n document.body.style.overflow = 'hidden';\n\n const handleClose = (val, data) => {\n callback(val, data);\n newEl.remove();\n document.body.style.overflow = initialBodyOverflow;\n };\n\n const el = (\n <MediaDialog\n {...rest}\n uploadSoundSupport={opts.uploadSoundSupport}\n type={type}\n disablePortal={true}\n open={true}\n handleClose={handleClose}\n />\n );\n\n ReactDOM.render(el, newEl);\n\n document.body.appendChild(newEl);\n};\n\nconst types = ['audio', 'video'];\n\nexport default function MediaPlugin(type, opts) {\n const toolbar = {\n icon: type === 'audio' ? <VolumeUpIcon /> : <TheatersIcon />,\n ariaLabel: type === 'audio' ? 'Insert audio' : 'Insert video',\n onClick: (value, onChange) => {\n log('[toolbar] onClick');\n const inline = Inline.create({\n type: type,\n isVoid: true,\n data: {\n editing: false,\n ends: undefined,\n height: undefined,\n title: undefined,\n starts: undefined,\n src: undefined,\n url: undefined,\n width: undefined,\n },\n });\n\n const change = value.change().insertInline(inline);\n onChange(change);\n insertDialog({\n type,\n opts,\n callback: (val, data) => {\n const nodeIsThere = change.value.document.findDescendant((d) => d.key === inline.key);\n\n if (nodeIsThere) {\n if (!val) {\n const c = change.removeNodeByKey(inline.key);\n onChange(c, () => opts.focus());\n } else {\n const c = change.setNodeByKey(inline.key, { data });\n onChange(c, () => opts.focus('beginning', nodeIsThere));\n }\n } else {\n opts.focus();\n }\n },\n });\n },\n supports: (node) => node.object === 'inline' && node.type === type,\n };\n\n return {\n name: type,\n toolbar,\n deleteNode: (e, node, value, onChange) => {\n e.preventDefault();\n const change = value.change().removeNodeByKey(node.key);\n\n onChange(change);\n },\n renderNode(props) {\n if (props.node.type === type) {\n const { node, key } = props;\n const { data } = node;\n const jsonData = data.toJSON();\n const { src, height, width, editing, tag, ...rest } = jsonData;\n const handleEdit = () => {\n const change = opts.createChange();\n const c = change.setNodeByKey(key, {\n data: {\n ...jsonData,\n editing: true,\n },\n });\n\n opts.onChange(c, () => {\n insertDialog({\n ...jsonData,\n edit: true,\n type,\n opts,\n callback: (val, data) => {\n const { key } = node;\n\n const nodeIsThere = change.value.document.findDescendant(\n (d) => d.type === type && d.data.get('editing'),\n );\n\n if (nodeIsThere && val) {\n const c = change.setNodeByKey(key, { data, editing: false });\n opts.onChange(c, () => opts.focus('beginning', nodeIsThere));\n } else {\n opts.focus();\n }\n },\n });\n });\n };\n const handleDelete = () => {\n const change = opts.createChange();\n const c = change.removeNodeByKey(node.key);\n\n opts.onChange(c);\n };\n const style = {};\n\n if (width) {\n style.width = `${width}px`;\n }\n\n if (height) {\n style.height = `${height}px`;\n }\n\n if (tag === 'audio') {\n return (\n <MediaWrapper editor data-type={type} width={style.width} {...rest}>\n <audio controls=\"controls\" controlsList=\"nodownload\">\n <source type=\"audio/mp3\" src={src} />\n </audio>\n <MediaToolbar hideEdit onRemove={handleDelete} />\n </MediaWrapper>\n );\n }\n\n return (\n <MediaWrapper editor data-type={type} width={style.width} {...rest}>\n <iframe\n frameBorder=\"0\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n src={src}\n editing={editing ? 1 : 0}\n {...rest}\n {...style}\n />\n <MediaToolbar onEdit={handleEdit} onRemove={handleDelete} />\n </MediaWrapper>\n );\n }\n },\n normalizeNode: (node) => {\n const textNodeMap = {};\n const updateNodesArray = [];\n let index = 0;\n\n if (node.object !== 'document') return;\n\n node.findDescendant((d) => {\n if (d.object === 'text') {\n textNodeMap[index] = d;\n }\n\n const isMedia = types.indexOf(d.type) >= 0;\n\n if (isMedia) {\n if (index > 0 && textNodeMap[index - 1] && textNodeMap[index - 1].text === '') {\n updateNodesArray.push(textNodeMap[index - 1]);\n }\n }\n\n index++;\n });\n\n if (!updateNodesArray.length) return;\n\n return (change) => {\n change.withoutNormalization(() => {\n updateNodesArray.forEach((n) => change.insertTextByKey(n.key, 0, ' '));\n });\n };\n },\n };\n}\n\nexport const serialization = {\n deserialize(el /*, next*/) {\n let type = el.dataset && el.dataset.type;\n let tag = 'iframe';\n let src;\n const typeIndex = types.indexOf(type);\n\n if (typeIndex < 0) {\n if (el instanceof Element && el.tagName.toLowerCase() === 'audio') {\n type = 'audio';\n tag = 'audio';\n src = el.firstChild?.getAttribute('src');\n } else {\n return;\n }\n }\n\n const { ends, starts, title, editing, url } = el.dataset || {};\n\n log('deserialize: ', name);\n const width = parseInt(el.getAttribute('width'), 10) || null;\n const height = parseInt(el.getAttribute('height'), 10) || null;\n\n const out = {\n object: 'inline',\n type: type,\n isVoid: true,\n data: {\n tag,\n src: src || el.getAttribute('src'),\n editing,\n ends,\n height,\n starts,\n title,\n width,\n url,\n },\n };\n log('return object: ', out);\n return out;\n },\n serialize(object /*, children*/) {\n const typeIndex = types.indexOf(object.type);\n\n if (typeIndex < 0) return;\n\n const type = types[typeIndex];\n\n const { data } = object;\n const editing = data.get('editing');\n const tag = data.get('tag');\n const ends = data.get('ends');\n const src = data.get('src');\n const starts = data.get('starts');\n const title = data.get('title');\n const width = data.get('width');\n const height = data.get('height');\n const url = data.get('url');\n const style = {};\n\n if (width) {\n style.width = `${width}px`;\n }\n\n if (height) {\n style.height = `${height}px`;\n }\n\n const divProps = {\n 'data-editing': editing,\n 'data-ends': ends,\n 'data-starts': starts,\n 'data-title': title,\n 'data-url': url,\n };\n const props = {\n ...style,\n src,\n };\n\n if (tag === 'audio') {\n return (\n <audio controls=\"controls\" controlsList=\"nodownload\">\n <source type=\"audio/mp3\" src={src} />\n </audio>\n );\n }\n\n return (\n <iframe\n data-type={type}\n src={src}\n {...divProps}\n frameBorder=\"0\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n {...props}\n />\n );\n },\n};\n"],"file":"index.js"}
|
|
1
|
+
{"version":3,"file":"index.js","names":["_react","_interopRequireDefault","require","_reactDom","_slate","_Theaters","_VolumeUp","_debug","_mediaDialog","_mediaToolbar","_mediaWrapper","_excluded","_excluded2","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","defineProperty","log","debug","removeDialogs","prevDialogs","document","querySelectorAll","s","remove","insertDialog","exports","props","newEl","createElement","type","callback","opts","rest","_objectWithoutProperties2","initialBodyOverflow","body","style","overflow","className","handleClose","val","data","el","_extends2","uploadSoundSupport","disablePortal","open","ReactDOM","render","appendChild","types","MediaPlugin","toolbar","icon","ariaLabel","onClick","value","onChange","inline","Inline","create","isVoid","editing","ends","undefined","height","title","starts","src","url","width","change","insertInline","nodeIsThere","findDescendant","d","key","c","removeNodeByKey","focus","setNodeByKey","supports","node","object","name","deleteNode","preventDefault","renderNode","jsonData","toJSON","tag","handleEdit","createChange","edit","get","handleDelete","concat","editor","controls","controlsList","hideEdit","onRemove","frameBorder","allow","allowFullScreen","onEdit","normalizeNode","textNodeMap","updateNodesArray","index","isMedia","indexOf","text","withoutNormalization","n","insertTextByKey","serialization","deserialize","dataset","typeIndex","Element","tagName","toLowerCase","_el$firstChild","firstChild","getAttribute","_ref","parseInt","out","serialize","divProps"],"sources":["../../../src/plugins/media/index.jsx"],"sourcesContent":["import React from 'react';\nimport ReactDOM from 'react-dom';\nimport { Inline } from 'slate';\nimport TheatersIcon from '@mui/icons-material/Theaters';\nimport VolumeUpIcon from '@mui/icons-material/VolumeUp';\nimport debug from 'debug';\n\nimport MediaDialog from './media-dialog';\nimport MediaToolbar from './media-toolbar';\nimport MediaWrapper from './media-wrapper';\n\nconst log = debug('@pie-lib:editable-html:plugins:image');\n\nconst removeDialogs = () => {\n const prevDialogs = document.querySelectorAll('.insert-media-dialog');\n\n prevDialogs.forEach((s) => s.remove());\n};\n\nexport const insertDialog = (props) => {\n const newEl = document.createElement('div');\n const { type, callback, opts, ...rest } = props;\n const initialBodyOverflow = document.body.style.overflow;\n\n removeDialogs();\n\n newEl.className = 'insert-media-dialog';\n document.body.style.overflow = 'hidden';\n\n const handleClose = (val, data) => {\n callback(val, data);\n newEl.remove();\n document.body.style.overflow = initialBodyOverflow;\n };\n\n const el = (\n <MediaDialog\n {...rest}\n uploadSoundSupport={opts.uploadSoundSupport}\n type={type}\n disablePortal={true}\n open={true}\n handleClose={handleClose}\n />\n );\n\n ReactDOM.render(el, newEl);\n\n document.body.appendChild(newEl);\n};\n\nconst types = ['audio', 'video'];\n\nexport default function MediaPlugin(type, opts) {\n const toolbar = {\n icon: type === 'audio' ? <VolumeUpIcon /> : <TheatersIcon />,\n ariaLabel: type === 'audio' ? 'Insert audio' : 'Insert video',\n onClick: (value, onChange) => {\n log('[toolbar] onClick');\n const inline = Inline.create({\n type: type,\n isVoid: true,\n data: {\n editing: false,\n ends: undefined,\n height: undefined,\n title: undefined,\n starts: undefined,\n src: undefined,\n url: undefined,\n width: undefined,\n },\n });\n\n const change = value.change().insertInline(inline);\n onChange(change);\n insertDialog({\n type,\n opts,\n callback: (val, data) => {\n const nodeIsThere = change.value.document.findDescendant((d) => d.key === inline.key);\n\n if (nodeIsThere) {\n if (!val) {\n const c = change.removeNodeByKey(inline.key);\n onChange(c, () => opts.focus());\n } else {\n const c = change.setNodeByKey(inline.key, { data });\n onChange(c, () => opts.focus('beginning', nodeIsThere));\n }\n } else {\n opts.focus();\n }\n },\n });\n },\n supports: (node) => node.object === 'inline' && node.type === type,\n };\n\n return {\n name: type,\n toolbar,\n deleteNode: (e, node, value, onChange) => {\n e.preventDefault();\n const change = value.change().removeNodeByKey(node.key);\n\n onChange(change);\n },\n renderNode(props) {\n if (props.node.type === type) {\n const { node, key } = props;\n const { data } = node;\n const jsonData = data.toJSON();\n const { src, height, width, editing, tag, ...rest } = jsonData;\n const handleEdit = () => {\n const change = opts.createChange();\n const c = change.setNodeByKey(key, {\n data: {\n ...jsonData,\n editing: true,\n },\n });\n\n opts.onChange(c, () => {\n insertDialog({\n ...jsonData,\n edit: true,\n type,\n opts,\n callback: (val, data) => {\n const { key } = node;\n\n const nodeIsThere = change.value.document.findDescendant(\n (d) => d.type === type && d.data.get('editing'),\n );\n\n if (nodeIsThere && val) {\n const c = change.setNodeByKey(key, { data, editing: false });\n opts.onChange(c, () => opts.focus('beginning', nodeIsThere));\n } else {\n opts.focus();\n }\n },\n });\n });\n };\n const handleDelete = () => {\n const change = opts.createChange();\n const c = change.removeNodeByKey(node.key);\n\n opts.onChange(c);\n };\n const style = {};\n\n if (width) {\n style.width = `${width}px`;\n }\n\n if (height) {\n style.height = `${height}px`;\n }\n\n if (tag === 'audio') {\n return (\n <MediaWrapper editor data-type={type} width={style.width} {...rest}>\n <audio controls=\"controls\" controlsList=\"nodownload\">\n <source type=\"audio/mp3\" src={src} />\n </audio>\n <MediaToolbar hideEdit onRemove={handleDelete} />\n </MediaWrapper>\n );\n }\n\n return (\n <MediaWrapper editor data-type={type} width={style.width} {...rest}>\n <iframe\n frameBorder=\"0\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n src={src}\n editing={editing ? 1 : 0}\n {...rest}\n {...style}\n />\n <MediaToolbar onEdit={handleEdit} onRemove={handleDelete} />\n </MediaWrapper>\n );\n }\n },\n normalizeNode: (node) => {\n const textNodeMap = {};\n const updateNodesArray = [];\n let index = 0;\n\n if (node.object !== 'document') return;\n\n node.findDescendant((d) => {\n if (d.object === 'text') {\n textNodeMap[index] = d;\n }\n\n const isMedia = types.indexOf(d.type) >= 0;\n\n if (isMedia) {\n if (index > 0 && textNodeMap[index - 1] && textNodeMap[index - 1].text === '') {\n updateNodesArray.push(textNodeMap[index - 1]);\n }\n }\n\n index++;\n });\n\n if (!updateNodesArray.length) return;\n\n return (change) => {\n change.withoutNormalization(() => {\n updateNodesArray.forEach((n) => change.insertTextByKey(n.key, 0, ' '));\n });\n };\n },\n };\n}\n\nexport const serialization = {\n deserialize(el /*, next*/) {\n let type = el.dataset && el.dataset.type;\n let tag = 'iframe';\n let src;\n const typeIndex = types.indexOf(type);\n\n if (typeIndex < 0) {\n if (el instanceof Element && el.tagName.toLowerCase() === 'audio') {\n type = 'audio';\n tag = 'audio';\n src = el.firstChild?.getAttribute('src');\n } else {\n return;\n }\n }\n\n const { ends, starts, title, editing, url } = el.dataset || {};\n\n log('deserialize: ', name);\n const width = parseInt(el.getAttribute('width'), 10) || null;\n const height = parseInt(el.getAttribute('height'), 10) || null;\n\n const out = {\n object: 'inline',\n type: type,\n isVoid: true,\n data: {\n tag,\n src: src || el.getAttribute('src'),\n editing,\n ends,\n height,\n starts,\n title,\n width,\n url,\n },\n };\n log('return object: ', out);\n return out;\n },\n serialize(object /*, children*/) {\n const typeIndex = types.indexOf(object.type);\n\n if (typeIndex < 0) return;\n\n const type = types[typeIndex];\n\n const { data } = object;\n const editing = data.get('editing');\n const tag = data.get('tag');\n const ends = data.get('ends');\n const src = data.get('src');\n const starts = data.get('starts');\n const title = data.get('title');\n const width = data.get('width');\n const height = data.get('height');\n const url = data.get('url');\n const style = {};\n\n if (width) {\n style.width = `${width}px`;\n }\n\n if (height) {\n style.height = `${height}px`;\n }\n\n const divProps = {\n 'data-editing': editing,\n 'data-ends': ends,\n 'data-starts': starts,\n 'data-title': title,\n 'data-url': url,\n };\n const props = {\n ...style,\n src,\n };\n\n if (tag === 'audio') {\n return (\n <audio controls=\"controls\" controlsList=\"nodownload\">\n <source type=\"audio/mp3\" src={src} />\n </audio>\n );\n }\n\n return (\n <iframe\n data-type={type}\n src={src}\n {...divProps}\n frameBorder=\"0\"\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n {...props}\n />\n );\n },\n};\n"],"mappings":"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","ignoreList":[]}
|