pxx-vue-quill 1.0.104 → 1.0.106
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/vue-quill.umd.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
*
|
|
8
8
|
* Copyright (c) 2025 Pxx-Team
|
|
9
9
|
* Released under the MIT license
|
|
10
|
-
* Date: 2025-09-10T02:
|
|
10
|
+
* Date: 2025-09-10T02:44:18.286Z
|
|
11
11
|
*/
|
|
12
12
|
(function (global, factory) {
|
|
13
13
|
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('vue')) :
|
|
@@ -18993,11 +18993,11 @@
|
|
|
18993
18993
|
value: true
|
|
18994
18994
|
});
|
|
18995
18995
|
|
|
18996
|
-
var _createClass
|
|
18996
|
+
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
|
18997
18997
|
|
|
18998
18998
|
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
18999
18999
|
|
|
19000
|
-
function _classCallCheck
|
|
19000
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
19001
19001
|
|
|
19002
19002
|
var LEFT_ALIGN = 'left';
|
|
19003
19003
|
var CENTER_ALIGN = 'center';
|
|
@@ -19008,7 +19008,7 @@
|
|
|
19008
19008
|
var _this = this,
|
|
19009
19009
|
_alignments;
|
|
19010
19010
|
|
|
19011
|
-
_classCallCheck
|
|
19011
|
+
_classCallCheck(this, DefaultAligner);
|
|
19012
19012
|
|
|
19013
19013
|
this.applyStyle = options.aligner.applyStyle;
|
|
19014
19014
|
this.alignAttribute = options.attribute;
|
|
@@ -19036,7 +19036,7 @@
|
|
|
19036
19036
|
}), _alignments);
|
|
19037
19037
|
}
|
|
19038
19038
|
|
|
19039
|
-
_createClass
|
|
19039
|
+
_createClass(DefaultAligner, [{
|
|
19040
19040
|
key: 'getAlignments',
|
|
19041
19041
|
value: function getAlignments() {
|
|
19042
19042
|
var _this2 = this;
|
|
@@ -19339,182 +19339,190 @@
|
|
|
19339
19339
|
return AlignAction;
|
|
19340
19340
|
}
|
|
19341
19341
|
|
|
19342
|
-
var ResizeAction
|
|
19342
|
+
var ResizeAction = {};
|
|
19343
19343
|
|
|
19344
|
-
|
|
19345
|
-
value: true
|
|
19346
|
-
});
|
|
19344
|
+
var hasRequiredResizeAction;
|
|
19347
19345
|
|
|
19348
|
-
|
|
19346
|
+
function requireResizeAction () {
|
|
19347
|
+
if (hasRequiredResizeAction) return ResizeAction;
|
|
19348
|
+
hasRequiredResizeAction = 1;
|
|
19349
19349
|
|
|
19350
|
-
|
|
19350
|
+
Object.defineProperty(ResizeAction, "__esModule", {
|
|
19351
|
+
value: true
|
|
19352
|
+
});
|
|
19351
19353
|
|
|
19352
|
-
|
|
19354
|
+
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
|
|
19353
19355
|
|
|
19354
|
-
|
|
19356
|
+
var _Action2 = requireAction();
|
|
19355
19357
|
|
|
19356
|
-
|
|
19358
|
+
var _Action3 = _interopRequireDefault(_Action2);
|
|
19357
19359
|
|
|
19358
|
-
|
|
19360
|
+
var _BlotFormatter = requireBlotFormatter();
|
|
19359
19361
|
|
|
19360
|
-
|
|
19362
|
+
_interopRequireDefault(_BlotFormatter);
|
|
19361
19363
|
|
|
19362
|
-
|
|
19364
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
19363
19365
|
|
|
19364
|
-
|
|
19366
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
19365
19367
|
|
|
19366
|
-
|
|
19367
|
-
_inherits(ResizeAction, _Action);
|
|
19368
|
+
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
|
|
19368
19369
|
|
|
19369
|
-
|
|
19370
|
-
_classCallCheck(this, ResizeAction);
|
|
19370
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
|
|
19371
19371
|
|
|
19372
|
-
|
|
19372
|
+
var ResizeAction$1 = function (_Action) {
|
|
19373
|
+
_inherits(ResizeAction, _Action);
|
|
19373
19374
|
|
|
19374
|
-
|
|
19375
|
-
|
|
19376
|
-
return;
|
|
19377
|
-
}
|
|
19378
|
-
_this.dragHandle = event.target;
|
|
19379
|
-
_this.setCursor(_this.dragHandle.style.cursor);
|
|
19375
|
+
function ResizeAction(formatter) {
|
|
19376
|
+
_classCallCheck(this, ResizeAction);
|
|
19380
19377
|
|
|
19381
|
-
|
|
19382
|
-
return;
|
|
19383
|
-
}
|
|
19378
|
+
var _this = _possibleConstructorReturn(this, (ResizeAction.__proto__ || Object.getPrototypeOf(ResizeAction)).call(this, formatter));
|
|
19384
19379
|
|
|
19385
|
-
|
|
19386
|
-
|
|
19387
|
-
|
|
19388
|
-
|
|
19380
|
+
_this.onMouseDown = function (event) {
|
|
19381
|
+
if (!(event.target instanceof HTMLElement)) {
|
|
19382
|
+
return;
|
|
19383
|
+
}
|
|
19384
|
+
_this.dragHandle = event.target;
|
|
19385
|
+
_this.setCursor(_this.dragHandle.style.cursor);
|
|
19389
19386
|
|
|
19390
|
-
|
|
19387
|
+
if (!_this.formatter.currentSpec) {
|
|
19388
|
+
return;
|
|
19389
|
+
}
|
|
19391
19390
|
|
|
19392
|
-
|
|
19393
|
-
|
|
19394
|
-
|
|
19391
|
+
var target = _this.formatter.currentSpec.getTargetElement();
|
|
19392
|
+
if (!target) {
|
|
19393
|
+
return;
|
|
19394
|
+
}
|
|
19395
19395
|
|
|
19396
|
-
|
|
19397
|
-
document.addEventListener('mouseup', _this.onMouseUp);
|
|
19398
|
-
};
|
|
19396
|
+
var rect = target.getBoundingClientRect();
|
|
19399
19397
|
|
|
19400
|
-
|
|
19401
|
-
|
|
19402
|
-
|
|
19403
|
-
}
|
|
19398
|
+
_this.dragStartX = event.clientX;
|
|
19399
|
+
_this.preDragWidth = rect.width;
|
|
19400
|
+
_this.targetRatio = rect.height / rect.width;
|
|
19404
19401
|
|
|
19405
|
-
|
|
19406
|
-
|
|
19407
|
-
|
|
19408
|
-
}
|
|
19402
|
+
document.addEventListener('mousemove', _this.onDrag);
|
|
19403
|
+
document.addEventListener('mouseup', _this.onMouseUp);
|
|
19404
|
+
};
|
|
19409
19405
|
|
|
19410
|
-
|
|
19411
|
-
|
|
19406
|
+
_this.onDrag = function (event) {
|
|
19407
|
+
if (!_this.formatter.currentSpec) {
|
|
19408
|
+
return;
|
|
19409
|
+
}
|
|
19412
19410
|
|
|
19413
|
-
|
|
19414
|
-
|
|
19415
|
-
|
|
19416
|
-
|
|
19417
|
-
}
|
|
19411
|
+
var target = _this.formatter.currentSpec.getTargetElement();
|
|
19412
|
+
if (!target) {
|
|
19413
|
+
return;
|
|
19414
|
+
}
|
|
19418
19415
|
|
|
19419
|
-
|
|
19416
|
+
var deltaX = event.clientX - _this.dragStartX;
|
|
19417
|
+
var newWidth = 0;
|
|
19420
19418
|
|
|
19421
|
-
|
|
19422
|
-
|
|
19419
|
+
if (_this.dragHandle === _this.topLeftHandle || _this.dragHandle === _this.bottomLeftHandle) {
|
|
19420
|
+
newWidth = Math.round(_this.preDragWidth - deltaX);
|
|
19421
|
+
} else {
|
|
19422
|
+
newWidth = Math.round(_this.preDragWidth + deltaX);
|
|
19423
|
+
}
|
|
19423
19424
|
|
|
19424
|
-
|
|
19425
|
-
};
|
|
19425
|
+
var newHeight = _this.targetRatio * newWidth;
|
|
19426
19426
|
|
|
19427
|
-
|
|
19428
|
-
|
|
19429
|
-
document.removeEventListener('mousemove', _this.onDrag);
|
|
19430
|
-
document.removeEventListener('mouseup', _this.onMouseUp);
|
|
19431
|
-
};
|
|
19427
|
+
target.setAttribute('width', '' + newWidth);
|
|
19428
|
+
target.setAttribute('height', '' + newHeight);
|
|
19432
19429
|
|
|
19433
|
-
|
|
19434
|
-
|
|
19435
|
-
_this.bottomRightHandle = _this.createHandle('bottom-right', 'nwse-resize');
|
|
19436
|
-
_this.bottomLeftHandle = _this.createHandle('bottom-left', 'nesw-resize');
|
|
19437
|
-
_this.dragHandle = null;
|
|
19438
|
-
_this.dragStartX = 0;
|
|
19439
|
-
_this.preDragWidth = 0;
|
|
19440
|
-
_this.targetRatio = 0;
|
|
19441
|
-
return _this;
|
|
19442
|
-
}
|
|
19430
|
+
_this.formatter.update();
|
|
19431
|
+
};
|
|
19443
19432
|
|
|
19444
|
-
|
|
19445
|
-
|
|
19446
|
-
|
|
19447
|
-
|
|
19448
|
-
|
|
19449
|
-
this.formatter.overlay.appendChild(this.bottomRightHandle);
|
|
19450
|
-
this.formatter.overlay.appendChild(this.bottomLeftHandle);
|
|
19433
|
+
_this.onMouseUp = function () {
|
|
19434
|
+
_this.setCursor('');
|
|
19435
|
+
document.removeEventListener('mousemove', _this.onDrag);
|
|
19436
|
+
document.removeEventListener('mouseup', _this.onMouseUp);
|
|
19437
|
+
};
|
|
19451
19438
|
|
|
19452
|
-
|
|
19453
|
-
|
|
19454
|
-
|
|
19455
|
-
|
|
19456
|
-
|
|
19457
|
-
|
|
19458
|
-
|
|
19459
|
-
|
|
19460
|
-
|
|
19461
|
-
|
|
19462
|
-
}
|
|
19463
|
-
}, {
|
|
19464
|
-
key: 'createHandle',
|
|
19465
|
-
value: function createHandle(position, cursor) {
|
|
19466
|
-
var box = document.createElement('div');
|
|
19467
|
-
box.classList.add(this.formatter.options.resize.handleClassName);
|
|
19468
|
-
box.setAttribute('data-position', position);
|
|
19469
|
-
box.style.cursor = cursor;
|
|
19470
|
-
|
|
19471
|
-
if (this.formatter.options.resize.handleStyle) {
|
|
19472
|
-
Object.assign(box.style, this.formatter.options.resize.handleStyle);
|
|
19473
|
-
}
|
|
19439
|
+
_this.topLeftHandle = _this.createHandle('top-left', 'nwse-resize');
|
|
19440
|
+
_this.topRightHandle = _this.createHandle('top-right', 'nesw-resize');
|
|
19441
|
+
_this.bottomRightHandle = _this.createHandle('bottom-right', 'nwse-resize');
|
|
19442
|
+
_this.bottomLeftHandle = _this.createHandle('bottom-left', 'nesw-resize');
|
|
19443
|
+
_this.dragHandle = null;
|
|
19444
|
+
_this.dragStartX = 0;
|
|
19445
|
+
_this.preDragWidth = 0;
|
|
19446
|
+
_this.targetRatio = 0;
|
|
19447
|
+
return _this;
|
|
19448
|
+
}
|
|
19474
19449
|
|
|
19475
|
-
|
|
19450
|
+
_createClass(ResizeAction, [{
|
|
19451
|
+
key: 'onCreate',
|
|
19452
|
+
value: function onCreate() {
|
|
19453
|
+
this.formatter.overlay.appendChild(this.topLeftHandle);
|
|
19454
|
+
this.formatter.overlay.appendChild(this.topRightHandle);
|
|
19455
|
+
this.formatter.overlay.appendChild(this.bottomRightHandle);
|
|
19456
|
+
this.formatter.overlay.appendChild(this.bottomLeftHandle);
|
|
19476
19457
|
|
|
19477
|
-
|
|
19478
|
-
|
|
19479
|
-
|
|
19480
|
-
|
|
19481
|
-
|
|
19482
|
-
|
|
19483
|
-
|
|
19484
|
-
|
|
19485
|
-
|
|
19486
|
-
|
|
19487
|
-
|
|
19488
|
-
|
|
19489
|
-
|
|
19490
|
-
|
|
19491
|
-
|
|
19458
|
+
this.repositionHandles(this.formatter.options.resize.handleStyle);
|
|
19459
|
+
}
|
|
19460
|
+
}, {
|
|
19461
|
+
key: 'onDestroy',
|
|
19462
|
+
value: function onDestroy() {
|
|
19463
|
+
this.setCursor('');
|
|
19464
|
+
this.formatter.overlay.removeChild(this.topLeftHandle);
|
|
19465
|
+
this.formatter.overlay.removeChild(this.topRightHandle);
|
|
19466
|
+
this.formatter.overlay.removeChild(this.bottomRightHandle);
|
|
19467
|
+
this.formatter.overlay.removeChild(this.bottomLeftHandle);
|
|
19468
|
+
}
|
|
19469
|
+
}, {
|
|
19470
|
+
key: 'createHandle',
|
|
19471
|
+
value: function createHandle(position, cursor) {
|
|
19472
|
+
var box = document.createElement('div');
|
|
19473
|
+
box.classList.add(this.formatter.options.resize.handleClassName);
|
|
19474
|
+
box.setAttribute('data-position', position);
|
|
19475
|
+
box.style.cursor = cursor;
|
|
19476
|
+
|
|
19477
|
+
if (this.formatter.options.resize.handleStyle) {
|
|
19478
|
+
Object.assign(box.style, this.formatter.options.resize.handleStyle);
|
|
19479
|
+
}
|
|
19492
19480
|
|
|
19493
|
-
|
|
19494
|
-
Object.assign(this.topRightHandle.style, { right: handleXOffset, top: handleYOffset });
|
|
19495
|
-
Object.assign(this.bottomRightHandle.style, { right: handleXOffset, bottom: handleYOffset });
|
|
19496
|
-
Object.assign(this.bottomLeftHandle.style, { left: handleXOffset, bottom: handleYOffset });
|
|
19497
|
-
}
|
|
19498
|
-
}, {
|
|
19499
|
-
key: 'setCursor',
|
|
19500
|
-
value: function setCursor(value) {
|
|
19501
|
-
if (document.body) {
|
|
19502
|
-
document.body.style.cursor = value;
|
|
19503
|
-
}
|
|
19481
|
+
box.addEventListener('mousedown', this.onMouseDown);
|
|
19504
19482
|
|
|
19505
|
-
|
|
19506
|
-
|
|
19507
|
-
|
|
19508
|
-
|
|
19509
|
-
|
|
19510
|
-
|
|
19511
|
-
|
|
19512
|
-
|
|
19483
|
+
return box;
|
|
19484
|
+
}
|
|
19485
|
+
}, {
|
|
19486
|
+
key: 'repositionHandles',
|
|
19487
|
+
value: function repositionHandles(handleStyle) {
|
|
19488
|
+
var handleXOffset = '0px';
|
|
19489
|
+
var handleYOffset = '0px';
|
|
19490
|
+
if (handleStyle) {
|
|
19491
|
+
if (handleStyle.width) {
|
|
19492
|
+
handleXOffset = -parseFloat(handleStyle.width) / 2 + 'px';
|
|
19493
|
+
}
|
|
19494
|
+
if (handleStyle.height) {
|
|
19495
|
+
handleYOffset = -parseFloat(handleStyle.height) / 2 + 'px';
|
|
19496
|
+
}
|
|
19497
|
+
}
|
|
19513
19498
|
|
|
19514
|
-
|
|
19515
|
-
|
|
19499
|
+
Object.assign(this.topLeftHandle.style, { left: handleXOffset, top: handleYOffset });
|
|
19500
|
+
Object.assign(this.topRightHandle.style, { right: handleXOffset, top: handleYOffset });
|
|
19501
|
+
Object.assign(this.bottomRightHandle.style, { right: handleXOffset, bottom: handleYOffset });
|
|
19502
|
+
Object.assign(this.bottomLeftHandle.style, { left: handleXOffset, bottom: handleYOffset });
|
|
19503
|
+
}
|
|
19504
|
+
}, {
|
|
19505
|
+
key: 'setCursor',
|
|
19506
|
+
value: function setCursor(value) {
|
|
19507
|
+
if (document.body) {
|
|
19508
|
+
document.body.style.cursor = value;
|
|
19509
|
+
}
|
|
19510
|
+
|
|
19511
|
+
if (this.formatter.currentSpec) {
|
|
19512
|
+
var target = this.formatter.currentSpec.getOverlayElement();
|
|
19513
|
+
if (target) {
|
|
19514
|
+
target.style.cursor = value;
|
|
19515
|
+
}
|
|
19516
|
+
}
|
|
19517
|
+
}
|
|
19518
|
+
}]);
|
|
19519
|
+
|
|
19520
|
+
return ResizeAction;
|
|
19521
|
+
}(_Action3.default);
|
|
19516
19522
|
|
|
19517
|
-
|
|
19523
|
+
ResizeAction.default = ResizeAction$1;
|
|
19524
|
+
return ResizeAction;
|
|
19525
|
+
}
|
|
19518
19526
|
|
|
19519
19527
|
var DeleteAction = {};
|
|
19520
19528
|
|
|
@@ -19621,7 +19629,7 @@
|
|
|
19621
19629
|
|
|
19622
19630
|
var _AlignAction2 = _interopRequireDefault(_AlignAction);
|
|
19623
19631
|
|
|
19624
|
-
var _ResizeAction =
|
|
19632
|
+
var _ResizeAction = requireResizeAction();
|
|
19625
19633
|
|
|
19626
19634
|
var _ResizeAction2 = _interopRequireDefault(_ResizeAction);
|
|
19627
19635
|
|
|
@@ -20114,7 +20122,7 @@
|
|
|
20114
20122
|
}
|
|
20115
20123
|
});
|
|
20116
20124
|
|
|
20117
|
-
var _ResizeAction =
|
|
20125
|
+
var _ResizeAction = requireResizeAction();
|
|
20118
20126
|
|
|
20119
20127
|
Object.defineProperty(exports, 'ResizeAction', {
|
|
20120
20128
|
enumerable: true,
|
|
@@ -20181,7 +20189,7 @@
|
|
|
20181
20189
|
console.warn('移除blotFormatter overlay时出错:', error);
|
|
20182
20190
|
}
|
|
20183
20191
|
};
|
|
20184
|
-
const
|
|
20192
|
+
const handleGlobalClick = (event) => {
|
|
20185
20193
|
var _a;
|
|
20186
20194
|
if (!editor.value)
|
|
20187
20195
|
return;
|
|
@@ -20193,6 +20201,32 @@
|
|
|
20193
20201
|
removeQuillBlotFormatter();
|
|
20194
20202
|
}
|
|
20195
20203
|
};
|
|
20204
|
+
const handleGlobalKeyup = (event) => {
|
|
20205
|
+
var _a;
|
|
20206
|
+
if (event.keyCode !== 46 && event.keyCode !== 8)
|
|
20207
|
+
return;
|
|
20208
|
+
const blotFormatter = (_a = quillRef.value) === null || _a === void 0 ? void 0 : _a.getModule('blotFormatter');
|
|
20209
|
+
if (!blotFormatter || !blotFormatter.currentSpec)
|
|
20210
|
+
return;
|
|
20211
|
+
const target = event.target;
|
|
20212
|
+
if (!editor.value || !editor.value.contains(target)) {
|
|
20213
|
+
event.stopImmediatePropagation();
|
|
20214
|
+
event.preventDefault();
|
|
20215
|
+
return;
|
|
20216
|
+
}
|
|
20217
|
+
const allEditors = document.querySelectorAll('.quill-editor-container');
|
|
20218
|
+
allEditors.forEach(editorElement => {
|
|
20219
|
+
if (editorElement !== editor.value) {
|
|
20220
|
+
const otherQuill = editorElement.__quill;
|
|
20221
|
+
if (otherQuill && otherQuill !== quillRef.value) {
|
|
20222
|
+
const otherBlotFormatter = otherQuill.getModule('blotFormatter');
|
|
20223
|
+
if (otherBlotFormatter && otherBlotFormatter.currentSpec) {
|
|
20224
|
+
otherBlotFormatter.hide();
|
|
20225
|
+
}
|
|
20226
|
+
}
|
|
20227
|
+
}
|
|
20228
|
+
});
|
|
20229
|
+
};
|
|
20196
20230
|
const configureBlotFormatter = () => {
|
|
20197
20231
|
if (!quillRef.value)
|
|
20198
20232
|
return;
|
|
@@ -20236,12 +20270,14 @@
|
|
|
20236
20270
|
}
|
|
20237
20271
|
};
|
|
20238
20272
|
const registerBlotFormatter = () => {
|
|
20273
|
+
var _a;
|
|
20239
20274
|
if (!enableImageResize) {
|
|
20240
20275
|
return;
|
|
20241
20276
|
}
|
|
20242
20277
|
try {
|
|
20243
|
-
Quill.
|
|
20244
|
-
|
|
20278
|
+
if (!((_a = Quill.imports) === null || _a === void 0 ? void 0 : _a['modules/blotFormatter'])) {
|
|
20279
|
+
Quill.register('modules/blotFormatter', BlotFormatter);
|
|
20280
|
+
}
|
|
20245
20281
|
}
|
|
20246
20282
|
catch (error) {
|
|
20247
20283
|
console.warn('注册BlotFormatter模块时出错:', error);
|
|
@@ -20252,12 +20288,16 @@
|
|
|
20252
20288
|
return {};
|
|
20253
20289
|
}
|
|
20254
20290
|
return {
|
|
20255
|
-
|
|
20256
|
-
blotFormatter: true
|
|
20257
|
-
}
|
|
20291
|
+
blotFormatter: {}
|
|
20258
20292
|
};
|
|
20259
20293
|
};
|
|
20294
|
+
vue.onMounted(() => {
|
|
20295
|
+
window.addEventListener('click', handleGlobalClick, true);
|
|
20296
|
+
window.addEventListener('keyup', handleGlobalKeyup, true);
|
|
20297
|
+
});
|
|
20260
20298
|
vue.onBeforeUnmount(() => {
|
|
20299
|
+
window.removeEventListener('click', handleGlobalClick, true);
|
|
20300
|
+
window.removeEventListener('keyup', handleGlobalKeyup, true);
|
|
20261
20301
|
removeQuillBlotFormatter();
|
|
20262
20302
|
});
|
|
20263
20303
|
const setQuill = (quillInstance) => {
|
|
@@ -20266,7 +20306,9 @@
|
|
|
20266
20306
|
return {
|
|
20267
20307
|
quillRef,
|
|
20268
20308
|
setQuill,
|
|
20269
|
-
|
|
20309
|
+
removeQuillBlotFormatter,
|
|
20310
|
+
handleGlobalClick,
|
|
20311
|
+
handleGlobalKeyup,
|
|
20270
20312
|
configureBlotFormatter,
|
|
20271
20313
|
applyImageStyle,
|
|
20272
20314
|
registerBlotFormatter,
|
|
@@ -20332,41 +20374,6 @@
|
|
|
20332
20374
|
};
|
|
20333
20375
|
}
|
|
20334
20376
|
|
|
20335
|
-
function useGlobalClick() {
|
|
20336
|
-
const clickHandlers = vue.ref([]);
|
|
20337
|
-
const handleGlobalClick = (event) => {
|
|
20338
|
-
clickHandlers.value.forEach(handler => {
|
|
20339
|
-
try {
|
|
20340
|
-
handler(event);
|
|
20341
|
-
}
|
|
20342
|
-
catch (error) {
|
|
20343
|
-
console.warn('全局点击事件处理函数执行出错:', error);
|
|
20344
|
-
}
|
|
20345
|
-
});
|
|
20346
|
-
};
|
|
20347
|
-
const addClickHandler = (handler) => {
|
|
20348
|
-
if (typeof handler === 'function' && !clickHandlers.value.includes(handler)) {
|
|
20349
|
-
clickHandlers.value.push(handler);
|
|
20350
|
-
}
|
|
20351
|
-
};
|
|
20352
|
-
const clearClickHandlers = () => {
|
|
20353
|
-
clickHandlers.value = [];
|
|
20354
|
-
};
|
|
20355
|
-
vue.onMounted(() => {
|
|
20356
|
-
window.addEventListener('click', handleGlobalClick);
|
|
20357
|
-
});
|
|
20358
|
-
vue.onBeforeUnmount(() => {
|
|
20359
|
-
window.removeEventListener('click', handleGlobalClick);
|
|
20360
|
-
clearClickHandlers();
|
|
20361
|
-
});
|
|
20362
|
-
return {
|
|
20363
|
-
clickHandlers: clickHandlers.value,
|
|
20364
|
-
addClickHandler,
|
|
20365
|
-
clearClickHandlers,
|
|
20366
|
-
handleGlobalClick
|
|
20367
|
-
};
|
|
20368
|
-
}
|
|
20369
|
-
|
|
20370
20377
|
const boldSVG = `<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="18" height="18" viewBox="0 0 18 18"><g><g style="opacity:0;"><rect x="0" y="0" width="18" height="18" rx="0" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M6.794999938146972,7.7800002288818355L9.045000038146974,7.7800002288818355Q9.855000038146972,7.7800002288818355,10.230000038146972,7.442500128881836Q10.605000038146972,7.105000028881836,10.605000038146972,6.505000128881836Q10.605000038146972,6.114999728881836,10.440000038146973,5.860000628881836Q10.275000138146972,5.6050005288818365,9.929999838146973,5.470000228881836Q9.585000038146973,5.335000028881836,9.045000038146974,5.335000028881836L7.139999938146973,5.335000028881836L7.139999938146973,3.385000228881836L9.045000038146974,3.385000228881836Q10.034999838146973,3.385000228881836,10.852499938146973,3.797500608881836Q11.670000038146974,4.2100000388818355,12.142499938146972,4.922500628881836Q12.614999738146974,5.635000228881836,12.614999738146974,6.505000128881836Q12.614999738146974,7.375000028881836,12.142499938146972,8.042500028881836Q11.670000038146974,8.710000028881836,10.860000138146972,9.070000128881837Q10.050000238146973,9.430000328881835,9.045000038146974,9.430000328881835L6.794999938146972,9.430000328881835L6.794999938146972,7.7800002288818355ZM7.139999938146973,12.550000228881835L9.329999938146972,12.550000228881835Q9.900000138146972,12.550000228881835,10.327499838146974,12.354999528881836Q10.755000138146972,12.159999828881835,10.987500238146973,11.807499928881835Q11.219999838146972,11.454999928881836,11.219999838146972,11.020000428881836Q11.219999838146972,10.600000428881836,10.987500238146973,10.232500028881836Q10.755000138146972,9.864999728881836,10.327499838146974,9.647500028881836Q9.900000138146972,9.430000328881835,9.329999938146972,9.430000328881835L6.975000038146972,9.430000328881835L6.975000038146972,7.7800002288818355L9.329999938146972,7.7800002288818355Q10.349999938146972,7.7800002288818355,11.250000038146972,8.200000328881835Q12.149999638146973,8.620000328881837,12.690000538146972,9.362500228881835Q13.229999538146973,10.104999528881836,13.229999538146973,11.034999828881837Q13.229999538146973,11.949999828881836,12.690000538146972,12.752500528881836Q12.149999638146973,13.555000228881836,11.250000038146972,14.027500228881836Q10.349999938146972,14.500000228881836,9.329999938146972,14.500000228881836L7.139999938146973,14.500000228881836L7.139999938146973,12.550000228881835ZM7.064999938146973,14.500000228881836Q6.284999968146972,14.500000228881836,5.872500058146973,14.095000228881837Q5.460000038146973,13.689999228881836,5.460000038146973,12.895000428881836L5.460000038146973,4.989999728881836Q5.460000038146973,4.195000648881836,5.872500058146973,3.789999958881836Q6.284999968146972,3.385000228881836,7.064999938146973,3.385000228881836L7.469999838146973,3.385000228881836L7.469999838146973,14.500000228881836L7.064999938146973,14.500000228881836Z" fill="#555555" fill-opacity="1"/></g></g></svg>`;
|
|
20371
20378
|
const italicSVG = `<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="18" height="18" viewBox="0 0 18 18"><g><g style="opacity:0;"><rect x="0" y="0" width="18" height="18" rx="0" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M8,3Q7.9015086,3,7.8049095,3.019214718Q7.7083106,3.038429435,7.6173165,3.076120459Q7.5263224,3.11381148,7.4444296,3.16853037Q7.3625371,3.2232492600000002,7.2928932,3.2928932Q7.2232492,3.36253715,7.1685302,3.4444297600000002Q7.1138113999999995,3.52632231,7.0761204,3.61731648Q7.0384293,3.70831072,7.0192146,3.80490965Q6.99999994,3.90150857,7,4Q6.99999994,4.0984913,7.0192146,4.1950902Q7.0384293,4.291689,7.0761204,4.3826833Q7.1138113999999995,4.4736774,7.1685302,4.5555699Q7.2232492,4.6374626,7.2928932,4.7071065999999995Q7.3625371,4.7767504,7.4444296,4.8314693Q7.5263224,4.8861883,7.6173165,4.9238794Q7.7083106,4.9615704,7.8049096,4.9807851Q7.9015086,4.9999999,8,5L9.137146,5L8,13L7,13Q6.90150857,13,6.80490965,13.019215Q6.70831072,13.038429,6.6173164799999995,13.07612Q6.52632231,13.113811,6.44442973,13.16853Q6.36253715,13.223249,6.2928932,13.292892Q6.22324926,13.362536,6.16853037,13.444429Q6.11381148,13.526321,6.076120459,13.617315Q6.038429435,13.708309,6.019214718,13.804909Q6,13.901508,6,14Q6,14.098491,6.019214718,14.195089Q6.038429435,14.291689,6.076120459,14.382683Q6.11381148,14.473677,6.16853037,14.555569Q6.22324926,14.637462,6.2928932,14.707106Q6.36253715,14.77675,6.44442976,14.831469Q6.52632231,14.886187,6.6173164799999995,14.923878Q6.70831072,14.961569,6.80490965,14.980784Q6.90150857,15,7,15L11,15Q11.0984912,15,11.1950898,14.980784Q11.2916889,14.961569,11.382682800000001,14.923878Q11.473677200000001,14.886187,11.5555696,14.831469Q11.6374626,14.77675,11.7071066,14.707106Q11.7767506,14.637462,11.8314691,14.555569Q11.8861876,14.473677,11.9238791,14.382683Q11.9615698,14.291689,11.9807849,14.195089Q12,14.098491,12,14Q12,13.901508,11.9807849,13.804909Q11.9615698,13.708309,11.9238791,13.617315Q11.8861876,13.526321,11.8314691,13.444428Q11.7767506,13.362536,11.7071066,13.292892Q11.6374626,13.223249,11.5555701,13.16853Q11.473677200000001,13.113811,11.382682800000001,13.07612Q11.2916889,13.038429,11.1950903,13.019215Q11.0984912,13,11,13L9.8626451,13L11,5L12,5Q12.0984907,4.9999999,12.1950893,4.9807851Q12.2916884,4.9615703,12.382682800000001,4.9238793Q12.4736767,4.8861883,12.5555696,4.8314693Q12.6374621,4.7767504,12.7071061,4.7071065999999995Q12.776750100000001,4.6374626,12.831468600000001,4.5555699Q12.8861876,4.4736774,12.9238787,4.3826833Q12.9615698,4.291689,12.9807849,4.1950902Q12.999999500000001,4.0984913,13,4Q12.999999500000001,3.90150857,12.980784400000001,3.80490965Q12.9615698,3.70831072,12.9238787,3.61731648Q12.8861876,3.52632231,12.8314691,3.44442973Q12.7767506,3.36253715,12.7071066,3.2928932Q12.6374626,3.2232492600000002,12.5555696,3.16853037Q12.4736767,3.11381148,12.382682800000001,3.076120459Q12.2916884,3.038429435,12.1950898,3.019214718Q12.0984907,3,12,3L8,3Z" fill-rule="evenodd" fill="#555555" fill-opacity="1"/></g></g></svg>`;
|
|
20372
20379
|
const underlineSVG = `<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill="none" version="1.1" width="18" height="18" viewBox="0 0 18 18"><g><g style="opacity:0;"><rect x="0" y="0" width="18" height="18" rx="0" fill="#FFFFFF" fill-opacity="1"/></g><g><path d="M5.000117301940918,14.500022450683593L5.000117301940918,14.500022450683593Q5.000117301940918,14.450777450683594,5.009724660740918,14.402477450683593Q5.019332019940918,14.354177450683594,5.038177530940918,14.308679450683593Q5.057023040940918,14.263182450683594,5.084382488940918,14.222236450683594Q5.111741931940918,14.181290450683594,5.146563901940918,14.146469450683593Q5.181385871940918,14.111646450683594,5.222332181940918,14.084286450683594Q5.263278451940918,14.056927450683594,5.308775541940918,14.038082450683595Q5.354272661940918,14.019237450683594,5.402572121940918,14.009630450683593Q5.450871581940918,14.000022450683593,5.500117301940918,14.000022450683593L12.500117301940918,14.000022450683593Q12.549362201940918,14.000022450683593,12.597661501940918,14.009629450683594Q12.645960801940918,14.019237450683594,12.691457701940918,14.038082450683595Q12.736954701940917,14.056926450683594,12.777901601940918,14.084285450683593Q12.818847701940918,14.111645450683593,12.853670101940917,14.146468450683594Q12.888492101940919,14.181289450683593,12.915851601940918,14.222235450683593Q12.943210601940919,14.263181450683593,12.962056201940918,14.308679450683593Q12.980901701940919,14.354177450683594,12.990509501940917,14.402477450683593Q13.00011680194092,14.450777450683594,13.000117301940918,14.500022450683593L13.000117301940918,14.500022450683593Q13.00011680194092,14.549268450683593,12.990509001940918,14.597566450683594Q12.980901701940919,14.645866450683593,12.962056201940918,14.691363450683594Q12.943210601940919,14.736860450683594,12.915851601940918,14.777807450683595Q12.888492101940919,14.818753450683595,12.853670101940917,14.853575450683593Q12.818847701940918,14.888397450683593,12.777901601940918,14.915756450683594Q12.736954701940917,14.943115450683594,12.691457701940918,14.961960450683593Q12.645960801940918,14.980806450683593,12.597661501940918,14.990413450683594Q12.549362201940918,15.000021450683594,12.500117301940918,15.000022450683593L5.500117301940918,15.000022450683593Q5.450871581940918,15.000021450683594,5.402572121940918,14.990414450683593Q5.354272661940918,14.980806450683593,5.308775541940918,14.961960450683593Q5.263278451940918,14.943115450683594,5.222332161940918,14.915756450683594Q5.181385871940918,14.888397450683593,5.146563901940918,14.853574450683594Q5.111741931940918,14.818752450683593,5.084382488940918,14.777806450683594Q5.057023040940918,14.736860450683594,5.038177530940918,14.691363450683594Q5.019332019940918,14.645866450683593,5.009724660740918,14.597567450683593Q5.000117301940918,14.549268450683593,5.000117301940918,14.500022450683593ZM5.045039176940918,3.548906330683594Q5.045039176940918,3.1015625006835936,5.283039211940918,2.8637809706835937Q5.521039131940918,2.6259994506835938,5.969039081940918,2.6259994506835938L5.997039201940918,2.6259994506835938Q6.445039201940918,2.6259994506835938,6.6830393019409176,2.8637809706835937Q6.921039201940918,3.1015625006835936,6.921039201940918,3.548906330683594L6.921039201940918,9.010000250683593Q6.921039201940918,9.737999950683594,7.180039401940919,10.255999550683594Q7.439039201940918,10.774000150683595,7.908039101940918,11.053999950683593Q8.377039001940918,11.333999650683594,8.993039101940917,11.333999650683594Q9.609039301940918,11.333999650683594,10.085039101940918,11.060999850683594Q10.561039401940917,10.788000150683594,10.820039301940918,10.263000450683593Q11.079039101940918,9.737999950683594,11.079039101940918,9.010000250683593L11.079039101940918,3.548906330683594Q11.079039101940918,3.1015625006835936,11.317039501940918,2.8637809706835937Q11.555039401940917,2.6259994506835938,12.003039401940917,2.6259994506835938L12.031039201940917,2.6259994506835938Q12.479039201940918,2.6259994506835938,12.717039101940918,2.8637809706835937Q12.955039001940918,3.1015625006835936,12.955039001940918,3.548906330683594L12.955039001940918,9.010000250683593Q12.955039001940918,10.144000050683594,12.416039501940919,11.095999750683594Q11.877039901940918,12.048000350683594,10.967039101940918,12.600999850683595Q10.057039301940918,13.154000450683593,8.993039101940917,13.154000450683593Q7.929039001940918,13.154000450683593,7.0190392019409185,12.600999850683595Q6.109039201940918,12.048000350683594,5.577039361940918,11.095999750683594Q5.045039176940918,10.144000050683594,5.045039176940918,9.010000250683593L5.045039176940918,3.548906330683594Z" fill="#555555" fill-opacity="1"/></g></g></svg>`;
|
|
@@ -20466,9 +20473,15 @@
|
|
|
20466
20473
|
const canUseLink = vue.ref(false);
|
|
20467
20474
|
const linkPosition = vue.ref({ top: 0, left: 0 });
|
|
20468
20475
|
const savedRange = vue.ref(null);
|
|
20469
|
-
const { setQuill,
|
|
20476
|
+
const { setQuill, removeQuillBlotFormatter, configureBlotFormatter, applyImageStyle, registerBlotFormatter, getBlotFormatterConfig } = useBlotFormatter(editor, props.enableImageResize);
|
|
20470
20477
|
const { setQuill: setLinkQuill, setHandleCustomLink, addLinkClickListener } = useLinkClick(editor);
|
|
20471
|
-
|
|
20478
|
+
vue.onMounted(() => {
|
|
20479
|
+
initialize();
|
|
20480
|
+
});
|
|
20481
|
+
vue.onBeforeUnmount(() => {
|
|
20482
|
+
removeQuillBlotFormatter();
|
|
20483
|
+
quill = null;
|
|
20484
|
+
});
|
|
20472
20485
|
let quill;
|
|
20473
20486
|
let options;
|
|
20474
20487
|
const editorWrapClass = vue.computed(() => {
|
|
@@ -20566,6 +20579,55 @@
|
|
|
20566
20579
|
}
|
|
20567
20580
|
}
|
|
20568
20581
|
};
|
|
20582
|
+
const initialize = () => {
|
|
20583
|
+
var _a;
|
|
20584
|
+
if (!editor.value)
|
|
20585
|
+
return;
|
|
20586
|
+
if (props.enableImageResize) {
|
|
20587
|
+
registerBlotFormatter();
|
|
20588
|
+
}
|
|
20589
|
+
options = composeOptions();
|
|
20590
|
+
setIcons();
|
|
20591
|
+
quill = new Quill(editor.value, options);
|
|
20592
|
+
setQuill(quill);
|
|
20593
|
+
setLinkQuill(quill);
|
|
20594
|
+
controlToolbarVisible(false);
|
|
20595
|
+
setContents(props.content);
|
|
20596
|
+
quill.on('text-change', handleTextChange);
|
|
20597
|
+
quill.on('selection-change', handleSelectionChange);
|
|
20598
|
+
quill.on('editor-change', handleEditorChange);
|
|
20599
|
+
quill.on('text-change', updateHistoryState);
|
|
20600
|
+
quill.on('selection-change', updateHistoryState);
|
|
20601
|
+
addLinkClickListener();
|
|
20602
|
+
updateHistoryState();
|
|
20603
|
+
const toolbarDom = (_a = quill.getModule('toolbar')) === null || _a === void 0 ? void 0 : _a.container;
|
|
20604
|
+
vue.nextTick(() => {
|
|
20605
|
+
const customLinkBtn = toolbarDom.querySelector('.ql-customLink');
|
|
20606
|
+
if (customLinkBtn) {
|
|
20607
|
+
customLinkBtn.addEventListener('click', (e) => {
|
|
20608
|
+
e.preventDefault();
|
|
20609
|
+
e.stopPropagation();
|
|
20610
|
+
if (canUseLink.value) {
|
|
20611
|
+
handleCustomLink(true);
|
|
20612
|
+
}
|
|
20613
|
+
});
|
|
20614
|
+
}
|
|
20615
|
+
});
|
|
20616
|
+
const tooltipInput = toolbarDom.querySelector('.ql-tooltip input');
|
|
20617
|
+
if (tooltipInput) {
|
|
20618
|
+
vue.nextTick(() => {
|
|
20619
|
+
tooltipInput.setAttribute('placeholder', props.placeholder);
|
|
20620
|
+
});
|
|
20621
|
+
}
|
|
20622
|
+
if (!props.needCollapse && props.toolbarStyle) {
|
|
20623
|
+
applyToolbarStyle();
|
|
20624
|
+
}
|
|
20625
|
+
applyEditorStyle();
|
|
20626
|
+
if (props.enableImageResize) {
|
|
20627
|
+
configureBlotFormatter();
|
|
20628
|
+
}
|
|
20629
|
+
ctx.emit('ready', quill);
|
|
20630
|
+
};
|
|
20569
20631
|
const composeOptions = () => {
|
|
20570
20632
|
const clientOptions = {};
|
|
20571
20633
|
clientOptions.theme = 'snow';
|
|
@@ -20618,7 +20680,7 @@
|
|
|
20618
20680
|
if (props.enableImageResize) {
|
|
20619
20681
|
const blotFormatterConfig = getBlotFormatterConfig();
|
|
20620
20682
|
if (Object.keys(blotFormatterConfig).length > 0) {
|
|
20621
|
-
clientOptions.modules = Object.assign({}, clientOptions.modules, blotFormatterConfig
|
|
20683
|
+
clientOptions.modules = Object.assign({}, clientOptions.modules, blotFormatterConfig);
|
|
20622
20684
|
}
|
|
20623
20685
|
}
|
|
20624
20686
|
return Object.assign({}, props.globalOptions, props.options, clientOptions);
|
|
@@ -20684,6 +20746,9 @@
|
|
|
20684
20746
|
if (isEditorFocus.value) {
|
|
20685
20747
|
controlToolbarVisible(true);
|
|
20686
20748
|
}
|
|
20749
|
+
else {
|
|
20750
|
+
controlToolbarVisible(false);
|
|
20751
|
+
}
|
|
20687
20752
|
ctx.emit('selectionChange', { range, oldRange, source });
|
|
20688
20753
|
};
|
|
20689
20754
|
vue.watch(isEditorFocus, (focus) => {
|
|
@@ -20781,6 +20846,14 @@
|
|
|
20781
20846
|
const focus = () => {
|
|
20782
20847
|
quill === null || quill === void 0 ? void 0 : quill.focus();
|
|
20783
20848
|
};
|
|
20849
|
+
const reinit = () => {
|
|
20850
|
+
vue.nextTick(() => {
|
|
20851
|
+
var _a;
|
|
20852
|
+
if (!ctx.slots.toolbar && quill)
|
|
20853
|
+
(_a = quill.getModule('toolbar')) === null || _a === void 0 ? void 0 : _a.container.remove();
|
|
20854
|
+
initialize();
|
|
20855
|
+
});
|
|
20856
|
+
};
|
|
20784
20857
|
const moreToolbarToolClick = (tool) => {
|
|
20785
20858
|
var _a, _b;
|
|
20786
20859
|
if (!quill)
|
|
@@ -20891,81 +20964,6 @@
|
|
|
20891
20964
|
if (quill)
|
|
20892
20965
|
quill.enable(newValue);
|
|
20893
20966
|
});
|
|
20894
|
-
const initialize = () => {
|
|
20895
|
-
var _a;
|
|
20896
|
-
if (!editor.value)
|
|
20897
|
-
return;
|
|
20898
|
-
if (props.enableImageResize) {
|
|
20899
|
-
registerBlotFormatter();
|
|
20900
|
-
}
|
|
20901
|
-
options = composeOptions();
|
|
20902
|
-
setIcons();
|
|
20903
|
-
quill = new Quill(editor.value, options);
|
|
20904
|
-
setQuill(quill);
|
|
20905
|
-
setLinkQuill(quill);
|
|
20906
|
-
controlToolbarVisible(false);
|
|
20907
|
-
setContents(props.content);
|
|
20908
|
-
quill.on('text-change', handleTextChange);
|
|
20909
|
-
quill.on('selection-change', handleSelectionChange);
|
|
20910
|
-
quill.on('editor-change', handleEditorChange);
|
|
20911
|
-
quill.on('text-change', updateHistoryState);
|
|
20912
|
-
quill.on('selection-change', updateHistoryState);
|
|
20913
|
-
addLinkClickListener();
|
|
20914
|
-
const toolbarClickHandler = (event) => {
|
|
20915
|
-
const target = event.target;
|
|
20916
|
-
if (target.closest('.quill-editor-container')) {
|
|
20917
|
-
return;
|
|
20918
|
-
}
|
|
20919
|
-
controlToolbarVisible(false);
|
|
20920
|
-
};
|
|
20921
|
-
addClickHandler(toolbarClickHandler);
|
|
20922
|
-
addClickHandler(handleBlotFormatterClick);
|
|
20923
|
-
addClickHandler(() => {
|
|
20924
|
-
handleCustomLink(false);
|
|
20925
|
-
});
|
|
20926
|
-
updateHistoryState();
|
|
20927
|
-
const toolbarDom = (_a = quill.getModule('toolbar')) === null || _a === void 0 ? void 0 : _a.container;
|
|
20928
|
-
vue.nextTick(() => {
|
|
20929
|
-
const customLinkBtn = toolbarDom.querySelector('.ql-customLink');
|
|
20930
|
-
if (customLinkBtn) {
|
|
20931
|
-
customLinkBtn.addEventListener('click', (e) => {
|
|
20932
|
-
e.preventDefault();
|
|
20933
|
-
e.stopPropagation();
|
|
20934
|
-
if (canUseLink.value) {
|
|
20935
|
-
handleCustomLink(true);
|
|
20936
|
-
}
|
|
20937
|
-
});
|
|
20938
|
-
}
|
|
20939
|
-
});
|
|
20940
|
-
const tooltipInput = toolbarDom.querySelector('.ql-tooltip input');
|
|
20941
|
-
if (tooltipInput) {
|
|
20942
|
-
vue.nextTick(() => {
|
|
20943
|
-
tooltipInput.setAttribute('placeholder', props.placeholder);
|
|
20944
|
-
});
|
|
20945
|
-
}
|
|
20946
|
-
if (!props.needCollapse && props.toolbarStyle) {
|
|
20947
|
-
applyToolbarStyle();
|
|
20948
|
-
}
|
|
20949
|
-
applyEditorStyle();
|
|
20950
|
-
if (props.enableImageResize) {
|
|
20951
|
-
configureBlotFormatter();
|
|
20952
|
-
}
|
|
20953
|
-
ctx.emit('ready', quill);
|
|
20954
|
-
};
|
|
20955
|
-
const reinit = () => {
|
|
20956
|
-
vue.nextTick(() => {
|
|
20957
|
-
var _a;
|
|
20958
|
-
if (!ctx.slots.toolbar && quill)
|
|
20959
|
-
(_a = quill.getModule('toolbar')) === null || _a === void 0 ? void 0 : _a.container.remove();
|
|
20960
|
-
initialize();
|
|
20961
|
-
});
|
|
20962
|
-
};
|
|
20963
|
-
vue.onMounted(() => {
|
|
20964
|
-
initialize();
|
|
20965
|
-
});
|
|
20966
|
-
vue.onBeforeUnmount(() => {
|
|
20967
|
-
quill = null;
|
|
20968
|
-
});
|
|
20969
20967
|
return {
|
|
20970
20968
|
editor,
|
|
20971
20969
|
editorWrapClass,
|
|
@@ -20997,7 +20995,9 @@
|
|
|
20997
20995
|
render() {
|
|
20998
20996
|
return [
|
|
20999
20997
|
vue.h('div', {
|
|
21000
|
-
class: this.editorWrapClass
|
|
20998
|
+
class: this.editorWrapClass, onClick: () => {
|
|
20999
|
+
this.handleCustomLink(false);
|
|
21000
|
+
}
|
|
21001
21001
|
}, [
|
|
21002
21002
|
this.$props.needCollapse && this.$props.editorKey && vue.h(MoreToolbar, {
|
|
21003
21003
|
editorKey: String(this.$props.editorKey),
|