tinymce-rails 4.9.8 → 4.9.10
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.
- checksums.yaml +4 -4
- data/app/assets/source/tinymce/tinymce.js +447 -347
- data/lib/tinymce/rails/version.rb +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/media/plugin.js +1 -1
- data/vendor/assets/javascripts/tinymce/plugins/table/plugin.js +1 -1
- data/vendor/assets/javascripts/tinymce/skins/lightgray/content.inline.min.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/lightgray/content.min.css +1 -1
- data/vendor/assets/javascripts/tinymce/tinymce.js +2 -2
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6fa577ba4bb17221c1c259c4a18147670dcb81722b0202b28c08913a4d872751
|
4
|
+
data.tar.gz: 86ec35ae2896adbad31380729974a58e08d953bedb61223dccb2ebf16d81e7d8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 25c329bdd1abb59169c61009a187ccb20345f3ec97cf57f0babbf19bde9a1eb9bf4af731be4916c0615e0ff0dcacefec12223198290e9fb54933f76bb03b8dcf
|
7
|
+
data.tar.gz: 8ac5274d54ef0df889162f70f8fa62164dd631d5c92744a9ca47a8abb56aa63022acabb785e58747be3284b3296867293d75ad9ce505f32b7c8a66a1aab6432f
|
@@ -1,4 +1,4 @@
|
|
1
|
-
// 4.9.
|
1
|
+
// 4.9.10 (2020-04-23)
|
2
2
|
(function () {
|
3
3
|
(function (domGlobals) {
|
4
4
|
'use strict';
|
@@ -3721,6 +3721,17 @@
|
|
3721
3721
|
return r.length > 0;
|
3722
3722
|
});
|
3723
3723
|
};
|
3724
|
+
var getAllRaw = function (element) {
|
3725
|
+
var css = {};
|
3726
|
+
var dom = element.dom();
|
3727
|
+
if (isSupported(dom)) {
|
3728
|
+
for (var i = 0; i < dom.style.length; i++) {
|
3729
|
+
var ruleName = dom.style.item(i);
|
3730
|
+
css[ruleName] = dom.style[ruleName];
|
3731
|
+
}
|
3732
|
+
}
|
3733
|
+
return css;
|
3734
|
+
};
|
3724
3735
|
|
3725
3736
|
var Immutable = function () {
|
3726
3737
|
var fields = [];
|
@@ -6653,12 +6664,14 @@
|
|
6653
6664
|
var node;
|
6654
6665
|
var container = doc.createElement('div');
|
6655
6666
|
var frag = doc.createDocumentFragment();
|
6667
|
+
frag.appendChild(container);
|
6656
6668
|
if (html) {
|
6657
6669
|
container.innerHTML = html;
|
6658
6670
|
}
|
6659
6671
|
while (node = container.firstChild) {
|
6660
6672
|
frag.appendChild(node);
|
6661
6673
|
}
|
6674
|
+
frag.removeChild(container);
|
6662
6675
|
return frag;
|
6663
6676
|
};
|
6664
6677
|
var remove = function (node, keepChildren) {
|
@@ -7790,6 +7803,18 @@
|
|
7790
7803
|
};
|
7791
7804
|
};
|
7792
7805
|
|
7806
|
+
var __assign = function () {
|
7807
|
+
__assign = Object.assign || function __assign(t) {
|
7808
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
7809
|
+
s = arguments[i];
|
7810
|
+
for (var p in s)
|
7811
|
+
if (Object.prototype.hasOwnProperty.call(s, p))
|
7812
|
+
t[p] = s[p];
|
7813
|
+
}
|
7814
|
+
return t;
|
7815
|
+
};
|
7816
|
+
return __assign.apply(this, arguments);
|
7817
|
+
};
|
7793
7818
|
function __rest(s, e) {
|
7794
7819
|
var t = {};
|
7795
7820
|
for (var p in s)
|
@@ -7802,6 +7827,14 @@
|
|
7802
7827
|
}
|
7803
7828
|
return t;
|
7804
7829
|
}
|
7830
|
+
function __spreadArrays() {
|
7831
|
+
for (var s = 0, i = 0, il = arguments.length; i < il; i++)
|
7832
|
+
s += arguments[i].length;
|
7833
|
+
for (var r = Array(s), k = 0, i = 0; i < il; i++)
|
7834
|
+
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
|
7835
|
+
r[k] = a[j];
|
7836
|
+
return r;
|
7837
|
+
}
|
7805
7838
|
|
7806
7839
|
var unique = 0;
|
7807
7840
|
var generate = function (prefix) {
|
@@ -16570,106 +16603,355 @@
|
|
16570
16603
|
};
|
16571
16604
|
}
|
16572
16605
|
|
16573
|
-
var
|
16574
|
-
|
16575
|
-
|
16576
|
-
|
16577
|
-
|
16578
|
-
|
16579
|
-
|
16580
|
-
|
16581
|
-
|
16582
|
-
|
16606
|
+
var VK = {
|
16607
|
+
BACKSPACE: 8,
|
16608
|
+
DELETE: 46,
|
16609
|
+
DOWN: 40,
|
16610
|
+
ENTER: 13,
|
16611
|
+
LEFT: 37,
|
16612
|
+
RIGHT: 39,
|
16613
|
+
SPACEBAR: 32,
|
16614
|
+
TAB: 9,
|
16615
|
+
UP: 38,
|
16616
|
+
END: 35,
|
16617
|
+
HOME: 36,
|
16618
|
+
modifierPressed: function (e) {
|
16619
|
+
return e.shiftKey || e.ctrlKey || e.altKey || this.metaKeyPressed(e);
|
16620
|
+
},
|
16621
|
+
metaKeyPressed: function (e) {
|
16622
|
+
return Env.mac ? e.metaKey : e.ctrlKey && !e.altKey;
|
16623
|
+
}
|
16583
16624
|
};
|
16584
|
-
|
16585
|
-
|
16586
|
-
|
16587
|
-
|
16625
|
+
|
16626
|
+
var getNodeClientRects = function (node) {
|
16627
|
+
var toArrayWithNode = function (clientRects) {
|
16628
|
+
return map(clientRects, function (clientRect) {
|
16629
|
+
clientRect = clone$1(clientRect);
|
16630
|
+
clientRect.node = node;
|
16631
|
+
return clientRect;
|
16632
|
+
});
|
16588
16633
|
};
|
16634
|
+
if (NodeType.isElement(node)) {
|
16635
|
+
return toArrayWithNode(node.getClientRects());
|
16636
|
+
}
|
16637
|
+
if (NodeType.isText(node)) {
|
16638
|
+
var rng = node.ownerDocument.createRange();
|
16639
|
+
rng.setStart(node, 0);
|
16640
|
+
rng.setEnd(node, node.data.length);
|
16641
|
+
return toArrayWithNode(rng.getClientRects());
|
16642
|
+
}
|
16589
16643
|
};
|
16590
|
-
var
|
16591
|
-
|
16592
|
-
|
16593
|
-
|
16594
|
-
top: body.scrollTop
|
16595
|
-
} : {
|
16596
|
-
left: 0,
|
16597
|
-
top: 0
|
16598
|
-
};
|
16644
|
+
var getClientRects = function (node) {
|
16645
|
+
return foldl(node, function (result, node) {
|
16646
|
+
return result.concat(getNodeClientRects(node));
|
16647
|
+
}, []);
|
16599
16648
|
};
|
16600
|
-
|
16601
|
-
|
16602
|
-
|
16603
|
-
|
16604
|
-
|
16605
|
-
|
16606
|
-
|
16607
|
-
|
16608
|
-
|
16609
|
-
|
16610
|
-
|
16649
|
+
|
16650
|
+
var VDirection;
|
16651
|
+
(function (VDirection) {
|
16652
|
+
VDirection[VDirection['Up'] = -1] = 'Up';
|
16653
|
+
VDirection[VDirection['Down'] = 1] = 'Down';
|
16654
|
+
}(VDirection || (VDirection = {})));
|
16655
|
+
var findUntil = function (direction, root, predicateFn, node) {
|
16656
|
+
while (node = findNode(node, direction, isEditableCaretCandidate, root)) {
|
16657
|
+
if (predicateFn(node)) {
|
16658
|
+
return;
|
16659
|
+
}
|
16660
|
+
}
|
16611
16661
|
};
|
16612
|
-
var
|
16613
|
-
|
16614
|
-
|
16615
|
-
|
16616
|
-
|
16617
|
-
|
16618
|
-
|
16619
|
-
|
16662
|
+
var walkUntil = function (direction, isAboveFn, isBeflowFn, root, predicateFn, caretPosition) {
|
16663
|
+
var line = 0, node;
|
16664
|
+
var result = [];
|
16665
|
+
var targetClientRect;
|
16666
|
+
var add = function (node) {
|
16667
|
+
var i, clientRect, clientRects;
|
16668
|
+
clientRects = getClientRects([node]);
|
16669
|
+
if (direction === -1) {
|
16670
|
+
clientRects = clientRects.reverse();
|
16671
|
+
}
|
16672
|
+
for (i = 0; i < clientRects.length; i++) {
|
16673
|
+
clientRect = clientRects[i];
|
16674
|
+
if (isBeflowFn(clientRect, targetClientRect)) {
|
16675
|
+
continue;
|
16676
|
+
}
|
16677
|
+
if (result.length > 0 && isAboveFn(clientRect, ArrUtils.last(result))) {
|
16678
|
+
line++;
|
16679
|
+
}
|
16680
|
+
clientRect.line = line;
|
16681
|
+
if (predicateFn(clientRect)) {
|
16682
|
+
return true;
|
16683
|
+
}
|
16684
|
+
result.push(clientRect);
|
16685
|
+
}
|
16686
|
+
};
|
16687
|
+
targetClientRect = ArrUtils.last(caretPosition.getClientRects());
|
16688
|
+
if (!targetClientRect) {
|
16689
|
+
return result;
|
16620
16690
|
}
|
16621
|
-
|
16622
|
-
|
16623
|
-
|
16691
|
+
node = caretPosition.getNode();
|
16692
|
+
add(node);
|
16693
|
+
findUntil(direction, root, add, node);
|
16694
|
+
return result;
|
16695
|
+
};
|
16696
|
+
var aboveLineNumber = function (lineNumber, clientRect) {
|
16697
|
+
return clientRect.line > lineNumber;
|
16698
|
+
};
|
16699
|
+
var isLineNumber = function (lineNumber, clientRect) {
|
16700
|
+
return clientRect.line === lineNumber;
|
16701
|
+
};
|
16702
|
+
var upUntil = curry(walkUntil, VDirection.Up, isAbove, isBelow);
|
16703
|
+
var downUntil = curry(walkUntil, VDirection.Down, isBelow, isAbove);
|
16704
|
+
var positionsUntil = function (direction, root, predicateFn, node) {
|
16705
|
+
var caretWalker = CaretWalker(root);
|
16706
|
+
var walkFn, isBelowFn, isAboveFn, caretPosition;
|
16707
|
+
var result = [];
|
16708
|
+
var line = 0, clientRect, targetClientRect;
|
16709
|
+
var getClientRect = function (caretPosition) {
|
16710
|
+
if (direction === 1) {
|
16711
|
+
return ArrUtils.last(caretPosition.getClientRects());
|
16712
|
+
}
|
16713
|
+
return ArrUtils.last(caretPosition.getClientRects());
|
16624
16714
|
};
|
16715
|
+
if (direction === 1) {
|
16716
|
+
walkFn = caretWalker.next;
|
16717
|
+
isBelowFn = isBelow;
|
16718
|
+
isAboveFn = isAbove;
|
16719
|
+
caretPosition = CaretPosition$1.after(node);
|
16720
|
+
} else {
|
16721
|
+
walkFn = caretWalker.prev;
|
16722
|
+
isBelowFn = isAbove;
|
16723
|
+
isAboveFn = isBelow;
|
16724
|
+
caretPosition = CaretPosition$1.before(node);
|
16725
|
+
}
|
16726
|
+
targetClientRect = getClientRect(caretPosition);
|
16727
|
+
do {
|
16728
|
+
if (!caretPosition.isVisible()) {
|
16729
|
+
continue;
|
16730
|
+
}
|
16731
|
+
clientRect = getClientRect(caretPosition);
|
16732
|
+
if (isAboveFn(clientRect, targetClientRect)) {
|
16733
|
+
continue;
|
16734
|
+
}
|
16735
|
+
if (result.length > 0 && isBelowFn(clientRect, ArrUtils.last(result))) {
|
16736
|
+
line++;
|
16737
|
+
}
|
16738
|
+
clientRect = clone$1(clientRect);
|
16739
|
+
clientRect.position = caretPosition;
|
16740
|
+
clientRect.line = line;
|
16741
|
+
if (predicateFn(clientRect)) {
|
16742
|
+
return result;
|
16743
|
+
}
|
16744
|
+
result.push(clientRect);
|
16745
|
+
} while (caretPosition = walkFn(caretPosition));
|
16746
|
+
return result;
|
16625
16747
|
};
|
16626
|
-
var
|
16627
|
-
return {
|
16628
|
-
|
16629
|
-
pageY: mousePosition.top - bodyPosition.top + scrollPosition.top
|
16748
|
+
var isAboveLine = function (lineNumber) {
|
16749
|
+
return function (clientRect) {
|
16750
|
+
return aboveLineNumber(lineNumber, clientRect);
|
16630
16751
|
};
|
16631
16752
|
};
|
16632
|
-
var
|
16633
|
-
return
|
16753
|
+
var isLine = function (lineNumber) {
|
16754
|
+
return function (clientRect) {
|
16755
|
+
return isLineNumber(lineNumber, clientRect);
|
16756
|
+
};
|
16634
16757
|
};
|
16635
|
-
var MousePosition = { calc: calc };
|
16636
16758
|
|
16637
|
-
var isContentEditableFalse$7 = NodeType.isContentEditableFalse
|
16638
|
-
var
|
16639
|
-
|
16759
|
+
var isContentEditableFalse$7 = NodeType.isContentEditableFalse;
|
16760
|
+
var findNode$1 = findNode;
|
16761
|
+
var distanceToRectLeft = function (clientRect, clientX) {
|
16762
|
+
return Math.abs(clientRect.left - clientX);
|
16640
16763
|
};
|
16641
|
-
var
|
16642
|
-
|
16643
|
-
return false;
|
16644
|
-
}
|
16645
|
-
if (isContentEditableFalse$7(targetElement)) {
|
16646
|
-
return false;
|
16647
|
-
}
|
16648
|
-
return true;
|
16764
|
+
var distanceToRectRight = function (clientRect, clientX) {
|
16765
|
+
return Math.abs(clientRect.right - clientX);
|
16649
16766
|
};
|
16650
|
-
var
|
16651
|
-
|
16652
|
-
cloneElm.removeAttribute('data-mce-selected');
|
16653
|
-
return cloneElm;
|
16767
|
+
var isInside = function (clientX, clientRect) {
|
16768
|
+
return clientX >= clientRect.left && clientX <= clientRect.right;
|
16654
16769
|
};
|
16655
|
-
var
|
16656
|
-
|
16657
|
-
|
16658
|
-
|
16659
|
-
|
16660
|
-
|
16661
|
-
|
16662
|
-
|
16663
|
-
|
16664
|
-
|
16665
|
-
|
16666
|
-
|
16770
|
+
var findClosestClientRect = function (clientRects, clientX) {
|
16771
|
+
return ArrUtils.reduce(clientRects, function (oldClientRect, clientRect) {
|
16772
|
+
var oldDistance, newDistance;
|
16773
|
+
oldDistance = Math.min(distanceToRectLeft(oldClientRect, clientX), distanceToRectRight(oldClientRect, clientX));
|
16774
|
+
newDistance = Math.min(distanceToRectLeft(clientRect, clientX), distanceToRectRight(clientRect, clientX));
|
16775
|
+
if (isInside(clientX, clientRect)) {
|
16776
|
+
return clientRect;
|
16777
|
+
}
|
16778
|
+
if (isInside(clientX, oldClientRect)) {
|
16779
|
+
return oldClientRect;
|
16780
|
+
}
|
16781
|
+
if (newDistance === oldDistance && isContentEditableFalse$7(clientRect.node)) {
|
16782
|
+
return clientRect;
|
16783
|
+
}
|
16784
|
+
if (newDistance < oldDistance) {
|
16785
|
+
return clientRect;
|
16786
|
+
}
|
16787
|
+
return oldClientRect;
|
16667
16788
|
});
|
16668
|
-
|
16669
|
-
|
16670
|
-
|
16671
|
-
|
16672
|
-
|
16789
|
+
};
|
16790
|
+
var walkUntil$1 = function (direction, root, predicateFn, node) {
|
16791
|
+
while (node = findNode$1(node, direction, isEditableCaretCandidate, root)) {
|
16792
|
+
if (predicateFn(node)) {
|
16793
|
+
return;
|
16794
|
+
}
|
16795
|
+
}
|
16796
|
+
};
|
16797
|
+
var findLineNodeRects = function (root, targetNodeRect) {
|
16798
|
+
var clientRects = [];
|
16799
|
+
var collect = function (checkPosFn, node) {
|
16800
|
+
var lineRects;
|
16801
|
+
lineRects = filter(getClientRects([node]), function (clientRect) {
|
16802
|
+
return !checkPosFn(clientRect, targetNodeRect);
|
16803
|
+
});
|
16804
|
+
clientRects = clientRects.concat(lineRects);
|
16805
|
+
return lineRects.length === 0;
|
16806
|
+
};
|
16807
|
+
clientRects.push(targetNodeRect);
|
16808
|
+
walkUntil$1(VDirection.Up, root, curry(collect, isAbove), targetNodeRect.node);
|
16809
|
+
walkUntil$1(VDirection.Down, root, curry(collect, isBelow), targetNodeRect.node);
|
16810
|
+
return clientRects;
|
16811
|
+
};
|
16812
|
+
var getFakeCaretTargets = function (root) {
|
16813
|
+
return filter(from$1(root.getElementsByTagName('*')), isFakeCaretTarget);
|
16814
|
+
};
|
16815
|
+
var caretInfo = function (clientRect, clientX) {
|
16816
|
+
return {
|
16817
|
+
node: clientRect.node,
|
16818
|
+
before: distanceToRectLeft(clientRect, clientX) < distanceToRectRight(clientRect, clientX)
|
16819
|
+
};
|
16820
|
+
};
|
16821
|
+
var closestCaret = function (root, clientX, clientY) {
|
16822
|
+
var closestNodeRect;
|
16823
|
+
var contentEditableFalseNodeRects = getClientRects(getFakeCaretTargets(root));
|
16824
|
+
var targetNodeRects = filter(contentEditableFalseNodeRects, function (rect) {
|
16825
|
+
return clientY >= rect.top && clientY <= rect.bottom;
|
16826
|
+
});
|
16827
|
+
closestNodeRect = findClosestClientRect(targetNodeRects, clientX);
|
16828
|
+
if (closestNodeRect) {
|
16829
|
+
closestNodeRect = findClosestClientRect(findLineNodeRects(root, closestNodeRect), clientX);
|
16830
|
+
if (closestNodeRect && isFakeCaretTarget(closestNodeRect.node)) {
|
16831
|
+
return caretInfo(closestNodeRect, clientX);
|
16832
|
+
}
|
16833
|
+
}
|
16834
|
+
return null;
|
16835
|
+
};
|
16836
|
+
|
16837
|
+
var isXYWithinRange = function (clientX, clientY, range) {
|
16838
|
+
if (range.collapsed) {
|
16839
|
+
return false;
|
16840
|
+
}
|
16841
|
+
if (Env.ie && Env.ie <= 11 && range.startOffset === range.endOffset - 1 && range.startContainer === range.endContainer) {
|
16842
|
+
var elm = range.startContainer.childNodes[range.startOffset];
|
16843
|
+
if (NodeType.isElement(elm)) {
|
16844
|
+
return exists(elm.getClientRects(), function (rect) {
|
16845
|
+
return containsXY(rect, clientX, clientY);
|
16846
|
+
});
|
16847
|
+
}
|
16848
|
+
}
|
16849
|
+
return exists(range.getClientRects(), function (rect) {
|
16850
|
+
return containsXY(rect, clientX, clientY);
|
16851
|
+
});
|
16852
|
+
};
|
16853
|
+
var RangePoint = { isXYWithinRange: isXYWithinRange };
|
16854
|
+
|
16855
|
+
var getAbsolutePosition = function (elm) {
|
16856
|
+
var doc, docElem, win, clientRect;
|
16857
|
+
clientRect = elm.getBoundingClientRect();
|
16858
|
+
doc = elm.ownerDocument;
|
16859
|
+
docElem = doc.documentElement;
|
16860
|
+
win = doc.defaultView;
|
16861
|
+
return {
|
16862
|
+
top: clientRect.top + win.pageYOffset - docElem.clientTop,
|
16863
|
+
left: clientRect.left + win.pageXOffset - docElem.clientLeft
|
16864
|
+
};
|
16865
|
+
};
|
16866
|
+
var getBodyPosition = function (editor) {
|
16867
|
+
return editor.inline ? getAbsolutePosition(editor.getBody()) : {
|
16868
|
+
left: 0,
|
16869
|
+
top: 0
|
16870
|
+
};
|
16871
|
+
};
|
16872
|
+
var getScrollPosition = function (editor) {
|
16873
|
+
var body = editor.getBody();
|
16874
|
+
return editor.inline ? {
|
16875
|
+
left: body.scrollLeft,
|
16876
|
+
top: body.scrollTop
|
16877
|
+
} : {
|
16878
|
+
left: 0,
|
16879
|
+
top: 0
|
16880
|
+
};
|
16881
|
+
};
|
16882
|
+
var getBodyScroll = function (editor) {
|
16883
|
+
var body = editor.getBody(), docElm = editor.getDoc().documentElement;
|
16884
|
+
var inlineScroll = {
|
16885
|
+
left: body.scrollLeft,
|
16886
|
+
top: body.scrollTop
|
16887
|
+
};
|
16888
|
+
var iframeScroll = {
|
16889
|
+
left: body.scrollLeft || docElm.scrollLeft,
|
16890
|
+
top: body.scrollTop || docElm.scrollTop
|
16891
|
+
};
|
16892
|
+
return editor.inline ? inlineScroll : iframeScroll;
|
16893
|
+
};
|
16894
|
+
var getMousePosition = function (editor, event) {
|
16895
|
+
if (event.target.ownerDocument !== editor.getDoc()) {
|
16896
|
+
var iframePosition = getAbsolutePosition(editor.getContentAreaContainer());
|
16897
|
+
var scrollPosition = getBodyScroll(editor);
|
16898
|
+
return {
|
16899
|
+
left: event.pageX - iframePosition.left + scrollPosition.left,
|
16900
|
+
top: event.pageY - iframePosition.top + scrollPosition.top
|
16901
|
+
};
|
16902
|
+
}
|
16903
|
+
return {
|
16904
|
+
left: event.pageX,
|
16905
|
+
top: event.pageY
|
16906
|
+
};
|
16907
|
+
};
|
16908
|
+
var calculatePosition = function (bodyPosition, scrollPosition, mousePosition) {
|
16909
|
+
return {
|
16910
|
+
pageX: mousePosition.left - bodyPosition.left + scrollPosition.left,
|
16911
|
+
pageY: mousePosition.top - bodyPosition.top + scrollPosition.top
|
16912
|
+
};
|
16913
|
+
};
|
16914
|
+
var calc = function (editor, event) {
|
16915
|
+
return calculatePosition(getBodyPosition(editor), getScrollPosition(editor), getMousePosition(editor, event));
|
16916
|
+
};
|
16917
|
+
var MousePosition = { calc: calc };
|
16918
|
+
|
16919
|
+
var isContentEditableFalse$8 = NodeType.isContentEditableFalse, isContentEditableTrue$3 = NodeType.isContentEditableTrue;
|
16920
|
+
var isDraggable = function (rootElm, elm) {
|
16921
|
+
return isContentEditableFalse$8(elm) && elm !== rootElm;
|
16922
|
+
};
|
16923
|
+
var isValidDropTarget = function (editor, targetElement, dragElement) {
|
16924
|
+
if (targetElement === dragElement || editor.dom.isChildOf(targetElement, dragElement)) {
|
16925
|
+
return false;
|
16926
|
+
}
|
16927
|
+
if (isContentEditableFalse$8(targetElement)) {
|
16928
|
+
return false;
|
16929
|
+
}
|
16930
|
+
return true;
|
16931
|
+
};
|
16932
|
+
var cloneElement = function (elm) {
|
16933
|
+
var cloneElm = elm.cloneNode(true);
|
16934
|
+
cloneElm.removeAttribute('data-mce-selected');
|
16935
|
+
return cloneElm;
|
16936
|
+
};
|
16937
|
+
var createGhost = function (editor, elm, width, height) {
|
16938
|
+
var clonedElm = elm.cloneNode(true);
|
16939
|
+
editor.dom.setStyles(clonedElm, {
|
16940
|
+
width: width,
|
16941
|
+
height: height
|
16942
|
+
});
|
16943
|
+
editor.dom.setAttrib(clonedElm, 'data-mce-selected', null);
|
16944
|
+
var ghostElm = editor.dom.create('div', {
|
16945
|
+
'class': 'mce-drag-container',
|
16946
|
+
'data-mce-bogus': 'all',
|
16947
|
+
'unselectable': 'on',
|
16948
|
+
'contenteditable': 'false'
|
16949
|
+
});
|
16950
|
+
editor.dom.setStyles(ghostElm, {
|
16951
|
+
position: 'absolute',
|
16952
|
+
opacity: 0.5,
|
16953
|
+
overflow: 'hidden',
|
16954
|
+
border: 0,
|
16673
16955
|
padding: 0,
|
16674
16956
|
margin: 0,
|
16675
16957
|
width: width,
|
@@ -16720,7 +17002,7 @@
|
|
16720
17002
|
var start$1 = function (state, editor) {
|
16721
17003
|
return function (e) {
|
16722
17004
|
if (isLeftMouseButtonPressed(e)) {
|
16723
|
-
var ceElm = find(editor.dom.getParents(e.target), Predicate.or(isContentEditableFalse$
|
17005
|
+
var ceElm = find(editor.dom.getParents(e.target), Predicate.or(isContentEditableFalse$8, isContentEditableTrue$3)).getOr(null);
|
16724
17006
|
if (isDraggable(editor.getBody(), ceElm)) {
|
16725
17007
|
var elmPos = editor.dom.getPos(ceElm);
|
16726
17008
|
var bodyElm = editor.getBody();
|
@@ -16825,7 +17107,7 @@
|
|
16825
17107
|
var blockIeDrop = function (editor) {
|
16826
17108
|
editor.on('drop', function (e) {
|
16827
17109
|
var realTarget = typeof e.clientX !== 'undefined' ? editor.getDoc().elementFromPoint(e.clientX, e.clientY) : null;
|
16828
|
-
if (isContentEditableFalse$
|
17110
|
+
if (isContentEditableFalse$8(realTarget) || isContentEditableFalse$8(editor.dom.getContentEditableParent(realTarget))) {
|
16829
17111
|
e.preventDefault();
|
16830
17112
|
}
|
16831
17113
|
});
|
@@ -16836,235 +17118,6 @@
|
|
16836
17118
|
};
|
16837
17119
|
var DragDropOverrides = { init: init };
|
16838
17120
|
|
16839
|
-
var getNodeClientRects = function (node) {
|
16840
|
-
var toArrayWithNode = function (clientRects) {
|
16841
|
-
return map(clientRects, function (clientRect) {
|
16842
|
-
clientRect = clone$1(clientRect);
|
16843
|
-
clientRect.node = node;
|
16844
|
-
return clientRect;
|
16845
|
-
});
|
16846
|
-
};
|
16847
|
-
if (NodeType.isElement(node)) {
|
16848
|
-
return toArrayWithNode(node.getClientRects());
|
16849
|
-
}
|
16850
|
-
if (NodeType.isText(node)) {
|
16851
|
-
var rng = node.ownerDocument.createRange();
|
16852
|
-
rng.setStart(node, 0);
|
16853
|
-
rng.setEnd(node, node.data.length);
|
16854
|
-
return toArrayWithNode(rng.getClientRects());
|
16855
|
-
}
|
16856
|
-
};
|
16857
|
-
var getClientRects = function (node) {
|
16858
|
-
return foldl(node, function (result, node) {
|
16859
|
-
return result.concat(getNodeClientRects(node));
|
16860
|
-
}, []);
|
16861
|
-
};
|
16862
|
-
|
16863
|
-
var VDirection;
|
16864
|
-
(function (VDirection) {
|
16865
|
-
VDirection[VDirection['Up'] = -1] = 'Up';
|
16866
|
-
VDirection[VDirection['Down'] = 1] = 'Down';
|
16867
|
-
}(VDirection || (VDirection = {})));
|
16868
|
-
var findUntil = function (direction, root, predicateFn, node) {
|
16869
|
-
while (node = findNode(node, direction, isEditableCaretCandidate, root)) {
|
16870
|
-
if (predicateFn(node)) {
|
16871
|
-
return;
|
16872
|
-
}
|
16873
|
-
}
|
16874
|
-
};
|
16875
|
-
var walkUntil = function (direction, isAboveFn, isBeflowFn, root, predicateFn, caretPosition) {
|
16876
|
-
var line = 0, node;
|
16877
|
-
var result = [];
|
16878
|
-
var targetClientRect;
|
16879
|
-
var add = function (node) {
|
16880
|
-
var i, clientRect, clientRects;
|
16881
|
-
clientRects = getClientRects([node]);
|
16882
|
-
if (direction === -1) {
|
16883
|
-
clientRects = clientRects.reverse();
|
16884
|
-
}
|
16885
|
-
for (i = 0; i < clientRects.length; i++) {
|
16886
|
-
clientRect = clientRects[i];
|
16887
|
-
if (isBeflowFn(clientRect, targetClientRect)) {
|
16888
|
-
continue;
|
16889
|
-
}
|
16890
|
-
if (result.length > 0 && isAboveFn(clientRect, ArrUtils.last(result))) {
|
16891
|
-
line++;
|
16892
|
-
}
|
16893
|
-
clientRect.line = line;
|
16894
|
-
if (predicateFn(clientRect)) {
|
16895
|
-
return true;
|
16896
|
-
}
|
16897
|
-
result.push(clientRect);
|
16898
|
-
}
|
16899
|
-
};
|
16900
|
-
targetClientRect = ArrUtils.last(caretPosition.getClientRects());
|
16901
|
-
if (!targetClientRect) {
|
16902
|
-
return result;
|
16903
|
-
}
|
16904
|
-
node = caretPosition.getNode();
|
16905
|
-
add(node);
|
16906
|
-
findUntil(direction, root, add, node);
|
16907
|
-
return result;
|
16908
|
-
};
|
16909
|
-
var aboveLineNumber = function (lineNumber, clientRect) {
|
16910
|
-
return clientRect.line > lineNumber;
|
16911
|
-
};
|
16912
|
-
var isLineNumber = function (lineNumber, clientRect) {
|
16913
|
-
return clientRect.line === lineNumber;
|
16914
|
-
};
|
16915
|
-
var upUntil = curry(walkUntil, VDirection.Up, isAbove, isBelow);
|
16916
|
-
var downUntil = curry(walkUntil, VDirection.Down, isBelow, isAbove);
|
16917
|
-
var positionsUntil = function (direction, root, predicateFn, node) {
|
16918
|
-
var caretWalker = CaretWalker(root);
|
16919
|
-
var walkFn, isBelowFn, isAboveFn, caretPosition;
|
16920
|
-
var result = [];
|
16921
|
-
var line = 0, clientRect, targetClientRect;
|
16922
|
-
var getClientRect = function (caretPosition) {
|
16923
|
-
if (direction === 1) {
|
16924
|
-
return ArrUtils.last(caretPosition.getClientRects());
|
16925
|
-
}
|
16926
|
-
return ArrUtils.last(caretPosition.getClientRects());
|
16927
|
-
};
|
16928
|
-
if (direction === 1) {
|
16929
|
-
walkFn = caretWalker.next;
|
16930
|
-
isBelowFn = isBelow;
|
16931
|
-
isAboveFn = isAbove;
|
16932
|
-
caretPosition = CaretPosition$1.after(node);
|
16933
|
-
} else {
|
16934
|
-
walkFn = caretWalker.prev;
|
16935
|
-
isBelowFn = isAbove;
|
16936
|
-
isAboveFn = isBelow;
|
16937
|
-
caretPosition = CaretPosition$1.before(node);
|
16938
|
-
}
|
16939
|
-
targetClientRect = getClientRect(caretPosition);
|
16940
|
-
do {
|
16941
|
-
if (!caretPosition.isVisible()) {
|
16942
|
-
continue;
|
16943
|
-
}
|
16944
|
-
clientRect = getClientRect(caretPosition);
|
16945
|
-
if (isAboveFn(clientRect, targetClientRect)) {
|
16946
|
-
continue;
|
16947
|
-
}
|
16948
|
-
if (result.length > 0 && isBelowFn(clientRect, ArrUtils.last(result))) {
|
16949
|
-
line++;
|
16950
|
-
}
|
16951
|
-
clientRect = clone$1(clientRect);
|
16952
|
-
clientRect.position = caretPosition;
|
16953
|
-
clientRect.line = line;
|
16954
|
-
if (predicateFn(clientRect)) {
|
16955
|
-
return result;
|
16956
|
-
}
|
16957
|
-
result.push(clientRect);
|
16958
|
-
} while (caretPosition = walkFn(caretPosition));
|
16959
|
-
return result;
|
16960
|
-
};
|
16961
|
-
var isAboveLine = function (lineNumber) {
|
16962
|
-
return function (clientRect) {
|
16963
|
-
return aboveLineNumber(lineNumber, clientRect);
|
16964
|
-
};
|
16965
|
-
};
|
16966
|
-
var isLine = function (lineNumber) {
|
16967
|
-
return function (clientRect) {
|
16968
|
-
return isLineNumber(lineNumber, clientRect);
|
16969
|
-
};
|
16970
|
-
};
|
16971
|
-
|
16972
|
-
var isContentEditableFalse$8 = NodeType.isContentEditableFalse;
|
16973
|
-
var findNode$1 = findNode;
|
16974
|
-
var distanceToRectLeft = function (clientRect, clientX) {
|
16975
|
-
return Math.abs(clientRect.left - clientX);
|
16976
|
-
};
|
16977
|
-
var distanceToRectRight = function (clientRect, clientX) {
|
16978
|
-
return Math.abs(clientRect.right - clientX);
|
16979
|
-
};
|
16980
|
-
var isInside = function (clientX, clientRect) {
|
16981
|
-
return clientX >= clientRect.left && clientX <= clientRect.right;
|
16982
|
-
};
|
16983
|
-
var findClosestClientRect = function (clientRects, clientX) {
|
16984
|
-
return ArrUtils.reduce(clientRects, function (oldClientRect, clientRect) {
|
16985
|
-
var oldDistance, newDistance;
|
16986
|
-
oldDistance = Math.min(distanceToRectLeft(oldClientRect, clientX), distanceToRectRight(oldClientRect, clientX));
|
16987
|
-
newDistance = Math.min(distanceToRectLeft(clientRect, clientX), distanceToRectRight(clientRect, clientX));
|
16988
|
-
if (isInside(clientX, clientRect)) {
|
16989
|
-
return clientRect;
|
16990
|
-
}
|
16991
|
-
if (isInside(clientX, oldClientRect)) {
|
16992
|
-
return oldClientRect;
|
16993
|
-
}
|
16994
|
-
if (newDistance === oldDistance && isContentEditableFalse$8(clientRect.node)) {
|
16995
|
-
return clientRect;
|
16996
|
-
}
|
16997
|
-
if (newDistance < oldDistance) {
|
16998
|
-
return clientRect;
|
16999
|
-
}
|
17000
|
-
return oldClientRect;
|
17001
|
-
});
|
17002
|
-
};
|
17003
|
-
var walkUntil$1 = function (direction, root, predicateFn, node) {
|
17004
|
-
while (node = findNode$1(node, direction, isEditableCaretCandidate, root)) {
|
17005
|
-
if (predicateFn(node)) {
|
17006
|
-
return;
|
17007
|
-
}
|
17008
|
-
}
|
17009
|
-
};
|
17010
|
-
var findLineNodeRects = function (root, targetNodeRect) {
|
17011
|
-
var clientRects = [];
|
17012
|
-
var collect = function (checkPosFn, node) {
|
17013
|
-
var lineRects;
|
17014
|
-
lineRects = filter(getClientRects([node]), function (clientRect) {
|
17015
|
-
return !checkPosFn(clientRect, targetNodeRect);
|
17016
|
-
});
|
17017
|
-
clientRects = clientRects.concat(lineRects);
|
17018
|
-
return lineRects.length === 0;
|
17019
|
-
};
|
17020
|
-
clientRects.push(targetNodeRect);
|
17021
|
-
walkUntil$1(VDirection.Up, root, curry(collect, isAbove), targetNodeRect.node);
|
17022
|
-
walkUntil$1(VDirection.Down, root, curry(collect, isBelow), targetNodeRect.node);
|
17023
|
-
return clientRects;
|
17024
|
-
};
|
17025
|
-
var getFakeCaretTargets = function (root) {
|
17026
|
-
return filter(from$1(root.getElementsByTagName('*')), isFakeCaretTarget);
|
17027
|
-
};
|
17028
|
-
var caretInfo = function (clientRect, clientX) {
|
17029
|
-
return {
|
17030
|
-
node: clientRect.node,
|
17031
|
-
before: distanceToRectLeft(clientRect, clientX) < distanceToRectRight(clientRect, clientX)
|
17032
|
-
};
|
17033
|
-
};
|
17034
|
-
var closestCaret = function (root, clientX, clientY) {
|
17035
|
-
var closestNodeRect;
|
17036
|
-
var contentEditableFalseNodeRects = getClientRects(getFakeCaretTargets(root));
|
17037
|
-
var targetNodeRects = filter(contentEditableFalseNodeRects, function (rect) {
|
17038
|
-
return clientY >= rect.top && clientY <= rect.bottom;
|
17039
|
-
});
|
17040
|
-
closestNodeRect = findClosestClientRect(targetNodeRects, clientX);
|
17041
|
-
if (closestNodeRect) {
|
17042
|
-
closestNodeRect = findClosestClientRect(findLineNodeRects(root, closestNodeRect), clientX);
|
17043
|
-
if (closestNodeRect && isFakeCaretTarget(closestNodeRect.node)) {
|
17044
|
-
return caretInfo(closestNodeRect, clientX);
|
17045
|
-
}
|
17046
|
-
}
|
17047
|
-
return null;
|
17048
|
-
};
|
17049
|
-
|
17050
|
-
var isXYWithinRange = function (clientX, clientY, range) {
|
17051
|
-
if (range.collapsed) {
|
17052
|
-
return false;
|
17053
|
-
}
|
17054
|
-
if (Env.ie && Env.ie <= 11 && range.startOffset === range.endOffset - 1 && range.startContainer === range.endContainer) {
|
17055
|
-
var elm = range.startContainer.childNodes[range.startOffset];
|
17056
|
-
if (NodeType.isElement(elm)) {
|
17057
|
-
return exists(elm.getClientRects(), function (rect) {
|
17058
|
-
return containsXY(rect, clientX, clientY);
|
17059
|
-
});
|
17060
|
-
}
|
17061
|
-
}
|
17062
|
-
return exists(range.getClientRects(), function (rect) {
|
17063
|
-
return containsXY(rect, clientX, clientY);
|
17064
|
-
});
|
17065
|
-
};
|
17066
|
-
var RangePoint = { isXYWithinRange: isXYWithinRange };
|
17067
|
-
|
17068
17121
|
var setup$4 = function (editor) {
|
17069
17122
|
var renderFocusCaret = first(function () {
|
17070
17123
|
if (!editor.removed) {
|
@@ -17084,26 +17137,6 @@
|
|
17084
17137
|
};
|
17085
17138
|
var CefFocus = { setup: setup$4 };
|
17086
17139
|
|
17087
|
-
var VK = {
|
17088
|
-
BACKSPACE: 8,
|
17089
|
-
DELETE: 46,
|
17090
|
-
DOWN: 40,
|
17091
|
-
ENTER: 13,
|
17092
|
-
LEFT: 37,
|
17093
|
-
RIGHT: 39,
|
17094
|
-
SPACEBAR: 32,
|
17095
|
-
TAB: 9,
|
17096
|
-
UP: 38,
|
17097
|
-
END: 35,
|
17098
|
-
HOME: 36,
|
17099
|
-
modifierPressed: function (e) {
|
17100
|
-
return e.shiftKey || e.ctrlKey || e.altKey || this.metaKeyPressed(e);
|
17101
|
-
},
|
17102
|
-
metaKeyPressed: function (e) {
|
17103
|
-
return Env.mac ? e.metaKey : e.ctrlKey && !e.altKey;
|
17104
|
-
}
|
17105
|
-
};
|
17106
|
-
|
17107
17140
|
var isContentEditableTrue$4 = NodeType.isContentEditableTrue;
|
17108
17141
|
var isContentEditableFalse$9 = NodeType.isContentEditableFalse;
|
17109
17142
|
var getContentEditableRoot$1 = function (editor, node) {
|
@@ -17302,8 +17335,8 @@
|
|
17302
17335
|
}
|
17303
17336
|
});
|
17304
17337
|
editor.on('setSelectionRange', function (e) {
|
17305
|
-
|
17306
|
-
rng = setContentEditableSelection(e.range, e.forward);
|
17338
|
+
e.range = normalizeShortEndedElementSelection(e.range);
|
17339
|
+
var rng = setContentEditableSelection(e.range, e.forward);
|
17307
17340
|
if (rng) {
|
17308
17341
|
e.range = rng;
|
17309
17342
|
}
|
@@ -17346,6 +17379,33 @@
|
|
17346
17379
|
var isRangeInCaretContainer = function (rng) {
|
17347
17380
|
return isWithinCaretContainer(rng.startContainer) || isWithinCaretContainer(rng.endContainer);
|
17348
17381
|
};
|
17382
|
+
var normalizeShortEndedElementSelection = function (rng) {
|
17383
|
+
var shortEndedElements = editor.schema.getShortEndedElements();
|
17384
|
+
var newRng = editor.dom.createRng();
|
17385
|
+
var startContainer = rng.startContainer;
|
17386
|
+
var startOffset = rng.startOffset;
|
17387
|
+
var endContainer = rng.endContainer;
|
17388
|
+
var endOffset = rng.endOffset;
|
17389
|
+
if (has(shortEndedElements, startContainer.nodeName.toLowerCase())) {
|
17390
|
+
if (startOffset === 0) {
|
17391
|
+
newRng.setStartBefore(startContainer);
|
17392
|
+
} else {
|
17393
|
+
newRng.setStartAfter(startContainer);
|
17394
|
+
}
|
17395
|
+
} else {
|
17396
|
+
newRng.setStart(startContainer, startOffset);
|
17397
|
+
}
|
17398
|
+
if (has(shortEndedElements, endContainer.nodeName.toLowerCase())) {
|
17399
|
+
if (endOffset === 0) {
|
17400
|
+
newRng.setEndBefore(endContainer);
|
17401
|
+
} else {
|
17402
|
+
newRng.setEndAfter(endContainer);
|
17403
|
+
}
|
17404
|
+
} else {
|
17405
|
+
newRng.setEnd(endContainer, endOffset);
|
17406
|
+
}
|
17407
|
+
return newRng;
|
17408
|
+
};
|
17349
17409
|
var setContentEditableSelection = function (range, forward) {
|
17350
17410
|
var node;
|
17351
17411
|
var $ = editor.$;
|
@@ -17466,7 +17526,11 @@
|
|
17466
17526
|
return name.indexOf('data-') === 0 || name.indexOf('aria-') === 0;
|
17467
17527
|
};
|
17468
17528
|
var trimComments = function (text) {
|
17469
|
-
|
17529
|
+
var sanitizedText = text;
|
17530
|
+
while (/<!--|--!?>/g.test(sanitizedText)) {
|
17531
|
+
sanitizedText = sanitizedText.replace(/<!--|--!?>/g, '');
|
17532
|
+
}
|
17533
|
+
return sanitizedText;
|
17470
17534
|
};
|
17471
17535
|
var isInvalidUri = function (settings, uri) {
|
17472
17536
|
if (settings.allow_html_data_urls) {
|
@@ -23352,10 +23416,41 @@
|
|
23352
23416
|
}
|
23353
23417
|
return parent !== root ? editableRoot : root;
|
23354
23418
|
};
|
23419
|
+
var applyAttributes = function (editor, node, forcedRootBlockAttrs) {
|
23420
|
+
Option.from(forcedRootBlockAttrs.style).map(editor.dom.parseStyle).each(function (attrStyles) {
|
23421
|
+
var currentStyles = getAllRaw(Element.fromDom(node));
|
23422
|
+
var newStyles = __assign(__assign({}, currentStyles), attrStyles);
|
23423
|
+
editor.dom.setStyles(node, newStyles);
|
23424
|
+
});
|
23425
|
+
var attrClassesOpt = Option.from(forcedRootBlockAttrs.class).map(function (attrClasses) {
|
23426
|
+
return attrClasses.split(/\s+/);
|
23427
|
+
});
|
23428
|
+
var currentClassesOpt = Option.from(node.className).map(function (currentClasses) {
|
23429
|
+
return filter(currentClasses.split(/\s+/), function (clazz) {
|
23430
|
+
return clazz !== '';
|
23431
|
+
});
|
23432
|
+
});
|
23433
|
+
lift2(attrClassesOpt, currentClassesOpt, function (attrClasses, currentClasses) {
|
23434
|
+
var filteredClasses = filter(currentClasses, function (clazz) {
|
23435
|
+
return !contains(attrClasses, clazz);
|
23436
|
+
});
|
23437
|
+
var newClasses = __spreadArrays(attrClasses, filteredClasses);
|
23438
|
+
editor.dom.setAttrib(node, 'class', newClasses.join(' '));
|
23439
|
+
});
|
23440
|
+
var appliedAttrs = [
|
23441
|
+
'style',
|
23442
|
+
'class'
|
23443
|
+
];
|
23444
|
+
var remainingAttrs = bifilter(forcedRootBlockAttrs, function (_, attrs) {
|
23445
|
+
return !contains(appliedAttrs, attrs);
|
23446
|
+
}).t;
|
23447
|
+
editor.dom.setAttribs(node, remainingAttrs);
|
23448
|
+
};
|
23355
23449
|
var setForcedBlockAttrs = function (editor, node) {
|
23356
23450
|
var forcedRootBlockName = Settings.getForcedRootBlock(editor);
|
23357
23451
|
if (forcedRootBlockName && forcedRootBlockName.toLowerCase() === node.tagName.toLowerCase()) {
|
23358
|
-
|
23452
|
+
var forcedRootBlockAttrs = Settings.getForcedRootBlockAttrs(editor);
|
23453
|
+
applyAttributes(editor, node, forcedRootBlockAttrs);
|
23359
23454
|
}
|
23360
23455
|
};
|
23361
23456
|
var wrapSelfAndSiblingsInDefaultBlock = function (editor, newBlockName, rng, container, offset) {
|
@@ -23421,7 +23516,6 @@
|
|
23421
23516
|
var textInlineElements = schema.getTextInlineElements();
|
23422
23517
|
if (name || parentBlockName === 'TABLE' || parentBlockName === 'HR') {
|
23423
23518
|
block = dom.create(name || newBlockName);
|
23424
|
-
setForcedBlockAttrs(editor, block);
|
23425
23519
|
} else {
|
23426
23520
|
block = parentBlock.cloneNode(false);
|
23427
23521
|
}
|
@@ -23447,6 +23541,7 @@
|
|
23447
23541
|
}
|
23448
23542
|
} while ((node = node.parentNode) && node !== editableRoot);
|
23449
23543
|
}
|
23544
|
+
setForcedBlockAttrs(editor, block);
|
23450
23545
|
emptyBlock(caretNode);
|
23451
23546
|
return block;
|
23452
23547
|
};
|
@@ -23553,6 +23648,7 @@
|
|
23553
23648
|
if (dom.isEmpty(parentBlock)) {
|
23554
23649
|
emptyBlock(parentBlock);
|
23555
23650
|
}
|
23651
|
+
setForcedBlockAttrs(editor, newBlock);
|
23556
23652
|
NewLineUtils.moveToCaretPosition(editor, newBlock);
|
23557
23653
|
} else if (isCaretAtStartOrEndOfBlock()) {
|
23558
23654
|
insertNewBlockAfter();
|
@@ -23577,6 +23673,7 @@
|
|
23577
23673
|
dom.remove(newBlock);
|
23578
23674
|
insertNewBlockAfter();
|
23579
23675
|
} else {
|
23676
|
+
setForcedBlockAttrs(editor, newBlock);
|
23580
23677
|
NewLineUtils.moveToCaretPosition(editor, newBlock);
|
23581
23678
|
}
|
23582
23679
|
}
|
@@ -26267,15 +26364,15 @@
|
|
26267
26364
|
defaultSettings: {},
|
26268
26365
|
$: DomQuery,
|
26269
26366
|
majorVersion: '4',
|
26270
|
-
minorVersion: '9.
|
26271
|
-
releaseDate: '2020-
|
26367
|
+
minorVersion: '9.10',
|
26368
|
+
releaseDate: '2020-04-23',
|
26272
26369
|
editors: legacyEditors,
|
26273
26370
|
i18n: I18n,
|
26274
26371
|
activeEditor: null,
|
26275
26372
|
settings: {},
|
26276
26373
|
setup: function () {
|
26277
26374
|
var self = this;
|
26278
|
-
var baseURL, documentBaseURL, suffix = ''
|
26375
|
+
var baseURL, documentBaseURL, suffix = '';
|
26279
26376
|
documentBaseURL = URI.getDocumentBaseUrl(domGlobals.document.location);
|
26280
26377
|
if (/^[^:]+:\/\/\/?[^\/]+\//.test(documentBaseURL)) {
|
26281
26378
|
documentBaseURL = documentBaseURL.replace(/[\?#].*$/, '').replace(/[\/\\][^\/]+$/, '');
|
@@ -26283,14 +26380,17 @@
|
|
26283
26380
|
documentBaseURL += '/';
|
26284
26381
|
}
|
26285
26382
|
}
|
26286
|
-
preInit = window.tinymce || window.tinyMCEPreInit;
|
26383
|
+
var preInit = window.tinymce || window.tinyMCEPreInit;
|
26287
26384
|
if (preInit) {
|
26288
26385
|
baseURL = preInit.base || preInit.baseURL;
|
26289
26386
|
suffix = preInit.suffix;
|
26290
26387
|
} else {
|
26291
26388
|
var scripts = domGlobals.document.getElementsByTagName('script');
|
26292
26389
|
for (var i = 0; i < scripts.length; i++) {
|
26293
|
-
src = scripts[i].src;
|
26390
|
+
var src = scripts[i].src || '';
|
26391
|
+
if (src === '') {
|
26392
|
+
continue;
|
26393
|
+
}
|
26294
26394
|
var srcScript = src.substring(src.lastIndexOf('/'));
|
26295
26395
|
if (/tinymce(\.full|\.jquery|)(\.min|\.dev|)\.js/.test(src)) {
|
26296
26396
|
if (srcScript.indexOf('.min') !== -1) {
|
@@ -26301,7 +26401,7 @@
|
|
26301
26401
|
}
|
26302
26402
|
}
|
26303
26403
|
if (!baseURL && domGlobals.document.currentScript) {
|
26304
|
-
src = domGlobals.document.currentScript.src;
|
26404
|
+
var src = domGlobals.document.currentScript.src;
|
26305
26405
|
if (src.indexOf('.min') !== -1) {
|
26306
26406
|
suffix = '.min';
|
26307
26407
|
}
|