@pie-lib/editable-html-tip-tap 2.1.2-next.3 → 2.1.2-next.31
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/dist/components/CharacterPicker.d.ts +31 -0
- package/dist/components/CharacterPicker.js +131 -0
- package/dist/components/EditableHtml.d.ts +11 -0
- package/dist/components/EditableHtml.js +291 -0
- package/dist/components/MenuBar.d.ts +11 -0
- package/dist/components/MenuBar.js +462 -0
- package/dist/components/TiptapContainer.d.ts +11 -0
- package/dist/components/TiptapContainer.js +154 -0
- package/dist/components/characters/characterUtils.d.ts +35 -0
- package/dist/components/characters/characterUtils.js +465 -0
- package/dist/components/characters/custom-popper.d.ts +14 -0
- package/dist/components/characters/custom-popper.js +32 -0
- package/dist/components/common/done-button.d.ts +30 -0
- package/dist/components/common/done-button.js +26 -0
- package/dist/components/common/toolbar-buttons.d.ts +38 -0
- package/dist/components/common/toolbar-buttons.js +91 -0
- package/dist/components/icons/CssIcon.d.ts +11 -0
- package/dist/components/icons/CssIcon.js +14 -0
- package/dist/components/icons/RespArea.d.ts +26 -0
- package/dist/components/icons/RespArea.js +42 -0
- package/dist/components/icons/TableIcons.d.ts +14 -0
- package/dist/components/icons/TableIcons.js +32 -0
- package/dist/components/icons/TextAlign.d.ts +18 -0
- package/dist/components/icons/TextAlign.js +134 -0
- package/dist/components/image/AltDialog.d.ts +22 -0
- package/dist/components/image/AltDialog.js +61 -0
- package/dist/components/image/ImageToolbar.d.ts +24 -0
- package/dist/components/image/ImageToolbar.js +80 -0
- package/dist/components/image/InsertImageHandler.d.ts +32 -0
- package/dist/components/image/InsertImageHandler.js +53 -0
- package/dist/components/media/MediaDialog.d.ts +43 -0
- package/dist/components/media/MediaDialog.js +389 -0
- package/dist/components/media/MediaToolbar.d.ts +19 -0
- package/dist/components/media/MediaToolbar.js +41 -0
- package/dist/components/media/MediaWrapper.d.ts +19 -0
- package/dist/components/respArea/DragInTheBlank/DragInTheBlank.d.ts +23 -0
- package/dist/components/respArea/DragInTheBlank/DragInTheBlank.js +58 -0
- package/dist/components/respArea/DragInTheBlank/choice.d.ts +56 -0
- package/dist/components/respArea/DragInTheBlank/choice.js +156 -0
- package/dist/components/respArea/ExplicitConstructedResponse.d.ts +20 -0
- package/dist/components/respArea/ExplicitConstructedResponse.js +83 -0
- package/dist/components/respArea/InlineDropdown.d.ts +18 -0
- package/dist/components/respArea/InlineDropdown.js +119 -0
- package/dist/components/respArea/MathTemplated.d.ts +19 -0
- package/dist/components/respArea/MathTemplated.js +97 -0
- package/dist/components/respArea/ToolbarIcon.d.ts +14 -0
- package/dist/components/respArea/ToolbarIcon.js +17 -0
- package/dist/components/respArea/inlineDropdownUtils.d.ts +15 -0
- package/dist/components/respArea/inlineDropdownUtils.js +15 -0
- package/dist/constants.d.ts +13 -0
- package/dist/constants.js +4 -0
- package/dist/extensions/css.d.ts +11 -0
- package/dist/extensions/css.js +115 -0
- package/dist/extensions/custom-toolbar-wrapper.d.ts +11 -0
- package/dist/extensions/custom-toolbar-wrapper.js +61 -0
- package/dist/extensions/div-node.d.ts +10 -0
- package/dist/extensions/div-node.js +42 -0
- package/dist/extensions/ensure-empty-root-div.d.ts +14 -0
- package/dist/extensions/ensure-empty-root-div.js +24 -0
- package/dist/extensions/ensure-list-item-content-is-div.d.ts +15 -0
- package/dist/extensions/ensure-list-item-content-is-div.js +31 -0
- package/dist/extensions/extended-list-item.d.ts +13 -0
- package/dist/extensions/extended-list-item.js +5 -0
- package/dist/extensions/extended-table-cell.d.ts +10 -0
- package/dist/extensions/extended-table-cell.js +6 -0
- package/dist/extensions/extended-table.d.ts +17 -0
- package/dist/extensions/extended-table.js +34 -0
- package/dist/extensions/heading-paragraph.d.ts +17 -0
- package/dist/extensions/heading-paragraph.js +30 -0
- package/dist/extensions/image-component.d.ts +22 -0
- package/dist/extensions/image-component.js +220 -0
- package/dist/extensions/image.d.ts +10 -0
- package/dist/extensions/image.js +68 -0
- package/dist/extensions/index.d.ts +16 -0
- package/dist/extensions/index.js +64 -0
- package/dist/extensions/math.d.ts +15 -0
- package/dist/extensions/math.js +158 -0
- package/dist/extensions/media.d.ts +19 -0
- package/dist/extensions/media.js +149 -0
- package/dist/extensions/responseArea.d.ts +27 -0
- package/dist/extensions/responseArea.js +259 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.js +7 -0
- package/dist/node_modules/.bun/clsx@2.1.1/node_modules/clsx/dist/clsx.js +16 -0
- package/dist/styles/editorContainerStyles.d.ts +134 -0
- package/dist/theme.d.ts +9 -0
- package/dist/utils/helper.d.ts +9 -0
- package/dist/utils/helper.js +27 -0
- package/dist/utils/size.d.ts +9 -0
- package/dist/utils/size.js +14 -0
- package/package.json +56 -40
- package/CHANGELOG.json +0 -32
- package/CHANGELOG.md +0 -2532
- package/LICENSE.md +0 -5
- package/lib/components/CharacterPicker.js +0 -195
- package/lib/components/CharacterPicker.js.map +0 -1
- package/lib/components/EditableHtml.js +0 -375
- package/lib/components/EditableHtml.js.map +0 -1
- package/lib/components/MenuBar.js +0 -693
- package/lib/components/MenuBar.js.map +0 -1
- package/lib/components/TiptapContainer.js +0 -234
- package/lib/components/TiptapContainer.js.map +0 -1
- package/lib/components/characters/characterUtils.js +0 -378
- package/lib/components/characters/characterUtils.js.map +0 -1
- package/lib/components/characters/custom-popper.js +0 -44
- package/lib/components/characters/custom-popper.js.map +0 -1
- package/lib/components/common/done-button.js +0 -34
- package/lib/components/common/done-button.js.map +0 -1
- package/lib/components/common/toolbar-buttons.js +0 -144
- package/lib/components/common/toolbar-buttons.js.map +0 -1
- package/lib/components/icons/CssIcon.js +0 -25
- package/lib/components/icons/CssIcon.js.map +0 -1
- package/lib/components/icons/RespArea.js +0 -72
- package/lib/components/icons/RespArea.js.map +0 -1
- package/lib/components/icons/TableIcons.js +0 -53
- package/lib/components/icons/TableIcons.js.map +0 -1
- package/lib/components/icons/TextAlign.js +0 -157
- package/lib/components/icons/TextAlign.js.map +0 -1
- package/lib/components/image/AltDialog.js +0 -98
- package/lib/components/image/AltDialog.js.map +0 -1
- package/lib/components/image/ImageToolbar.js +0 -137
- package/lib/components/image/ImageToolbar.js.map +0 -1
- package/lib/components/image/InsertImageHandler.js +0 -135
- package/lib/components/image/InsertImageHandler.js.map +0 -1
- package/lib/components/media/MediaDialog.js +0 -594
- package/lib/components/media/MediaDialog.js.map +0 -1
- package/lib/components/media/MediaToolbar.js +0 -74
- package/lib/components/media/MediaToolbar.js.map +0 -1
- package/lib/components/media/MediaWrapper.js +0 -67
- package/lib/components/media/MediaWrapper.js.map +0 -1
- package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js +0 -84
- package/lib/components/respArea/DragInTheBlank/DragInTheBlank.js.map +0 -1
- package/lib/components/respArea/DragInTheBlank/choice.js +0 -250
- package/lib/components/respArea/DragInTheBlank/choice.js.map +0 -1
- package/lib/components/respArea/ExplicitConstructedResponse.js +0 -136
- package/lib/components/respArea/ExplicitConstructedResponse.js.map +0 -1
- package/lib/components/respArea/InlineDropdown.js +0 -165
- package/lib/components/respArea/InlineDropdown.js.map +0 -1
- package/lib/components/respArea/MathTemplated.js +0 -130
- package/lib/components/respArea/MathTemplated.js.map +0 -1
- package/lib/components/respArea/ToolbarIcon.js +0 -81
- package/lib/components/respArea/ToolbarIcon.js.map +0 -1
- package/lib/constants.js +0 -11
- package/lib/constants.js.map +0 -1
- package/lib/extensions/css.js +0 -217
- package/lib/extensions/css.js.map +0 -1
- package/lib/extensions/custom-toolbar-wrapper.js +0 -92
- package/lib/extensions/custom-toolbar-wrapper.js.map +0 -1
- package/lib/extensions/div-node.js +0 -83
- package/lib/extensions/div-node.js.map +0 -1
- package/lib/extensions/ensure-empty-root-div.js +0 -48
- package/lib/extensions/ensure-empty-root-div.js.map +0 -1
- package/lib/extensions/ensure-list-item-content-is-div.js +0 -64
- package/lib/extensions/ensure-list-item-content-is-div.js.map +0 -1
- package/lib/extensions/extended-list-item.js +0 -15
- package/lib/extensions/extended-list-item.js.map +0 -1
- package/lib/extensions/extended-table-cell.js +0 -22
- package/lib/extensions/extended-table-cell.js.map +0 -1
- package/lib/extensions/extended-table.js +0 -75
- package/lib/extensions/extended-table.js.map +0 -1
- package/lib/extensions/heading-paragraph.js +0 -61
- package/lib/extensions/heading-paragraph.js.map +0 -1
- package/lib/extensions/image-component.js +0 -348
- package/lib/extensions/image-component.js.map +0 -1
- package/lib/extensions/image.js +0 -134
- package/lib/extensions/image.js.map +0 -1
- package/lib/extensions/index.js +0 -46
- package/lib/extensions/index.js.map +0 -1
- package/lib/extensions/math.js +0 -343
- package/lib/extensions/math.js.map +0 -1
- package/lib/extensions/media.js +0 -243
- package/lib/extensions/media.js.map +0 -1
- package/lib/extensions/responseArea.js +0 -446
- package/lib/extensions/responseArea.js.map +0 -1
- package/lib/index.js +0 -30
- package/lib/index.js.map +0 -1
- package/lib/styles/editorContainerStyles.js +0 -137
- package/lib/styles/editorContainerStyles.js.map +0 -1
- package/lib/theme.js +0 -8
- package/lib/theme.js.map +0 -1
- package/lib/utils/helper.js +0 -73
- package/lib/utils/helper.js.map +0 -1
- package/lib/utils/size.js +0 -26
- package/lib/utils/size.js.map +0 -1
- package/src/__tests__/EditableHtml.test.jsx +0 -474
- package/src/__tests__/constants.test.js +0 -19
- package/src/__tests__/div-to-paragraph-conversion.test.jsx +0 -125
- package/src/__tests__/extensions.test.js +0 -208
- package/src/__tests__/index.test.jsx +0 -154
- package/src/__tests__/size-utils.test.js +0 -64
- package/src/__tests__/theme.test.js +0 -17
- package/src/components/CharacterPicker.jsx +0 -200
- package/src/components/EditableHtml.jsx +0 -438
- package/src/components/MenuBar.jsx +0 -549
- package/src/components/TiptapContainer.jsx +0 -219
- package/src/components/__tests__/AltDialog.test.jsx +0 -147
- package/src/components/__tests__/CharacterPicker.test.jsx +0 -219
- package/src/components/__tests__/CssIcon.test.jsx +0 -46
- package/src/components/__tests__/DragInTheBlank.test.jsx +0 -255
- package/src/components/__tests__/ExplicitConstructedResponse.test.jsx +0 -204
- package/src/components/__tests__/ImageToolbar.test.jsx +0 -128
- package/src/components/__tests__/InlineDropdown.test.jsx +0 -380
- package/src/components/__tests__/InsertImageHandler.test.js +0 -161
- package/src/components/__tests__/MediaDialog.test.jsx +0 -293
- package/src/components/__tests__/MediaToolbar.test.jsx +0 -74
- package/src/components/__tests__/MediaWrapper.test.jsx +0 -81
- package/src/components/__tests__/MenuBar.test.jsx +0 -249
- package/src/components/__tests__/RespArea.test.jsx +0 -122
- package/src/components/__tests__/TableIcons.test.jsx +0 -149
- package/src/components/__tests__/TextAlign.test.jsx +0 -167
- package/src/components/__tests__/TiptapContainer.test.jsx +0 -138
- package/src/components/__tests__/characterUtils.test.js +0 -166
- package/src/components/__tests__/choice.test.jsx +0 -171
- package/src/components/__tests__/custom-popper.test.jsx +0 -82
- package/src/components/__tests__/done-button.test.jsx +0 -54
- package/src/components/__tests__/toolbar-buttons.test.jsx +0 -234
- package/src/components/characters/characterUtils.js +0 -447
- package/src/components/characters/custom-popper.js +0 -38
- package/src/components/common/done-button.jsx +0 -27
- package/src/components/common/toolbar-buttons.jsx +0 -122
- package/src/components/icons/CssIcon.jsx +0 -15
- package/src/components/icons/RespArea.jsx +0 -71
- package/src/components/icons/TableIcons.jsx +0 -52
- package/src/components/icons/TextAlign.jsx +0 -114
- package/src/components/image/AltDialog.jsx +0 -82
- package/src/components/image/ImageToolbar.jsx +0 -99
- package/src/components/image/InsertImageHandler.js +0 -107
- package/src/components/media/MediaDialog.jsx +0 -596
- package/src/components/media/MediaToolbar.jsx +0 -49
- package/src/components/media/MediaWrapper.jsx +0 -39
- package/src/components/respArea/DragInTheBlank/DragInTheBlank.jsx +0 -76
- package/src/components/respArea/DragInTheBlank/choice.jsx +0 -256
- package/src/components/respArea/ExplicitConstructedResponse.jsx +0 -135
- package/src/components/respArea/InlineDropdown.jsx +0 -167
- package/src/components/respArea/MathTemplated.jsx +0 -124
- package/src/components/respArea/ToolbarIcon.jsx +0 -66
- package/src/components/respArea/__tests__/MathTemplated.test.jsx +0 -210
- package/src/constants.js +0 -5
- package/src/extensions/__tests__/css.test.js +0 -196
- package/src/extensions/__tests__/custom-toolbar-wrapper.test.jsx +0 -180
- package/src/extensions/__tests__/divNode.test.js +0 -87
- package/src/extensions/__tests__/ensure-empty-root-div.test.js +0 -57
- package/src/extensions/__tests__/ensure-list-item-content-is-div.test.js +0 -44
- package/src/extensions/__tests__/extended-list-item.test.js +0 -13
- package/src/extensions/__tests__/extended-table-cell.test.js +0 -22
- package/src/extensions/__tests__/extended-table.test.js +0 -183
- package/src/extensions/__tests__/image-component.test.jsx +0 -345
- package/src/extensions/__tests__/image.test.js +0 -237
- package/src/extensions/__tests__/math.test.js +0 -459
- package/src/extensions/__tests__/media-node-view.test.jsx +0 -298
- package/src/extensions/__tests__/media.test.js +0 -271
- package/src/extensions/__tests__/responseArea.test.js +0 -601
- package/src/extensions/css.js +0 -220
- package/src/extensions/custom-toolbar-wrapper.jsx +0 -78
- package/src/extensions/div-node.js +0 -86
- package/src/extensions/ensure-empty-root-div.js +0 -47
- package/src/extensions/ensure-list-item-content-is-div.js +0 -62
- package/src/extensions/extended-list-item.js +0 -10
- package/src/extensions/extended-table-cell.js +0 -19
- package/src/extensions/extended-table.js +0 -60
- package/src/extensions/heading-paragraph.js +0 -53
- package/src/extensions/image-component.jsx +0 -338
- package/src/extensions/image.js +0 -109
- package/src/extensions/index.js +0 -81
- package/src/extensions/math.js +0 -327
- package/src/extensions/media.js +0 -188
- package/src/extensions/responseArea.js +0 -401
- package/src/index.jsx +0 -5
- package/src/styles/editorContainerStyles.js +0 -145
- package/src/theme.js +0 -1
- package/src/utils/__tests__/helper.test.js +0 -126
- package/src/utils/helper.js +0 -69
- package/src/utils/size.js +0 -32
package/lib/extensions/media.js
DELETED
|
@@ -1,243 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.Media = void 0;
|
|
9
|
-
exports["default"] = MediaNodeView;
|
|
10
|
-
exports.insertDialog = void 0;
|
|
11
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
12
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
13
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
14
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
15
|
-
var _reactDom = _interopRequireDefault(require("react-dom"));
|
|
16
|
-
var _core = require("@tiptap/core");
|
|
17
|
-
var _react2 = require("@tiptap/react");
|
|
18
|
-
var _MediaDialog = _interopRequireDefault(require("../components/media/MediaDialog"));
|
|
19
|
-
var _MediaToolbar = _interopRequireDefault(require("../components/media/MediaToolbar"));
|
|
20
|
-
var _excluded = ["type", "callback", "options"];
|
|
21
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
|
|
22
|
-
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; }
|
|
23
|
-
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; }
|
|
24
|
-
var Media = exports.Media = _core.Node.create({
|
|
25
|
-
name: 'media',
|
|
26
|
-
group: 'inline',
|
|
27
|
-
inline: true,
|
|
28
|
-
atom: true,
|
|
29
|
-
addAttributes: function addAttributes() {
|
|
30
|
-
return {
|
|
31
|
-
type: {
|
|
32
|
-
"default": 'video'
|
|
33
|
-
},
|
|
34
|
-
src: {
|
|
35
|
-
"default": null
|
|
36
|
-
},
|
|
37
|
-
width: {
|
|
38
|
-
"default": null
|
|
39
|
-
},
|
|
40
|
-
height: {
|
|
41
|
-
"default": null
|
|
42
|
-
},
|
|
43
|
-
title: {
|
|
44
|
-
"default": null
|
|
45
|
-
},
|
|
46
|
-
starts: {
|
|
47
|
-
"default": null
|
|
48
|
-
},
|
|
49
|
-
ends: {
|
|
50
|
-
"default": null
|
|
51
|
-
},
|
|
52
|
-
editing: {
|
|
53
|
-
"default": false
|
|
54
|
-
},
|
|
55
|
-
tag: {
|
|
56
|
-
"default": 'iframe'
|
|
57
|
-
},
|
|
58
|
-
// 'iframe' or 'audio'
|
|
59
|
-
url: {
|
|
60
|
-
"default": null
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
},
|
|
64
|
-
parseHTML: function parseHTML() {
|
|
65
|
-
return [{
|
|
66
|
-
tag: 'iframe[data-type="video"]',
|
|
67
|
-
getAttrs: function getAttrs(el) {
|
|
68
|
-
return {
|
|
69
|
-
type: 'video',
|
|
70
|
-
tag: 'iframe',
|
|
71
|
-
src: el.getAttribute('src'),
|
|
72
|
-
width: el.getAttribute('width'),
|
|
73
|
-
height: el.getAttribute('height'),
|
|
74
|
-
title: el.dataset.title,
|
|
75
|
-
starts: el.dataset.starts,
|
|
76
|
-
ends: el.dataset.ends,
|
|
77
|
-
url: el.dataset.url
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
}, {
|
|
81
|
-
tag: 'audio',
|
|
82
|
-
getAttrs: function getAttrs(el) {
|
|
83
|
-
var _el$querySelector;
|
|
84
|
-
return {
|
|
85
|
-
type: 'audio',
|
|
86
|
-
tag: 'audio',
|
|
87
|
-
src: (_el$querySelector = el.querySelector('source')) === null || _el$querySelector === void 0 ? void 0 : _el$querySelector.getAttribute('src')
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
}];
|
|
91
|
-
},
|
|
92
|
-
renderHTML: function renderHTML(_ref) {
|
|
93
|
-
var HTMLAttributes = _ref.HTMLAttributes;
|
|
94
|
-
var tag = HTMLAttributes.tag,
|
|
95
|
-
src = HTMLAttributes.src,
|
|
96
|
-
width = HTMLAttributes.width,
|
|
97
|
-
height = HTMLAttributes.height;
|
|
98
|
-
if (tag === 'audio') {
|
|
99
|
-
return ['audio', {
|
|
100
|
-
controls: 'controls',
|
|
101
|
-
controlsList: 'nodownload'
|
|
102
|
-
}, ['source', {
|
|
103
|
-
src: src,
|
|
104
|
-
type: 'audio/mp3'
|
|
105
|
-
}]];
|
|
106
|
-
}
|
|
107
|
-
return ['iframe', (0, _core.mergeAttributes)({
|
|
108
|
-
'data-type': 'video',
|
|
109
|
-
frameborder: '0',
|
|
110
|
-
allow: 'accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture',
|
|
111
|
-
allowfullscreen: '',
|
|
112
|
-
src: src
|
|
113
|
-
}, width ? {
|
|
114
|
-
width: width
|
|
115
|
-
} : {}, height ? {
|
|
116
|
-
height: height
|
|
117
|
-
} : {})];
|
|
118
|
-
},
|
|
119
|
-
addCommands: function addCommands() {
|
|
120
|
-
var _this = this;
|
|
121
|
-
return {
|
|
122
|
-
insertMedia: function insertMedia(attrs) {
|
|
123
|
-
return function (_ref2) {
|
|
124
|
-
var commands = _ref2.commands;
|
|
125
|
-
return commands.insertContent({
|
|
126
|
-
type: _this.name,
|
|
127
|
-
attrs: attrs
|
|
128
|
-
});
|
|
129
|
-
};
|
|
130
|
-
},
|
|
131
|
-
updateMedia: function updateMedia(attrs) {
|
|
132
|
-
return function (_ref3) {
|
|
133
|
-
var commands = _ref3.commands;
|
|
134
|
-
return commands.updateAttributes(_this.name, attrs);
|
|
135
|
-
};
|
|
136
|
-
}
|
|
137
|
-
};
|
|
138
|
-
},
|
|
139
|
-
addNodeView: function addNodeView() {
|
|
140
|
-
var _this2 = this;
|
|
141
|
-
return (0, _react2.ReactNodeViewRenderer)(function (props) {
|
|
142
|
-
return /*#__PURE__*/_react["default"].createElement(MediaNodeView, _objectSpread(_objectSpread({}, props), {}, {
|
|
143
|
-
options: _this2.options
|
|
144
|
-
}));
|
|
145
|
-
});
|
|
146
|
-
}
|
|
147
|
-
});
|
|
148
|
-
var removeDialogs = function removeDialogs() {
|
|
149
|
-
var prevDialogs = document.querySelectorAll('.insert-media-dialog');
|
|
150
|
-
prevDialogs.forEach(function (s) {
|
|
151
|
-
return s.remove();
|
|
152
|
-
});
|
|
153
|
-
};
|
|
154
|
-
var insertDialog = exports.insertDialog = function insertDialog(props) {
|
|
155
|
-
var newEl = document.createElement('div');
|
|
156
|
-
var type = props.type,
|
|
157
|
-
callback = props.callback,
|
|
158
|
-
options = props.options,
|
|
159
|
-
rest = (0, _objectWithoutProperties2["default"])(props, _excluded);
|
|
160
|
-
var initialBodyOverflow = document.body.style.overflow;
|
|
161
|
-
removeDialogs();
|
|
162
|
-
newEl.className = 'insert-media-dialog';
|
|
163
|
-
document.body.style.overflow = 'hidden';
|
|
164
|
-
var handleClose = function handleClose(val, data) {
|
|
165
|
-
callback(val, data);
|
|
166
|
-
newEl.remove();
|
|
167
|
-
document.body.style.overflow = initialBodyOverflow;
|
|
168
|
-
};
|
|
169
|
-
var el = /*#__PURE__*/_react["default"].createElement(_MediaDialog["default"], (0, _extends2["default"])({}, rest, {
|
|
170
|
-
uploadSoundSupport: options.uploadSoundSupport,
|
|
171
|
-
type: type,
|
|
172
|
-
disablePortal: true,
|
|
173
|
-
open: true,
|
|
174
|
-
handleClose: handleClose
|
|
175
|
-
}));
|
|
176
|
-
_reactDom["default"].render(el, newEl);
|
|
177
|
-
document.body.appendChild(newEl);
|
|
178
|
-
};
|
|
179
|
-
function MediaNodeView(_ref4) {
|
|
180
|
-
var editor = _ref4.editor,
|
|
181
|
-
node = _ref4.node,
|
|
182
|
-
updateAttributes = _ref4.updateAttributes,
|
|
183
|
-
deleteNode = _ref4.deleteNode,
|
|
184
|
-
options = _ref4.options;
|
|
185
|
-
var _node$attrs = node.attrs,
|
|
186
|
-
type = _node$attrs.type,
|
|
187
|
-
src = _node$attrs.src,
|
|
188
|
-
width = _node$attrs.width,
|
|
189
|
-
height = _node$attrs.height,
|
|
190
|
-
tag = _node$attrs.tag;
|
|
191
|
-
var handleEdit = function handleEdit() {
|
|
192
|
-
insertDialog(_objectSpread(_objectSpread({}, node.attrs), {}, {
|
|
193
|
-
options: options,
|
|
194
|
-
edit: true,
|
|
195
|
-
callback: function callback(val, data) {
|
|
196
|
-
if (val) {
|
|
197
|
-
updateAttributes(data);
|
|
198
|
-
}
|
|
199
|
-
editor.chain().focus().run();
|
|
200
|
-
}
|
|
201
|
-
}));
|
|
202
|
-
};
|
|
203
|
-
(0, _react.useEffect)(function () {
|
|
204
|
-
// Only open dialog for newly inserted media without a src
|
|
205
|
-
if (!src) {
|
|
206
|
-
insertDialog(_objectSpread(_objectSpread({}, node.attrs), {}, {
|
|
207
|
-
options: options,
|
|
208
|
-
edit: true,
|
|
209
|
-
callback: function callback(val, data) {
|
|
210
|
-
if (val) {
|
|
211
|
-
updateAttributes(data);
|
|
212
|
-
} else {
|
|
213
|
-
deleteNode();
|
|
214
|
-
}
|
|
215
|
-
editor.chain().focus().run();
|
|
216
|
-
}
|
|
217
|
-
}));
|
|
218
|
-
}
|
|
219
|
-
}, []);
|
|
220
|
-
return /*#__PURE__*/_react["default"].createElement(_react2.NodeViewWrapper, {
|
|
221
|
-
"data-type": type,
|
|
222
|
-
style: {
|
|
223
|
-
width: width,
|
|
224
|
-
height: height
|
|
225
|
-
}
|
|
226
|
-
}, tag === 'audio' ? /*#__PURE__*/_react["default"].createElement("audio", {
|
|
227
|
-
controls: true,
|
|
228
|
-
controlsList: "nodownload"
|
|
229
|
-
}, /*#__PURE__*/_react["default"].createElement("source", {
|
|
230
|
-
type: "audio/mp3",
|
|
231
|
-
src: src
|
|
232
|
-
})) : /*#__PURE__*/_react["default"].createElement("iframe", {
|
|
233
|
-
src: src,
|
|
234
|
-
allowFullScreen: true,
|
|
235
|
-
frameBorder: "0",
|
|
236
|
-
width: width,
|
|
237
|
-
height: height
|
|
238
|
-
}), /*#__PURE__*/_react["default"].createElement(_MediaToolbar["default"], {
|
|
239
|
-
onEdit: handleEdit,
|
|
240
|
-
onRemove: deleteNode
|
|
241
|
-
}));
|
|
242
|
-
}
|
|
243
|
-
//# sourceMappingURL=media.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"media.js","names":["_react","_interopRequireWildcard","require","_reactDom","_interopRequireDefault","_core","_react2","_MediaDialog","_MediaToolbar","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","_typeof","has","get","set","_t","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","Media","exports","Node","create","name","group","inline","atom","addAttributes","type","src","width","height","title","starts","ends","editing","tag","url","parseHTML","getAttrs","el","getAttribute","dataset","_el$querySelector","querySelector","renderHTML","_ref","HTMLAttributes","controls","controlsList","mergeAttributes","frameborder","allow","allowfullscreen","addCommands","_this","insertMedia","attrs","_ref2","commands","insertContent","updateMedia","_ref3","updateAttributes","addNodeView","_this2","ReactNodeViewRenderer","props","createElement","MediaNodeView","options","removeDialogs","prevDialogs","document","querySelectorAll","s","remove","insertDialog","newEl","callback","rest","_objectWithoutProperties2","initialBodyOverflow","body","style","overflow","className","handleClose","val","data","_extends2","uploadSoundSupport","disablePortal","open","ReactDOM","render","appendChild","_ref4","editor","node","deleteNode","_node$attrs","handleEdit","edit","chain","focus","run","useEffect","NodeViewWrapper","allowFullScreen","frameBorder","onEdit","onRemove"],"sources":["../../src/extensions/media.js"],"sourcesContent":["import React, { useEffect } from 'react';\nimport ReactDOM from 'react-dom';\nimport { mergeAttributes, Node } from '@tiptap/core';\nimport { NodeViewWrapper, ReactNodeViewRenderer } from '@tiptap/react';\nimport MediaDialog from '../components/media/MediaDialog';\nimport MediaToolbar from '../components/media/MediaToolbar';\n\nexport const Media = Node.create({\n name: 'media',\n group: 'inline',\n inline: true,\n atom: true,\n\n addAttributes() {\n return {\n type: { default: 'video' },\n src: { default: null },\n width: { default: null },\n height: { default: null },\n title: { default: null },\n starts: { default: null },\n ends: { default: null },\n editing: { default: false },\n tag: { default: 'iframe' }, // 'iframe' or 'audio'\n url: { default: null },\n };\n },\n\n parseHTML() {\n return [\n {\n tag: 'iframe[data-type=\"video\"]',\n getAttrs: (el) => ({\n type: 'video',\n tag: 'iframe',\n src: el.getAttribute('src'),\n width: el.getAttribute('width'),\n height: el.getAttribute('height'),\n title: el.dataset.title,\n starts: el.dataset.starts,\n ends: el.dataset.ends,\n url: el.dataset.url,\n }),\n },\n {\n tag: 'audio',\n getAttrs: (el) => ({\n type: 'audio',\n tag: 'audio',\n src: el.querySelector('source')?.getAttribute('src'),\n }),\n },\n ];\n },\n\n renderHTML({ HTMLAttributes }) {\n const { tag, src, width, height } = HTMLAttributes;\n\n if (tag === 'audio') {\n return ['audio', { controls: 'controls', controlsList: 'nodownload' }, ['source', { src, type: 'audio/mp3' }]];\n }\n\n return [\n 'iframe',\n mergeAttributes(\n {\n 'data-type': 'video',\n frameborder: '0',\n allow: 'accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture',\n allowfullscreen: '',\n src,\n },\n width ? { width } : {},\n height ? { height } : {},\n ),\n ];\n },\n\n addCommands() {\n return {\n insertMedia:\n (attrs) =>\n ({ commands }) => {\n return commands.insertContent({ type: this.name, attrs });\n },\n updateMedia:\n (attrs) =>\n ({ commands }) => {\n return commands.updateAttributes(this.name, attrs);\n },\n };\n },\n\n addNodeView() {\n return ReactNodeViewRenderer((props) => <MediaNodeView {...{ ...props, options: this.options }} />);\n },\n});\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, options, ...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={options.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\nexport default function MediaNodeView({ editor, node, updateAttributes, deleteNode, options }) {\n const { type, src, width, height, tag } = node.attrs;\n\n const handleEdit = () => {\n insertDialog({\n ...node.attrs,\n options: options,\n edit: true,\n callback: (val, data) => {\n if (val) {\n updateAttributes(data);\n }\n\n editor.chain().focus().run();\n },\n });\n };\n\n useEffect(() => {\n // Only open dialog for newly inserted media without a src\n if (!src) {\n insertDialog({\n ...node.attrs,\n options: options,\n edit: true,\n callback: (val, data) => {\n if (val) {\n updateAttributes(data);\n } else {\n deleteNode();\n }\n\n editor.chain().focus().run();\n },\n });\n }\n }, []);\n\n return (\n <NodeViewWrapper data-type={type} style={{ width, height }}>\n {tag === 'audio' ? (\n <audio controls controlsList=\"nodownload\">\n <source type=\"audio/mp3\" src={src} />\n </audio>\n ) : (\n <iframe src={src} allowFullScreen frameBorder=\"0\" width={width} height={height} />\n )}\n\n <MediaToolbar onEdit={handleEdit} onRemove={deleteNode} />\n </NodeViewWrapper>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|