@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,21 +1,16 @@
|
|
|
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 _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
11
|
-
|
|
12
9
|
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
13
|
-
|
|
14
10
|
var _slate = require("slate");
|
|
15
|
-
|
|
16
11
|
var _debug = _interopRequireDefault(require("debug"));
|
|
17
|
-
|
|
18
12
|
var log = (0, _debug["default"])('@pie-lib:editable-html:image:insert-image-handler');
|
|
13
|
+
|
|
19
14
|
/**
|
|
20
15
|
* Handles user selection, insertion (or cancellation) of an image into the editor.
|
|
21
16
|
* @param {Block} placeholderBlock - a block that has been added to the editor as a place holder for the image
|
|
@@ -24,7 +19,6 @@ var log = (0, _debug["default"])('@pie-lib:editable-html:image:insert-image-hand
|
|
|
24
19
|
* @param {Function} onChange - callback to notify changes applied by the handler
|
|
25
20
|
* @param {Boolean} isPasted - a boolean that keeps track if the file is pasted
|
|
26
21
|
*/
|
|
27
|
-
|
|
28
22
|
var InsertImageHandler = /*#__PURE__*/function () {
|
|
29
23
|
function InsertImageHandler(placeholderBlock, onFinish, getValue, onChange) {
|
|
30
24
|
var isPasted = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
|
|
@@ -36,19 +30,15 @@ var InsertImageHandler = /*#__PURE__*/function () {
|
|
|
36
30
|
this.isPasted = isPasted;
|
|
37
31
|
this.chosenFile = null;
|
|
38
32
|
}
|
|
39
|
-
|
|
40
|
-
(0, _createClass2["default"])(InsertImageHandler, [{
|
|
33
|
+
return (0, _createClass2["default"])(InsertImageHandler, [{
|
|
41
34
|
key: "getPlaceholderInDocument",
|
|
42
35
|
value: function getPlaceholderInDocument(value) {
|
|
43
36
|
var document = value.document;
|
|
44
37
|
var directChild = document.getChild(this.placeholderBlock.key);
|
|
45
|
-
|
|
46
38
|
if (directChild) {
|
|
47
39
|
return directChild;
|
|
48
40
|
}
|
|
49
|
-
|
|
50
41
|
var child = document.getDescendant(this.placeholderBlock.key);
|
|
51
|
-
|
|
52
42
|
if (child) {
|
|
53
43
|
return child;
|
|
54
44
|
} else {
|
|
@@ -60,24 +50,22 @@ var InsertImageHandler = /*#__PURE__*/function () {
|
|
|
60
50
|
key: "cancel",
|
|
61
51
|
value: function cancel() {
|
|
62
52
|
log('insert cancelled');
|
|
63
|
-
|
|
64
53
|
try {
|
|
65
54
|
var value = this.getValue();
|
|
66
55
|
var child = this.getPlaceholderInDocument(value);
|
|
67
|
-
|
|
68
56
|
if (child) {
|
|
69
57
|
var c = value.change().removeNodeByKey(child.key);
|
|
70
58
|
this.onChange(c);
|
|
71
59
|
this.onFinish(false);
|
|
72
60
|
}
|
|
73
|
-
} catch (err) {
|
|
61
|
+
} catch (err) {
|
|
62
|
+
//
|
|
74
63
|
}
|
|
75
64
|
}
|
|
76
65
|
}, {
|
|
77
66
|
key: "done",
|
|
78
67
|
value: function done(err, src) {
|
|
79
68
|
log('done: err:', err);
|
|
80
|
-
|
|
81
69
|
if (err) {
|
|
82
70
|
//eslint-disable-next-line
|
|
83
71
|
console.log(err);
|
|
@@ -97,41 +85,34 @@ var InsertImageHandler = /*#__PURE__*/function () {
|
|
|
97
85
|
this.onFinish(true);
|
|
98
86
|
}
|
|
99
87
|
}
|
|
88
|
+
|
|
100
89
|
/**
|
|
101
90
|
* Notify handler that the user chose a file - will create a change with a preview in the editor.
|
|
102
91
|
*
|
|
103
92
|
* @param {File} file - the file that the user chose using a file input.
|
|
104
93
|
*/
|
|
105
|
-
|
|
106
94
|
}, {
|
|
107
95
|
key: "fileChosen",
|
|
108
96
|
value: function fileChosen(file) {
|
|
109
97
|
var _this = this;
|
|
110
|
-
|
|
111
98
|
if (!file) {
|
|
112
99
|
return;
|
|
113
|
-
}
|
|
114
|
-
|
|
100
|
+
}
|
|
115
101
|
|
|
102
|
+
// Save the chosen file to this.chosenFile
|
|
116
103
|
this.chosenFile = file;
|
|
117
104
|
log('[fileChosen] file: ', file);
|
|
118
105
|
var reader = new FileReader();
|
|
119
|
-
|
|
120
106
|
reader.onload = function () {
|
|
121
107
|
var value = _this.getValue();
|
|
122
|
-
|
|
123
108
|
var dataURL = reader.result;
|
|
124
|
-
|
|
125
109
|
var child = _this.getPlaceholderInDocument(value);
|
|
126
|
-
|
|
127
110
|
var data = child.data.set('src', dataURL);
|
|
128
111
|
var change = value.change().setNodeByKey(_this.placeholderBlock.key, {
|
|
129
112
|
data: data
|
|
130
113
|
});
|
|
131
|
-
|
|
132
114
|
_this.onChange(change);
|
|
133
115
|
};
|
|
134
|
-
|
|
135
116
|
reader.readAsDataURL(file);
|
|
136
117
|
}
|
|
137
118
|
}, {
|
|
@@ -145,17 +126,15 @@ var InsertImageHandler = /*#__PURE__*/function () {
|
|
|
145
126
|
data: data
|
|
146
127
|
});
|
|
147
128
|
this.onChange(change);
|
|
148
|
-
}
|
|
129
|
+
}
|
|
149
130
|
|
|
131
|
+
// Add a getter method to retrieve the chosen file
|
|
150
132
|
}, {
|
|
151
133
|
key: "getChosenFile",
|
|
152
134
|
value: function getChosenFile() {
|
|
153
135
|
return this.chosenFile;
|
|
154
136
|
}
|
|
155
137
|
}]);
|
|
156
|
-
return InsertImageHandler;
|
|
157
138
|
}();
|
|
158
|
-
|
|
159
|
-
var _default = InsertImageHandler;
|
|
160
|
-
exports["default"] = _default;
|
|
139
|
+
var _default = exports["default"] = InsertImageHandler;
|
|
161
140
|
//# sourceMappingURL=insert-image-handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"insert-image-handler.js","names":["_slate","require","_debug","_interopRequireDefault","log","debug","InsertImageHandler","placeholderBlock","onFinish","getValue","onChange","isPasted","arguments","length","undefined","_classCallCheck2","chosenFile","_createClass2","key","value","getPlaceholderInDocument","document","directChild","getChild","child","getDescendant","Error","cancel","c","change","removeNodeByKey","err","done","src","console","data","merge","Data","create","loaded","percent","setNodeByKey","fileChosen","file","_this","reader","FileReader","onload","dataURL","result","set","readAsDataURL","progress","bytes","total","getChosenFile","_default","exports"],"sources":["../../../src/plugins/image/insert-image-handler.js"],"sourcesContent":["import { Data } from 'slate';\nimport 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(placeholderBlock, onFinish, getValue, onChange, isPasted = false) {\n this.placeholderBlock = placeholderBlock;\n this.getValue = getValue;\n this.onFinish = onFinish;\n this.onChange = onChange;\n this.isPasted = isPasted;\n this.chosenFile = null;\n }\n\n getPlaceholderInDocument(value) {\n const { document } = value;\n const directChild = document.getChild(this.placeholderBlock.key);\n\n if (directChild) {\n return directChild;\n }\n\n const child = document.getDescendant(this.placeholderBlock.key);\n\n if (child) {\n return child;\n } else {\n // eslint-disable-next-line\n throw new Error(\"insert-image: Can't find placeholder!\");\n }\n }\n\n cancel() {\n log('insert cancelled');\n\n try {\n const value = this.getValue();\n const child = this.getPlaceholderInDocument(value);\n\n if (child) {\n const c = value.change().removeNodeByKey(child.key);\n this.onChange(c);\n this.onFinish(false);\n }\n } catch (err) {\n //\n }\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 const value = this.getValue();\n const child = this.getPlaceholderInDocument(value);\n const data = child.data.merge(Data.create({ loaded: true, src, percent: 100 }));\n\n const change = value.change().setNodeByKey(this.placeholderBlock.key, { data });\n this.onChange(change);\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 value = this.getValue();\n const dataURL = reader.result;\n const child = this.getPlaceholderInDocument(value);\n const data = child.data.set('src', dataURL);\n const change = value.change().setNodeByKey(this.placeholderBlock.key, { data });\n this.onChange(change);\n };\n reader.readAsDataURL(file);\n }\n\n progress(percent, bytes, total) {\n log('progress: ', percent, bytes, total);\n const value = this.getValue();\n const child = this.getPlaceholderInDocument(value);\n const data = child.data.set('percent', percent);\n const change = value.change().setNodeByKey(this.placeholderBlock.key, { data });\n this.onChange(change);\n }\n\n // Add a getter method to retrieve the chosen file\n getChosenFile() {\n return this.chosenFile;\n }\n}\n\nexport default InsertImageHandler;\n"],"mappings":"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","ignoreList":[]}
|
package/lib/plugins/index.js
CHANGED
|
@@ -1,82 +1,45 @@
|
|
|
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.buildPlugins = exports.DEFAULT_PLUGINS = exports.ALL_PLUGINS = void 0;
|
|
9
|
-
|
|
10
8
|
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
11
|
-
|
|
12
9
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
-
|
|
14
10
|
var _slateHotkeys = _interopRequireDefault(require("slate-hotkeys"));
|
|
15
|
-
|
|
16
11
|
var _slateDevEnvironment = require("slate-dev-environment");
|
|
17
|
-
|
|
18
12
|
var _slate = require("slate");
|
|
19
|
-
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
var
|
|
23
|
-
|
|
24
|
-
var
|
|
25
|
-
|
|
26
|
-
var _FormatListNumbered = _interopRequireDefault(require("@material-ui/icons/FormatListNumbered"));
|
|
27
|
-
|
|
28
|
-
var _Redo = _interopRequireDefault(require("@material-ui/icons/Redo"));
|
|
29
|
-
|
|
30
|
-
var _Undo = _interopRequireDefault(require("@material-ui/icons/Undo"));
|
|
31
|
-
|
|
13
|
+
var _FormatBold = _interopRequireDefault(require("@mui/icons-material/FormatBold"));
|
|
14
|
+
var _FormatQuote = _interopRequireDefault(require("@mui/icons-material/FormatQuote"));
|
|
15
|
+
var _FormatListBulleted = _interopRequireDefault(require("@mui/icons-material/FormatListBulleted"));
|
|
16
|
+
var _FormatListNumbered = _interopRequireDefault(require("@mui/icons-material/FormatListNumbered"));
|
|
17
|
+
var _Redo = _interopRequireDefault(require("@mui/icons-material/Redo"));
|
|
18
|
+
var _Undo = _interopRequireDefault(require("@mui/icons-material/Undo"));
|
|
32
19
|
var _image = _interopRequireDefault(require("./image"));
|
|
33
|
-
|
|
34
20
|
var _media = _interopRequireDefault(require("./media"));
|
|
35
|
-
|
|
36
21
|
var _characters = _interopRequireDefault(require("./characters"));
|
|
37
|
-
|
|
38
|
-
var _FormatItalic = _interopRequireDefault(require("@material-ui/icons/FormatItalic"));
|
|
39
|
-
|
|
22
|
+
var _FormatItalic = _interopRequireDefault(require("@mui/icons-material/FormatItalic"));
|
|
40
23
|
var _math = _interopRequireDefault(require("./math"));
|
|
41
|
-
|
|
42
24
|
var _react = _interopRequireDefault(require("react"));
|
|
43
|
-
|
|
44
|
-
var _FormatStrikethrough = _interopRequireDefault(require("@material-ui/icons/FormatStrikethrough"));
|
|
45
|
-
|
|
25
|
+
var _FormatStrikethrough = _interopRequireDefault(require("@mui/icons-material/FormatStrikethrough"));
|
|
46
26
|
var _toolbar = _interopRequireDefault(require("./toolbar"));
|
|
47
|
-
|
|
48
|
-
var _FormatUnderlined = _interopRequireDefault(require("@material-ui/icons/FormatUnderlined"));
|
|
49
|
-
|
|
27
|
+
var _FormatUnderlined = _interopRequireDefault(require("@mui/icons-material/FormatUnderlined"));
|
|
50
28
|
var _compact = _interopRequireDefault(require("lodash/compact"));
|
|
51
|
-
|
|
52
29
|
var _isEmpty = _interopRequireDefault(require("lodash/isEmpty"));
|
|
53
|
-
|
|
54
30
|
var _slateSoftBreak = _interopRequireDefault(require("slate-soft-break"));
|
|
55
|
-
|
|
56
31
|
var _debug = _interopRequireDefault(require("debug"));
|
|
57
|
-
|
|
58
32
|
var _list = _interopRequireDefault(require("./list"));
|
|
59
|
-
|
|
60
33
|
var _table = _interopRequireDefault(require("./table"));
|
|
61
|
-
|
|
62
34
|
var _respArea = _interopRequireDefault(require("./respArea"));
|
|
63
|
-
|
|
64
35
|
var _html = _interopRequireDefault(require("./html"));
|
|
65
|
-
|
|
66
36
|
var _css = _interopRequireDefault(require("./css"));
|
|
67
|
-
|
|
68
37
|
var _customPlugin = _interopRequireDefault(require("./customPlugin"));
|
|
69
|
-
|
|
70
38
|
var _rendering = _interopRequireDefault(require("./rendering"));
|
|
71
|
-
|
|
72
39
|
var _textAlign = _interopRequireDefault(require("./textAlign"));
|
|
73
|
-
|
|
74
|
-
function
|
|
75
|
-
|
|
76
|
-
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; }
|
|
77
|
-
|
|
40
|
+
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; }
|
|
41
|
+
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; } //import Code from '@mui/icons-material/Code';
|
|
78
42
|
var log = (0, _debug["default"])('@pie-lib:editable-html:plugins');
|
|
79
|
-
|
|
80
43
|
var SuperscriptIcon = function SuperscriptIcon() {
|
|
81
44
|
return /*#__PURE__*/_react["default"].createElement("svg", {
|
|
82
45
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -89,7 +52,6 @@ var SuperscriptIcon = function SuperscriptIcon() {
|
|
|
89
52
|
fill: "currentColor"
|
|
90
53
|
}));
|
|
91
54
|
};
|
|
92
|
-
|
|
93
55
|
var SubscriptIcon = function SubscriptIcon() {
|
|
94
56
|
return /*#__PURE__*/_react["default"].createElement("svg", {
|
|
95
57
|
xmlns: "http://www.w3.org/2000/svg",
|
|
@@ -102,7 +64,6 @@ var SubscriptIcon = function SubscriptIcon() {
|
|
|
102
64
|
fill: "currentColor"
|
|
103
65
|
}));
|
|
104
66
|
};
|
|
105
|
-
|
|
106
67
|
var HeadingIcon = function HeadingIcon() {
|
|
107
68
|
return /*#__PURE__*/_react["default"].createElement("svg", {
|
|
108
69
|
width: "30",
|
|
@@ -119,7 +80,6 @@ var HeadingIcon = function HeadingIcon() {
|
|
|
119
80
|
fill: "currentColor"
|
|
120
81
|
}));
|
|
121
82
|
};
|
|
122
|
-
|
|
123
83
|
var STYLES_MAP = {
|
|
124
84
|
h3: {
|
|
125
85
|
fontSize: 'inherit',
|
|
@@ -132,13 +92,13 @@ var STYLES_MAP = {
|
|
|
132
92
|
padding: '.5em 10px'
|
|
133
93
|
}
|
|
134
94
|
};
|
|
135
|
-
|
|
136
95
|
function MarkHotkey(options) {
|
|
137
96
|
var type = options.type,
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
97
|
+
key = options.key,
|
|
98
|
+
icon = options.icon,
|
|
99
|
+
tag = options.tag;
|
|
141
100
|
|
|
101
|
+
// Return our "plugin" object, containing the `onKeyDown` handler.
|
|
142
102
|
return {
|
|
143
103
|
name: type,
|
|
144
104
|
toolbar: {
|
|
@@ -148,7 +108,6 @@ function MarkHotkey(options) {
|
|
|
148
108
|
onToggle: function onToggle(change) {
|
|
149
109
|
log('[onToggleMark] type: ', type);
|
|
150
110
|
var selection = change.value.selection;
|
|
151
|
-
|
|
152
111
|
if (['blockquote', 'h3'].includes(type)) {
|
|
153
112
|
var texts = change.value.document.getTextsAtRangeAsArray(selection);
|
|
154
113
|
var onlyOneText = texts.length === 1;
|
|
@@ -159,7 +118,6 @@ function MarkHotkey(options) {
|
|
|
159
118
|
var markIsThere = marks.find(function (m) {
|
|
160
119
|
return m.type === type;
|
|
161
120
|
});
|
|
162
|
-
|
|
163
121
|
if (!markIsThere) {
|
|
164
122
|
// not all texts have this mark
|
|
165
123
|
sameMark = false;
|
|
@@ -169,80 +127,72 @@ function MarkHotkey(options) {
|
|
|
169
127
|
}
|
|
170
128
|
});
|
|
171
129
|
var shouldContinue = onlyOneText || sameMark || !hasMark;
|
|
172
|
-
|
|
173
130
|
if (!shouldContinue) {
|
|
174
131
|
return change;
|
|
175
132
|
}
|
|
176
|
-
|
|
177
133
|
if (selection.startKey === selection.endKey && selection.anchorOffset === selection.focusOffset) {
|
|
178
|
-
var textNode = change.value.document.getNode(selection.startKey);
|
|
134
|
+
var textNode = change.value.document.getNode(selection.startKey);
|
|
179
135
|
|
|
180
|
-
|
|
136
|
+
// select the whole line if there is no selection
|
|
137
|
+
change.moveFocusTo(textNode.key, 0).moveAnchorTo(textNode.key, textNode.text.length);
|
|
181
138
|
|
|
139
|
+
// remove toggle
|
|
182
140
|
var _hasMark = change.value.activeMarks.find(function (entry) {
|
|
183
141
|
return entry.type === type;
|
|
184
142
|
});
|
|
185
|
-
|
|
186
143
|
if (_hasMark) {
|
|
187
144
|
change.removeMark(_hasMark);
|
|
188
145
|
} else {
|
|
189
146
|
var newMark = _slate.Mark.create(type);
|
|
190
|
-
|
|
191
147
|
change.addMark(newMark);
|
|
192
|
-
}
|
|
193
|
-
|
|
148
|
+
}
|
|
194
149
|
|
|
150
|
+
// move focus to end of text
|
|
195
151
|
return change.moveFocusTo(textNode.key, textNode.text.length).moveAnchorTo(textNode.key, textNode.text.length);
|
|
196
152
|
}
|
|
197
153
|
}
|
|
198
|
-
|
|
199
154
|
return change.toggleMark(type);
|
|
200
155
|
}
|
|
201
156
|
},
|
|
202
157
|
renderMark: function renderMark(props) {
|
|
203
158
|
if (props.mark.type === type) {
|
|
204
159
|
var _ref = props.node || {},
|
|
205
|
-
|
|
206
|
-
|
|
160
|
+
data = _ref.data;
|
|
207
161
|
var jsonData = (data === null || data === void 0 ? void 0 : data.toJSON()) || {};
|
|
208
162
|
var K = tag || type;
|
|
209
163
|
var additionalStyles = STYLES_MAP[K];
|
|
210
|
-
|
|
211
164
|
if (additionalStyles) {
|
|
212
165
|
if (!jsonData.attributes) {
|
|
213
166
|
jsonData.attributes = {};
|
|
214
167
|
}
|
|
215
|
-
|
|
216
168
|
jsonData.attributes.style = _objectSpread(_objectSpread({}, jsonData.attributes.style), additionalStyles);
|
|
217
169
|
}
|
|
218
|
-
|
|
219
170
|
return /*#__PURE__*/_react["default"].createElement(K, jsonData.attributes, props.children);
|
|
220
171
|
}
|
|
221
172
|
},
|
|
222
173
|
onKeyDown: function onKeyDown(event, change) {
|
|
223
174
|
// Check that the key pressed matches our `key` option.
|
|
224
|
-
if (!event.metaKey || event.key != key) return;
|
|
175
|
+
if (!event.metaKey || event.key != key) return;
|
|
225
176
|
|
|
226
|
-
|
|
177
|
+
// Prevent the default characters from being inserted.
|
|
178
|
+
event.preventDefault();
|
|
227
179
|
|
|
180
|
+
// Toggle the mark `type`.
|
|
228
181
|
change.toggleMark(type);
|
|
229
182
|
return true;
|
|
230
183
|
}
|
|
231
184
|
};
|
|
232
185
|
}
|
|
233
|
-
|
|
234
|
-
|
|
186
|
+
var ALL_PLUGINS = exports.ALL_PLUGINS = ['bold',
|
|
187
|
+
// 'code',
|
|
235
188
|
'html', 'extraCSSRules', 'italic', 'underline', 'strikethrough', 'bulleted-list', 'numbered-list', 'image', 'math', 'languageCharacters', 'text-align', 'blockquote', 'h3', 'table', 'video', 'audio', 'responseArea', 'redo', 'undo', 'superscript', 'subscript'];
|
|
236
|
-
exports.
|
|
237
|
-
var DEFAULT_PLUGINS = ALL_PLUGINS.filter(function (plug) {
|
|
189
|
+
var DEFAULT_PLUGINS = exports.DEFAULT_PLUGINS = ALL_PLUGINS.filter(function (plug) {
|
|
238
190
|
return !['responseArea', 'h3', 'blockquote'].includes(plug);
|
|
239
191
|
});
|
|
240
|
-
exports.DEFAULT_PLUGINS = DEFAULT_PLUGINS;
|
|
241
192
|
var ICON_MAP = {
|
|
242
193
|
undo: _Undo["default"],
|
|
243
194
|
redo: _Redo["default"]
|
|
244
195
|
};
|
|
245
|
-
|
|
246
196
|
function UndoRedo(type) {
|
|
247
197
|
var IconToUse = ICON_MAP[type];
|
|
248
198
|
return {
|
|
@@ -258,7 +208,6 @@ function UndoRedo(type) {
|
|
|
258
208
|
}
|
|
259
209
|
};
|
|
260
210
|
}
|
|
261
|
-
|
|
262
211
|
function EnterHandlingPlugin() {
|
|
263
212
|
return {
|
|
264
213
|
name: 'enterHandling',
|
|
@@ -267,33 +216,26 @@ function EnterHandlingPlugin() {
|
|
|
267
216
|
if (change.value.isInVoid) {
|
|
268
217
|
return change.collapseToStartOfNextText();
|
|
269
218
|
}
|
|
270
|
-
|
|
271
219
|
change.splitBlock();
|
|
272
220
|
var range = change.value.selection;
|
|
273
221
|
var newBlock = change.value.document.getClosestBlock(range.startKey);
|
|
274
|
-
|
|
275
222
|
if (newBlock.type !== 'paragraph') {
|
|
276
223
|
change.setNodeByKey(newBlock.key, {
|
|
277
224
|
type: 'paragraph'
|
|
278
225
|
});
|
|
279
226
|
}
|
|
280
|
-
|
|
281
227
|
return change;
|
|
282
228
|
}
|
|
283
|
-
|
|
284
229
|
return undefined;
|
|
285
230
|
}
|
|
286
231
|
};
|
|
287
232
|
}
|
|
288
|
-
|
|
289
|
-
var buildPlugins = function buildPlugins(activePlugins, customPlugins, opts) {
|
|
233
|
+
var buildPlugins = exports.buildPlugins = function buildPlugins(activePlugins, customPlugins, opts) {
|
|
290
234
|
log('[buildPlugins] opts: ', opts);
|
|
291
235
|
activePlugins = activePlugins || DEFAULT_PLUGINS;
|
|
292
|
-
|
|
293
236
|
var addIf = function addIf(key, p) {
|
|
294
237
|
return activePlugins.includes(key) && p;
|
|
295
238
|
};
|
|
296
|
-
|
|
297
239
|
var imagePlugin = opts.image && opts.image.onDelete && (0, _image["default"])(opts.image);
|
|
298
240
|
var mathPlugin = (0, _math["default"])(opts.math);
|
|
299
241
|
var respAreaPlugin = opts.responseArea && opts.responseArea.type && (0, _respArea["default"])(opts.responseArea, (0, _compact["default"])([mathPlugin]));
|
|
@@ -305,41 +247,36 @@ var buildPlugins = function buildPlugins(activePlugins, customPlugins, opts) {
|
|
|
305
247
|
}));
|
|
306
248
|
});
|
|
307
249
|
var tablePlugins = [imagePlugin, mathPlugin, respAreaPlugin].concat((0, _toConsumableArray2["default"])(languageCharactersPlugins));
|
|
308
|
-
|
|
309
250
|
if (opts.responseArea && opts.responseArea.type === 'math-templated') {
|
|
310
251
|
tablePlugins.push(respAreaPlugin);
|
|
311
252
|
}
|
|
312
|
-
|
|
313
253
|
var builtCustomPlugins = [];
|
|
314
254
|
customPlugins.forEach(function (customPlugin) {
|
|
315
255
|
var _ref2 = customPlugin || {},
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
256
|
+
event = _ref2.event,
|
|
257
|
+
icon = _ref2.icon,
|
|
258
|
+
iconType = _ref2.iconType,
|
|
259
|
+
iconAlt = _ref2.iconAlt;
|
|
321
260
|
function isValidEventName(eventName) {
|
|
322
261
|
// Check if eventName is a non-empty string
|
|
323
262
|
if (typeof eventName !== 'string' || eventName.length === 0) {
|
|
324
263
|
return false;
|
|
325
|
-
}
|
|
326
|
-
|
|
264
|
+
}
|
|
327
265
|
|
|
328
|
-
|
|
266
|
+
// Regular expression to match valid event names (only alphanumeric characters and underscore)
|
|
267
|
+
var regex = /^[a-zA-Z0-9_]+$/;
|
|
329
268
|
|
|
269
|
+
// Check if the eventName matches the regular expression
|
|
330
270
|
return regex.test(eventName);
|
|
331
271
|
}
|
|
332
|
-
|
|
333
272
|
if (!isValidEventName(event)) {
|
|
334
273
|
console.error("The event name: ".concat(event, " is not a valid event name!"));
|
|
335
274
|
return;
|
|
336
275
|
}
|
|
337
|
-
|
|
338
276
|
if (!icon && !iconType && !iconAlt) {
|
|
339
277
|
console.error('Your custom button requires icon, iconType and iconAlt');
|
|
340
278
|
return;
|
|
341
279
|
}
|
|
342
|
-
|
|
343
280
|
builtCustomPlugins.push((0, _customPlugin["default"])('custom-plugin', customPlugin));
|
|
344
281
|
});
|
|
345
282
|
return (0, _compact["default"])([addIf('table', (0, _table["default"])(opts.table, (0, _compact["default"])(tablePlugins))), addIf('bold', MarkHotkey({
|
|
@@ -347,7 +284,8 @@ var buildPlugins = function buildPlugins(activePlugins, customPlugins, opts) {
|
|
|
347
284
|
type: 'bold',
|
|
348
285
|
icon: /*#__PURE__*/_react["default"].createElement(_FormatBold["default"], null),
|
|
349
286
|
tag: 'strong'
|
|
350
|
-
})),
|
|
287
|
+
})),
|
|
288
|
+
// addIf('code', MarkHotkey({ key: '`', type: 'code', icon: <Code /> })),
|
|
351
289
|
addIf('italic', MarkHotkey({
|
|
352
290
|
key: 'i',
|
|
353
291
|
type: 'italic',
|
|
@@ -363,12 +301,14 @@ var buildPlugins = function buildPlugins(activePlugins, customPlugins, opts) {
|
|
|
363
301
|
type: 'underline',
|
|
364
302
|
icon: /*#__PURE__*/_react["default"].createElement(_FormatUnderlined["default"], null),
|
|
365
303
|
tag: 'u'
|
|
366
|
-
})),
|
|
304
|
+
})),
|
|
305
|
+
// icon should be modifies accordingly
|
|
367
306
|
addIf('superscript', MarkHotkey({
|
|
368
307
|
type: 'sup',
|
|
369
308
|
icon: /*#__PURE__*/_react["default"].createElement(SuperscriptIcon, null),
|
|
370
309
|
tag: 'sup'
|
|
371
|
-
})),
|
|
310
|
+
})),
|
|
311
|
+
// icon should be modifies accordingly
|
|
372
312
|
addIf('subscript', MarkHotkey({
|
|
373
313
|
type: 'sub',
|
|
374
314
|
icon: /*#__PURE__*/_react["default"].createElement(SubscriptIcon, null),
|
|
@@ -397,6 +337,4 @@ var buildPlugins = function buildPlugins(activePlugins, customPlugins, opts) {
|
|
|
397
337
|
shift: true
|
|
398
338
|
})], builtCustomPlugins, [addIf('responseArea', respAreaPlugin), cssPlugin, addIf('html', (0, _html["default"])(opts.html)), EnterHandlingPlugin(), (0, _rendering["default"])()]));
|
|
399
339
|
};
|
|
400
|
-
|
|
401
|
-
exports.buildPlugins = buildPlugins;
|
|
402
340
|
//# sourceMappingURL=index.js.map
|