easy-richtextarea 4.0.47 → 4.0.49
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/example.js +3603 -3604
- package/lib/browser.js +4 -4
- package/lib/example/richTextarea.js +6 -6
- package/lib/example/view.js +3 -3
- package/lib/example.js +5 -5
- package/lib/main.js +3 -3
- package/lib/richTextarea.js +67 -116
- package/lib/selection.js +5 -5
- package/package.json +2 -2
- package/src/richTextarea.js +9 -75
package/lib/selection.js
CHANGED
|
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "default", {
|
|
|
8
8
|
return Selection;
|
|
9
9
|
}
|
|
10
10
|
});
|
|
11
|
-
function
|
|
11
|
+
function _class_call_check(instance, Constructor) {
|
|
12
12
|
if (!(instance instanceof Constructor)) {
|
|
13
13
|
throw new TypeError("Cannot call a class as a function");
|
|
14
14
|
}
|
|
@@ -22,18 +22,18 @@ function _defineProperties(target, props) {
|
|
|
22
22
|
Object.defineProperty(target, descriptor.key, descriptor);
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
function
|
|
25
|
+
function _create_class(Constructor, protoProps, staticProps) {
|
|
26
26
|
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
27
27
|
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
28
28
|
return Constructor;
|
|
29
29
|
}
|
|
30
30
|
var Selection = /*#__PURE__*/ function() {
|
|
31
31
|
function Selection(startPosition, endPosition) {
|
|
32
|
-
|
|
32
|
+
_class_call_check(this, Selection);
|
|
33
33
|
this.startPosition = startPosition;
|
|
34
34
|
this.endPosition = endPosition;
|
|
35
35
|
}
|
|
36
|
-
|
|
36
|
+
_create_class(Selection, [
|
|
37
37
|
{
|
|
38
38
|
key: "getStartPosition",
|
|
39
39
|
value: function getStartPosition() {
|
|
@@ -95,4 +95,4 @@ var Selection = /*#__PURE__*/ function() {
|
|
|
95
95
|
return Selection;
|
|
96
96
|
}();
|
|
97
97
|
|
|
98
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9zZWxlY3Rpb24uanMiLCI8PGpzeC1jb25maWctcHJhZ21hLmpzPj4iXSwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFNlbGVjdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHN0YXJ0UG9zaXRpb24sIGVuZFBvc2l0aW9uKSB7XG4gICAgdGhpcy5zdGFydFBvc2l0aW9uID0gc3RhcnRQb3NpdGlvbjtcbiAgICB0aGlzLmVuZFBvc2l0aW9uID0gZW5kUG9zaXRpb247XG4gIH1cblxuICBnZXRTdGFydFBvc2l0aW9uKCkge1xuICAgIHJldHVybiB0aGlzLnN0YXJ0UG9zaXRpb247XG4gIH1cblxuICBnZXRFbmRQb3NpdGlvbigpIHtcbiAgICByZXR1cm4gdGhpcy5lbmRQb3NpdGlvbjtcbiAgfVxuXG4gIHNldFN0YXJ0UG9zaXRpb24oc3RhcnRQb3NpdGlvbikge1xuICAgIHRoaXMuc3RhcnRQb3NpdGlvbiA9IHN0YXJ0UG9zaXRpb247XG4gIH1cblxuICBzZXRFbmRQb3NpdGlvbihlbmRQb3NpdGlvbikge1xuICAgIHRoaXMuZW5kUG9zaXRpb24gPSBlbmRQb3NpdGlvbjtcbiAgfVxuXG4gIGlzRXF1YWxUbyhzZWxlY3Rpb24pIHtcbiAgICBsZXQgZXF1YWxUbyA9IGZhbHNlO1xuXG4gICAgaWYgKHNlbGVjdGlvbiAhPT0gbnVsbCkge1xuICAgICAgY29uc3Qgc2VsZWN0aW9uU3RhcnRQb3NpdGlvbiA9IHNlbGVjdGlvbi5nZXRTdGFydFBvc2l0aW9uKCksXG4gICAgICAgICAgICBzZWxlY3Rpb25FbmRQb3NpdGlvbiA9IHNlbGVjdGlvbi5nZXRFbmRQb3NpdGlvbigpLFxuICAgICAgICAgICAgc3RhcnRQb3NpdGlvbnNFcXVhbCA9ICh0aGlzLnN0YXJ0UG9zaXRpb24gPT09IHNlbGVjdGlvblN0YXJ0UG9zaXRpb24pLFxuICAgICAgICAgICAgZW5kUG9zaXRpb25zRXF1YWwgPSAodGhpcy5lbmRQb3NpdGlvbiA9PT0gc2VsZWN0aW9uRW5kUG9zaXRpb24pO1xuXG4gICAgICBlcXVhbFRvID0gKHN0YXJ0UG9zaXRpb25zRXF1YWwgJiYgZW5kUG9zaXRpb25zRXF1YWwpO1xuICAgIH1cblxuICAgIHJldHVybiBlcXVhbFRvO1xuICB9XG5cbiAgc3RhdGljIGZyb21Ob3RoaW5nKCkge1xuICAgIGNvbnN0IHN0YXJ0UG9zaXRpb24gPSAwLFxuICAgICAgICAgIGVuZFBvc2l0aW9uID0gMCxcbiAgICAgICAgICBzZWxlY3Rpb24gPSBuZXcgU2VsZWN0aW9uKHN0YXJ0UG9zaXRpb24sIGVuZFBvc2l0aW9uKTtcblxuICAgIHJldHVybiBzZWxlY3Rpb247XG4gIH1cblxuICBzdGF0aWMgZnJvbURPTUVsZW1lbnQoZG9tRWxlbWVudCkge1xuICAgIGNvbnN0IHsgc2VsZWN0aW9uU3RhcnQsIHNlbGVjdGlvbkVuZCB9ID0gZG9tRWxlbWVudCxcbiAgICAgICAgICBzdGFydFBvc2l0aW9uID0gc2VsZWN0aW9uU3RhcnQsIC8vL1xuICAgICAgICAgIGVuZFBvc2l0aW9uID0gc2VsZWN0aW9uRW5kLCAvLy9cbiAgICAgICAgICBzZWxlY3Rpb24gPSBuZXcgU2VsZWN0aW9uKHN0YXJ0UG9zaXRpb24sIGVuZFBvc2l0aW9uKTtcblxuICAgIHJldHVybiBzZWxlY3Rpb247XG5cbiAgfVxuXG4gIHN0YXRpYyBmcm9tU3RhcnRQb3NpdGlvbkFuZEVuZFBvc2l0aW9uKHN0YXJ0UG9zaXRpb24sIGVuZFBvc2l0aW9uKSB7XG4gICAgY29uc3Qgc2VsZWN0aW9uID0gbmV3IFNlbGVjdGlvbihzdGFydFBvc2l0aW9uLCBlbmRQb3NpdGlvbik7XG5cbiAgICByZXR1cm4gc2VsZWN0aW9uO1xuICB9XG59XG4iLCJSZWFjdC5jcmVhdGVFbGVtZW50Il0sIm5hbWVzIjpbIlNlbGVjdGlvbiIsInN0YXJ0UG9zaXRpb24iLCJlbmRQb3NpdGlvbiIsImdldFN0YXJ0UG9zaXRpb24iLCJnZXRFbmRQb3NpdGlvbiIsInNldFN0YXJ0UG9zaXRpb24iLCJzZXRFbmRQb3NpdGlvbiIsImlzRXF1YWxUbyIsInNlbGVjdGlvbiIsImVxdWFsVG8iLCJzZWxlY3Rpb25TdGFydFBvc2l0aW9uIiwic2VsZWN0aW9uRW5kUG9zaXRpb24iLCJzdGFydFBvc2l0aW9uc0VxdWFsIiwiZW5kUG9zaXRpb25zRXF1YWwiLCJmcm9tTm90aGluZyIsImZyb21ET01FbGVtZW50IiwiZG9tRWxlbWVudCIsInNlbGVjdGlvblN0YXJ0Iiwic2VsZWN0aW9uRW5kIiwiZnJvbVN0YXJ0UG9zaXRpb25BbmRFbmRQb3NpdGlvbiJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7ZUFFcUJBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQU4sSUFBQSxBQUFNQSwwQkFBTjthQUFNQSxVQUNQQyxhQUFhLEVBQUVDLFdBQVc7Z0NBRG5CRjtRQUVqQixJQUFJLENBQUNDLGFBQWEsR0FBR0E7UUFDckIsSUFBSSxDQUFDQyxXQUFXLEdBQUdBOztrQkFIRkY7O1lBTW5CRyxLQUFBQTttQkFBQUEsU0FBQUEsbUJBQW1CO2dCQUNqQixPQUFPLElBQUksQ0FBQ0YsYUFBYTtZQUMzQjs7O1lBRUFHLEtBQUFBO21CQUFBQSxTQUFBQSxpQkFBaUI7Z0JBQ2YsT0FBTyxJQUFJLENBQUNGLFdBQVc7WUFDekI7OztZQUVBRyxLQUFBQTttQkFBQUEsU0FBQUEsaUJBQWlCSixhQUFhLEVBQUU7Z0JBQzlCLElBQUksQ0FBQ0EsYUFBYSxHQUFHQTtZQUN2Qjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSxlQUFlSixXQUFXLEVBQUU7Z0JBQzFCLElBQUksQ0FBQ0EsV0FBVyxHQUFHQTtZQUNyQjs7O1lBRUFLLEtBQUFBO21CQUFBQSxTQUFBQSxVQUFVQyxTQUFTLEVBQUU7Z0JBQ25CLElBQUlDLFVBQVUsS0FBSztnQkFFbkIsSUFBSUQsY0FBYyxJQUFJLEVBQUU7b0JBQ3RCLElBQU1FLHlCQUF5QkYsVUFBVUwsZ0JBQWdCLElBQ25EUSx1QkFBdUJILFVBQVVKLGNBQWMsSUFDL0NRLHNCQUF1QixJQUFJLENBQUNYLGFBQWEsS0FBS1Msd0JBQzlDRyxvQkFBcUIsSUFBSSxDQUFDWCxXQUFXLEtBQUtTO29CQUVoREYsVUFBV0csdUJBQXVCQztnQkFDcEMsQ0FBQztnQkFFRCxPQUFPSjtZQUNUOzs7O1lBRU9LLEtBQUFBO21CQUFQLFNBQU9BLGNBQWM7Z0JBQ25CLElBQU1iLGdCQUFnQixHQUNoQkMsY0FBYyxHQUNkTSxZQUFZLElBeENEUixVQXdDZUMsZUFBZUM7Z0JBRS9DLE9BQU9NO1lBQ1Q7OztZQUVPTyxLQUFBQTttQkFBUCxTQUFPQSxlQUFlQyxVQUFVLEVBQUU7Z0JBQ2hDLElBQVFDLGlCQUFpQ0QsV0FBakNDLGdCQUFnQkMsZUFBaUJGLFdBQWpCRSxjQUNsQmpCLGdCQUFnQmdCLGdCQUNoQmYsY0FBY2dCLGNBQ2RWLFlBQVksSUFqRERSLFVBaURlQyxlQUFlQztnQkFFL0MsT0FBT007WUFFVDs7O1lBRU9XLEtBQUFBO21CQUFQLFNBQU9BLGdDQUFnQ2xCLGFBQWEsRUFBRUMsV0FBVyxFQUFFO2dCQUNqRSxJQUFNTSxZQUFZLElBeEREUixVQXdEZUMsZUFBZUM7Z0JBRS9DLE9BQU9NO1lBQ1Q7OztXQTNEbUJSIn0=
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "easy-richtextarea",
|
|
3
3
|
"author": "James Smith",
|
|
4
|
-
"version": "4.0.
|
|
4
|
+
"version": "4.0.49",
|
|
5
5
|
"license": "MIT, Anti-996",
|
|
6
6
|
"homepage": "https://github.com/djalbat/easy-richtextarea",
|
|
7
7
|
"description": "A textarea element that handles and hands off events well.",
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
},
|
|
16
16
|
"devDependencies": {
|
|
17
17
|
"@swc/core": "^1.2.160",
|
|
18
|
-
"easy-with-style": "^3.0.
|
|
18
|
+
"easy-with-style": "^3.0.199",
|
|
19
19
|
"esbuild": "^0.9.2",
|
|
20
20
|
"express": "^4.17.1",
|
|
21
21
|
"lively-cli": "^2.0.34",
|
package/src/richTextarea.js
CHANGED
|
@@ -10,11 +10,6 @@ const { BLUR_EVENT_TYPE,
|
|
|
10
10
|
INPUT_EVENT_TYPE,
|
|
11
11
|
SCROLL_EVENT_TYPE,
|
|
12
12
|
CHANGE_EVENT_TYPE,
|
|
13
|
-
CUT_EVENT_TYPE,
|
|
14
|
-
COPY_EVENT_TYPE,
|
|
15
|
-
PASTE_EVENT_TYPE,
|
|
16
|
-
KEYDOWN_EVENT_TYPE,
|
|
17
|
-
MOUSEDOWN_EVENT_TYPE,
|
|
18
13
|
SELECTIONCHANGE_EVENT_TYPE } = eventTypes;
|
|
19
14
|
|
|
20
15
|
export default class RichTextarea extends Element {
|
|
@@ -44,26 +39,6 @@ export default class RichTextarea extends Element {
|
|
|
44
39
|
this.callHandlers(eventType, event, element);
|
|
45
40
|
}
|
|
46
41
|
|
|
47
|
-
cutHandler = (event, element) => {
|
|
48
|
-
///
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
copyHandler = (event, element) => {
|
|
52
|
-
///
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
pasteHandler = (event, element) => {
|
|
56
|
-
///
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
keyDownHandler = (event, element) => {
|
|
60
|
-
///
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
mouseDownHandler = (event, element) => {
|
|
64
|
-
///
|
|
65
|
-
}
|
|
66
|
-
|
|
67
42
|
selectChangeHandler = (event, element) => {
|
|
68
43
|
const { currentTarget } = event,
|
|
69
44
|
{ activeElement } = currentTarget,
|
|
@@ -105,11 +80,6 @@ export default class RichTextarea extends Element {
|
|
|
105
80
|
&& (handler !== this.focusHandler)
|
|
106
81
|
&& (handler !== this.inputHandler)
|
|
107
82
|
&& (handler !== this.scrollHandler)
|
|
108
|
-
&& (handler !== this.cutHandler)
|
|
109
|
-
&& (handler !== this.copyHandler)
|
|
110
|
-
&& (handler !== this.pasteHandler)
|
|
111
|
-
&& (handler !== this.keyDownHandler)
|
|
112
|
-
&& (handler !== this.mouseDownHandler)
|
|
113
83
|
&& (handler !== this.selectChangeHandler) ) {
|
|
114
84
|
|
|
115
85
|
const handlerElement = element; ///
|
|
@@ -149,18 +119,6 @@ export default class RichTextarea extends Element {
|
|
|
149
119
|
return selection;
|
|
150
120
|
}
|
|
151
121
|
|
|
152
|
-
getSelectedContent() {
|
|
153
|
-
const content = this.getContent(),
|
|
154
|
-
selection = this.getSelection(),
|
|
155
|
-
endPosition = selection.getEndPosition(),
|
|
156
|
-
startPosition = selection.getStartPosition(),
|
|
157
|
-
start = startPosition, ///
|
|
158
|
-
end = endPosition, ///
|
|
159
|
-
selectedContent = content.slice(start, end);
|
|
160
|
-
|
|
161
|
-
return selectedContent;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
122
|
hasContentChanged() {
|
|
165
123
|
const content = this.getContent(),
|
|
166
124
|
previousContent = this.getPreviousContent(),
|
|
@@ -227,16 +185,6 @@ export default class RichTextarea extends Element {
|
|
|
227
185
|
|
|
228
186
|
this.on(SCROLL_EVENT_TYPE, this.scrollHandler);
|
|
229
187
|
|
|
230
|
-
this.on(CUT_EVENT_TYPE, this.cutHandler);
|
|
231
|
-
|
|
232
|
-
this.on(COPY_EVENT_TYPE, this.copyHandler);
|
|
233
|
-
|
|
234
|
-
this.on(PASTE_EVENT_TYPE, this.pasteHandler);
|
|
235
|
-
|
|
236
|
-
this.on(KEYDOWN_EVENT_TYPE, this.keyDownHandler);
|
|
237
|
-
|
|
238
|
-
this.on(MOUSEDOWN_EVENT_TYPE, this.mouseDownHandler);
|
|
239
|
-
|
|
240
188
|
document.on(SELECTIONCHANGE_EVENT_TYPE, this.selectChangeHandler);
|
|
241
189
|
|
|
242
190
|
this.addClass("active");
|
|
@@ -251,16 +199,6 @@ export default class RichTextarea extends Element {
|
|
|
251
199
|
|
|
252
200
|
this.off(SCROLL_EVENT_TYPE, this.scrollHandler);
|
|
253
201
|
|
|
254
|
-
this.off(CUT_EVENT_TYPE, this.cutHandler);
|
|
255
|
-
|
|
256
|
-
this.off(COPY_EVENT_TYPE, this.copyHandler);
|
|
257
|
-
|
|
258
|
-
this.off(PASTE_EVENT_TYPE, this.pasteHandler);
|
|
259
|
-
|
|
260
|
-
this.off(KEYDOWN_EVENT_TYPE, this.keyDownHandler);
|
|
261
|
-
|
|
262
|
-
this.off(MOUSEDOWN_EVENT_TYPE, this.mouseDownHandler);
|
|
263
|
-
|
|
264
202
|
document.off(SELECTIONCHANGE_EVENT_TYPE, this.selectChangeHandler);
|
|
265
203
|
|
|
266
204
|
this.removeClass("active");
|
|
@@ -291,14 +229,21 @@ export default class RichTextarea extends Element {
|
|
|
291
229
|
}
|
|
292
230
|
|
|
293
231
|
didMount() {
|
|
232
|
+
const content = this.getContent(),
|
|
233
|
+
selection = this.getSelection(),
|
|
234
|
+
previousContent = content, ///
|
|
235
|
+
previousSelection = selection; ///
|
|
236
|
+
|
|
237
|
+
this.setPreviousContent(previousContent);
|
|
238
|
+
|
|
239
|
+
this.setPreviousSelection(previousSelection);
|
|
240
|
+
|
|
294
241
|
const { onBlur, onFocus, onScroll, onChange } = this.properties,
|
|
295
242
|
blurHandler = onBlur, ///
|
|
296
243
|
focusHandler = onFocus, ///
|
|
297
244
|
scrollHandler = onScroll, ///
|
|
298
245
|
changeHandler = onChange; ///
|
|
299
246
|
|
|
300
|
-
this.updateInitialState();
|
|
301
|
-
|
|
302
247
|
blurHandler && this.onBlur(blurHandler, this);
|
|
303
248
|
|
|
304
249
|
focusHandler && this.onFocus(focusHandler, this);
|
|
@@ -330,17 +275,6 @@ export default class RichTextarea extends Element {
|
|
|
330
275
|
}
|
|
331
276
|
}
|
|
332
277
|
|
|
333
|
-
updateInitialState() {
|
|
334
|
-
const content = this.getContent(),
|
|
335
|
-
selection = this.getSelection(),
|
|
336
|
-
previousContent = content, ///
|
|
337
|
-
previousSelection = selection; ///
|
|
338
|
-
|
|
339
|
-
this.setPreviousContent(previousContent);
|
|
340
|
-
|
|
341
|
-
this.setPreviousSelection(previousSelection);
|
|
342
|
-
}
|
|
343
|
-
|
|
344
278
|
setInitialState() {
|
|
345
279
|
const previousContent = null,
|
|
346
280
|
previousSelection = null;
|