tinymce-rails 5.0.13 → 5.0.14

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.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/source/tinymce/tinymce.js +113 -135
  3. data/lib/tinymce/rails/version.rb +2 -2
  4. data/vendor/assets/javascripts/tinymce/plugins/advlist/plugin.js +1 -1
  5. data/vendor/assets/javascripts/tinymce/plugins/anchor/plugin.js +1 -1
  6. data/vendor/assets/javascripts/tinymce/plugins/autolink/plugin.js +1 -1
  7. data/vendor/assets/javascripts/tinymce/plugins/autoresize/plugin.js +1 -1
  8. data/vendor/assets/javascripts/tinymce/plugins/autosave/plugin.js +1 -1
  9. data/vendor/assets/javascripts/tinymce/plugins/bbcode/plugin.js +1 -1
  10. data/vendor/assets/javascripts/tinymce/plugins/charmap/plugin.js +1 -1
  11. data/vendor/assets/javascripts/tinymce/plugins/code/plugin.js +1 -1
  12. data/vendor/assets/javascripts/tinymce/plugins/codesample/plugin.js +1 -1
  13. data/vendor/assets/javascripts/tinymce/plugins/colorpicker/plugin.js +1 -1
  14. data/vendor/assets/javascripts/tinymce/plugins/contextmenu/plugin.js +1 -1
  15. data/vendor/assets/javascripts/tinymce/plugins/directionality/plugin.js +2 -2
  16. data/vendor/assets/javascripts/tinymce/plugins/emoticons/plugin.js +1 -1
  17. data/vendor/assets/javascripts/tinymce/plugins/fullpage/plugin.js +1 -1
  18. data/vendor/assets/javascripts/tinymce/plugins/fullscreen/plugin.js +2 -2
  19. data/vendor/assets/javascripts/tinymce/plugins/help/plugin.js +1 -1
  20. data/vendor/assets/javascripts/tinymce/plugins/hr/plugin.js +1 -1
  21. data/vendor/assets/javascripts/tinymce/plugins/image/plugin.js +1 -1
  22. data/vendor/assets/javascripts/tinymce/plugins/imagetools/plugin.js +2 -2
  23. data/vendor/assets/javascripts/tinymce/plugins/importcss/plugin.js +1 -1
  24. data/vendor/assets/javascripts/tinymce/plugins/insertdatetime/plugin.js +1 -1
  25. data/vendor/assets/javascripts/tinymce/plugins/legacyoutput/plugin.js +1 -1
  26. data/vendor/assets/javascripts/tinymce/plugins/link/plugin.js +1 -1
  27. data/vendor/assets/javascripts/tinymce/plugins/lists/plugin.js +2 -2
  28. data/vendor/assets/javascripts/tinymce/plugins/media/plugin.js +1 -1
  29. data/vendor/assets/javascripts/tinymce/plugins/nonbreaking/plugin.js +1 -1
  30. data/vendor/assets/javascripts/tinymce/plugins/noneditable/plugin.js +1 -1
  31. data/vendor/assets/javascripts/tinymce/plugins/pagebreak/plugin.js +1 -1
  32. data/vendor/assets/javascripts/tinymce/plugins/paste/plugin.js +1 -1
  33. data/vendor/assets/javascripts/tinymce/plugins/preview/plugin.js +1 -1
  34. data/vendor/assets/javascripts/tinymce/plugins/print/plugin.js +1 -1
  35. data/vendor/assets/javascripts/tinymce/plugins/quickbars/plugin.js +2 -2
  36. data/vendor/assets/javascripts/tinymce/plugins/save/plugin.js +1 -1
  37. data/vendor/assets/javascripts/tinymce/plugins/searchreplace/plugin.js +1 -1
  38. data/vendor/assets/javascripts/tinymce/plugins/spellchecker/plugin.js +1 -1
  39. data/vendor/assets/javascripts/tinymce/plugins/tabfocus/plugin.js +1 -1
  40. data/vendor/assets/javascripts/tinymce/plugins/table/plugin.js +2 -2
  41. data/vendor/assets/javascripts/tinymce/plugins/template/plugin.js +1 -1
  42. data/vendor/assets/javascripts/tinymce/plugins/textcolor/plugin.js +1 -1
  43. data/vendor/assets/javascripts/tinymce/plugins/textpattern/plugin.js +1 -1
  44. data/vendor/assets/javascripts/tinymce/plugins/toc/plugin.js +1 -1
  45. data/vendor/assets/javascripts/tinymce/plugins/visualblocks/plugin.js +1 -1
  46. data/vendor/assets/javascripts/tinymce/plugins/visualchars/plugin.js +2 -2
  47. data/vendor/assets/javascripts/tinymce/plugins/wordcount/plugin.js +1 -1
  48. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.css +1 -1
  49. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.min.css +1 -1
  50. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.css +1 -1
  51. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.min.css +1 -1
  52. data/vendor/assets/javascripts/tinymce/themes/mobile/theme.js +2 -2
  53. data/vendor/assets/javascripts/tinymce/themes/silver/theme.js +2 -2
  54. data/vendor/assets/javascripts/tinymce/tinymce.js +2 -2
  55. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 75cea0a3470f10e2b30af1c61af87354a14b7a4ecbe7a3b5721bae0a08b0be09
4
- data.tar.gz: 17bcec541aeeca306c947a3db45c4a51eda8325bf7195689214cf79b3f02747a
3
+ metadata.gz: 82ad3a419045eb4f1f2004b363206fa490cfe3e34c53161bd69143e4ae3135be
4
+ data.tar.gz: dc31a70b97ff33c946992e3ee55c647332269763d8b06455e032cdfd59173633
5
5
  SHA512:
6
- metadata.gz: dc1faf8b0e49117efa9097f245ce85f75ccd1403a28cbd94fedef758234747a283e3a66530f4a1716f57f04f30a941a24fdb5c70f983b7c3bcb8e5b38c7c4bfa
7
- data.tar.gz: 72ac2548d61e8d64a1072020dd1f1aacc9c74a4f3f943ae7bdc17209554d7fc921df95ff653347df19e7545e740562af9abf16dc0a9e7dd4f57ae4d2fd7166fc
6
+ metadata.gz: 8caa09d91ff8cd6995904cbb03affab4a2edd92ecfebe55e9f0b5e2f680242226978289ea13429cc7f3c0e874ede880786cc886f7d7ee23af4700a10dbc687bb
7
+ data.tar.gz: b997f5d6fbb7e4d6b7a76f48fd0353ce87c150ef143d1b710ce0b8df0697ed92349a69c21712b0c0d852cf52eef1678a7bf6164c8f3bee07133ddbb677b30b92
@@ -4,7 +4,7 @@
4
4
  * For LGPL see License.txt in the project root for license information.
5
5
  * For commercial licenses see https://www.tiny.cloud/
6
6
  *
7
- * Version: 5.0.13 (2019-08-06)
7
+ * Version: 5.0.14 (2019-08-19)
8
8
  */
9
9
  (function (domGlobals) {
10
10
  'use strict';
@@ -3631,6 +3631,8 @@
3631
3631
  var ENTITY = domGlobals.Node.ENTITY_NODE;
3632
3632
  var NOTATION = domGlobals.Node.NOTATION_NODE;
3633
3633
 
3634
+ var Global = typeof domGlobals.window !== 'undefined' ? domGlobals.window : Function('return this;')();
3635
+
3634
3636
  var name = function (element) {
3635
3637
  var r = element.dom().nodeName;
3636
3638
  return r.toLowerCase();
@@ -3645,7 +3647,6 @@
3645
3647
  };
3646
3648
  var isElement = isType$1(ELEMENT);
3647
3649
  var isText = isType$1(TEXT);
3648
- var isDocument = isType$1(DOCUMENT);
3649
3650
 
3650
3651
  var keys = Object.keys;
3651
3652
  var hasOwnProperty$1 = Object.hasOwnProperty;
@@ -3803,19 +3804,22 @@
3803
3804
  var ELEMENT$1 = ELEMENT;
3804
3805
  var DOCUMENT$1 = DOCUMENT;
3805
3806
  var is$1 = function (element, selector) {
3806
- var elem = element.dom();
3807
- if (elem.nodeType !== ELEMENT$1) {
3807
+ var dom = element.dom();
3808
+ if (dom.nodeType !== ELEMENT$1) {
3808
3809
  return false;
3809
- } else if (elem.matches !== undefined) {
3810
- return elem.matches(selector);
3811
- } else if (elem.msMatchesSelector !== undefined) {
3812
- return elem.msMatchesSelector(selector);
3813
- } else if (elem.webkitMatchesSelector !== undefined) {
3814
- return elem.webkitMatchesSelector(selector);
3815
- } else if (elem.mozMatchesSelector !== undefined) {
3816
- return elem.mozMatchesSelector(selector);
3817
3810
  } else {
3818
- throw new Error('Browser lacks native selectors');
3811
+ var elem = dom;
3812
+ if (elem.matches !== undefined) {
3813
+ return elem.matches(selector);
3814
+ } else if (elem.msMatchesSelector !== undefined) {
3815
+ return elem.msMatchesSelector(selector);
3816
+ } else if (elem.webkitMatchesSelector !== undefined) {
3817
+ return elem.webkitMatchesSelector(selector);
3818
+ } else if (elem.mozMatchesSelector !== undefined) {
3819
+ return elem.mozMatchesSelector(selector);
3820
+ } else {
3821
+ throw new Error('Browser lacks native selectors');
3822
+ }
3819
3823
  }
3820
3824
  };
3821
3825
  var bypassSelector = function (dom) {
@@ -3851,16 +3855,13 @@
3851
3855
  return Element.fromDom(element.dom().ownerDocument.documentElement);
3852
3856
  };
3853
3857
  var defaultView = function (element) {
3854
- var el = element.dom();
3855
- var defView = el.ownerDocument.defaultView;
3856
- return Element.fromDom(defView);
3858
+ return Element.fromDom(element.dom().ownerDocument.defaultView);
3857
3859
  };
3858
3860
  var parent = function (element) {
3859
- var dom = element.dom();
3860
- return Option.from(dom.parentNode).map(Element.fromDom);
3861
+ return Option.from(element.dom().parentNode).map(Element.fromDom);
3861
3862
  };
3862
3863
  var parents = function (element, isRoot) {
3863
- var stop = isFunction(isRoot) ? isRoot : constant(false);
3864
+ var stop = isFunction(isRoot) ? isRoot : never;
3864
3865
  var dom = element.dom();
3865
3866
  var ret = [];
3866
3867
  while (dom.parentNode !== null && dom.parentNode !== undefined) {
@@ -3876,12 +3877,10 @@
3876
3877
  return ret;
3877
3878
  };
3878
3879
  var prevSibling = function (element) {
3879
- var dom = element.dom();
3880
- return Option.from(dom.previousSibling).map(Element.fromDom);
3880
+ return Option.from(element.dom().previousSibling).map(Element.fromDom);
3881
3881
  };
3882
3882
  var nextSibling = function (element) {
3883
- var dom = element.dom();
3884
- return Option.from(dom.nextSibling).map(Element.fromDom);
3883
+ return Option.from(element.dom().nextSibling).map(Element.fromDom);
3885
3884
  };
3886
3885
  var prevSiblings = function (element) {
3887
3886
  return reverse(Recurse.toArray(element, prevSibling));
@@ -3890,8 +3889,7 @@
3890
3889
  return Recurse.toArray(element, nextSibling);
3891
3890
  };
3892
3891
  var children = function (element) {
3893
- var dom = element.dom();
3894
- return map(dom.childNodes, Element.fromDom);
3892
+ return map(element.dom().childNodes, Element.fromDom);
3895
3893
  };
3896
3894
  var child = function (element, index) {
3897
3895
  var cs = element.dom().childNodes;
@@ -4953,7 +4951,7 @@
4953
4951
  ]);
4954
4952
  var isText$1 = isNodeType(3);
4955
4953
  var isComment = isNodeType(8);
4956
- var isDocument$1 = isNodeType(9);
4954
+ var isDocument = isNodeType(9);
4957
4955
  var isDocumentFragment = isNodeType(11);
4958
4956
  var isBr = matchNodeNames(['br']);
4959
4957
  var isContentEditableTrue = hasContentEditableState('true');
@@ -4962,7 +4960,7 @@
4962
4960
  isText: isText$1,
4963
4961
  isElement: isElement$1,
4964
4962
  isComment: isComment,
4965
- isDocument: isDocument$1,
4963
+ isDocument: isDocument,
4966
4964
  isDocumentFragment: isDocumentFragment,
4967
4965
  isBr: isBr,
4968
4966
  isContentEditableTrue: isContentEditableTrue,
@@ -7741,8 +7739,8 @@
7741
7739
  return Option.none();
7742
7740
  };
7743
7741
  var closest = function (scope, predicate, isRoot) {
7744
- var is = function (s) {
7745
- return predicate(s);
7742
+ var is = function (s, test) {
7743
+ return test(s);
7746
7744
  };
7747
7745
  return ClosestOrAncestor(is, ancestor, scope, predicate, isRoot);
7748
7746
  };
@@ -10366,18 +10364,9 @@
10366
10364
  }
10367
10365
  return getOption(element).getOr('');
10368
10366
  };
10369
- var getOptionIE10 = function (element) {
10370
- try {
10371
- return getOptionSafe(element);
10372
- } catch (e) {
10373
- return Option.none();
10374
- }
10375
- };
10376
- var getOptionSafe = function (element) {
10367
+ var getOption = function (element) {
10377
10368
  return is(element) ? Option.from(element.dom().nodeValue) : Option.none();
10378
10369
  };
10379
- var browser = PlatformDetection$1.detect().browser;
10380
- var getOption = browser.isIE() && browser.version.major === 10 ? getOptionIE10 : getOptionSafe;
10381
10370
  var set = function (element, value) {
10382
10371
  if (!is(element)) {
10383
10372
  throw new Error('Can only set raw ' + name + ' value of a ' + name + ' node');
@@ -10548,19 +10537,17 @@
10548
10537
  '#document-fragment': 11
10549
10538
  };
10550
10539
  var walk$2 = function (node, root, prev) {
10551
- var sibling;
10552
- var parent;
10553
10540
  var startName = prev ? 'lastChild' : 'firstChild';
10554
10541
  var siblingName = prev ? 'prev' : 'next';
10555
10542
  if (node[startName]) {
10556
10543
  return node[startName];
10557
10544
  }
10558
10545
  if (node !== root) {
10559
- sibling = node[siblingName];
10546
+ var sibling = node[siblingName];
10560
10547
  if (sibling) {
10561
10548
  return sibling;
10562
10549
  }
10563
- for (parent = node.parent; parent && parent !== root; parent = parent.parent) {
10550
+ for (var parent = node.parent; parent && parent !== root; parent = parent.parent) {
10564
10551
  sibling = parent[siblingName];
10565
10552
  if (sibling) {
10566
10553
  return sibling;
@@ -10578,10 +10565,9 @@
10578
10565
  }
10579
10566
  }
10580
10567
  Node.create = function (name, attrs) {
10581
- var node, attrName;
10582
- node = new Node(name, typeLookup[name] || 1);
10568
+ var node = new Node(name, typeLookup[name] || 1);
10583
10569
  if (attrs) {
10584
- for (attrName in attrs) {
10570
+ for (var attrName in attrs) {
10585
10571
  node.attr(attrName, attrs[attrName]);
10586
10572
  }
10587
10573
  }
@@ -10598,10 +10584,10 @@
10598
10584
  };
10599
10585
  Node.prototype.attr = function (name, value) {
10600
10586
  var self = this;
10601
- var attrs, i;
10587
+ var attrs;
10602
10588
  if (typeof name !== 'string') {
10603
- for (i in name) {
10604
- self.attr(i, name[i]);
10589
+ for (var key in name) {
10590
+ self.attr(key, name[key]);
10605
10591
  }
10606
10592
  return self;
10607
10593
  }
@@ -10610,10 +10596,10 @@
10610
10596
  if (value === null) {
10611
10597
  if (name in attrs.map) {
10612
10598
  delete attrs.map[name];
10613
- i = attrs.length;
10599
+ var i = attrs.length;
10614
10600
  while (i--) {
10615
10601
  if (attrs[i].name === name) {
10616
- attrs = attrs.splice(i, 1);
10602
+ attrs.splice(i, 1);
10617
10603
  return self;
10618
10604
  }
10619
10605
  }
@@ -10621,7 +10607,7 @@
10621
10607
  return self;
10622
10608
  }
10623
10609
  if (name in attrs.map) {
10624
- i = attrs.length;
10610
+ var i = attrs.length;
10625
10611
  while (i--) {
10626
10612
  if (attrs[i].name === name) {
10627
10613
  attrs[i].value = value;
@@ -10643,12 +10629,12 @@
10643
10629
  Node.prototype.clone = function () {
10644
10630
  var self = this;
10645
10631
  var clone = new Node(self.name, self.type);
10646
- var i, l, selfAttrs, selfAttr, cloneAttrs;
10632
+ var selfAttrs;
10647
10633
  if (selfAttrs = self.attributes) {
10648
- cloneAttrs = [];
10634
+ var cloneAttrs = [];
10649
10635
  cloneAttrs.map = {};
10650
- for (i = 0, l = selfAttrs.length; i < l; i++) {
10651
- selfAttr = selfAttrs[i];
10636
+ for (var i = 0, l = selfAttrs.length; i < l; i++) {
10637
+ var selfAttr = selfAttrs[i];
10652
10638
  if (selfAttr.name !== 'id') {
10653
10639
  cloneAttrs[cloneAttrs.length] = {
10654
10640
  name: selfAttr.name,
@@ -10671,9 +10657,8 @@
10671
10657
  };
10672
10658
  Node.prototype.unwrap = function () {
10673
10659
  var self = this;
10674
- var node, next;
10675
- for (node = self.firstChild; node;) {
10676
- next = node.next;
10660
+ for (var node = self.firstChild; node;) {
10661
+ var next = node.next;
10677
10662
  self.insert(node, self, true);
10678
10663
  node = next;
10679
10664
  }
@@ -10704,11 +10689,10 @@
10704
10689
  };
10705
10690
  Node.prototype.append = function (node) {
10706
10691
  var self = this;
10707
- var last;
10708
10692
  if (node.parent) {
10709
10693
  node.remove();
10710
10694
  }
10711
- last = self.lastChild;
10695
+ var last = self.lastChild;
10712
10696
  if (last) {
10713
10697
  last.next = node;
10714
10698
  node.prev = last;
@@ -10720,11 +10704,10 @@
10720
10704
  return node;
10721
10705
  };
10722
10706
  Node.prototype.insert = function (node, refNode, before) {
10723
- var parent;
10724
10707
  if (node.parent) {
10725
10708
  node.remove();
10726
10709
  }
10727
- parent = refNode.parent || this;
10710
+ var parent = refNode.parent || this;
10728
10711
  if (before) {
10729
10712
  if (refNode === parent.firstChild) {
10730
10713
  parent.firstChild = node;
@@ -10749,9 +10732,8 @@
10749
10732
  };
10750
10733
  Node.prototype.getAll = function (name) {
10751
10734
  var self = this;
10752
- var node;
10753
10735
  var collection = [];
10754
- for (node = self.firstChild; node; node = walk$2(node, self)) {
10736
+ for (var node = self.firstChild; node; node = walk$2(node, self)) {
10755
10737
  if (node.name === name) {
10756
10738
  collection.push(node);
10757
10739
  }
@@ -10760,15 +10742,14 @@
10760
10742
  };
10761
10743
  Node.prototype.empty = function () {
10762
10744
  var self = this;
10763
- var nodes, i, node;
10764
10745
  if (self.firstChild) {
10765
- nodes = [];
10766
- for (node = self.firstChild; node; node = walk$2(node, self)) {
10746
+ var nodes = [];
10747
+ for (var node = self.firstChild; node; node = walk$2(node, self)) {
10767
10748
  nodes.push(node);
10768
10749
  }
10769
- i = nodes.length;
10750
+ var i = nodes.length;
10770
10751
  while (i--) {
10771
- node = nodes[i];
10752
+ var node = nodes[i];
10772
10753
  node.parent = node.firstChild = node.lastChild = node.next = node.prev = null;
10773
10754
  }
10774
10755
  }
@@ -10776,9 +10757,11 @@
10776
10757
  return self;
10777
10758
  };
10778
10759
  Node.prototype.isEmpty = function (elements, whitespace, predicate) {
10760
+ if (whitespace === void 0) {
10761
+ whitespace = {};
10762
+ }
10779
10763
  var self = this;
10780
- var node = self.firstChild, i, name;
10781
- whitespace = whitespace || {};
10764
+ var node = self.firstChild;
10782
10765
  if (node) {
10783
10766
  do {
10784
10767
  if (node.type === 1) {
@@ -10788,9 +10771,9 @@
10788
10771
  if (elements[node.name]) {
10789
10772
  return false;
10790
10773
  }
10791
- i = node.attributes.length;
10774
+ var i = node.attributes.length;
10792
10775
  while (i--) {
10793
- name = node.attributes[i].name;
10776
+ var name = node.attributes[i].name;
10794
10777
  if (name === 'name' || name.indexOf('data-mce-bookmark') === 0) {
10795
10778
  return false;
10796
10779
  }
@@ -11630,8 +11613,8 @@
11630
11613
  var doc = owner(element).dom();
11631
11614
  return element.dom() === doc.activeElement;
11632
11615
  };
11633
- var active = function (_DOC) {
11634
- var doc = _DOC !== undefined ? _DOC.dom() : domGlobals.document;
11616
+ var active = function (_doc) {
11617
+ var doc = _doc !== undefined ? _doc.dom() : domGlobals.document;
11635
11618
  return Option.from(doc.activeElement).map(Element.fromDom);
11636
11619
  };
11637
11620
  var search = function (element) {
@@ -12307,6 +12290,38 @@
12307
12290
  editor.destroyed = true;
12308
12291
  };
12309
12292
 
12293
+ var hasOwnProperty$2 = Object.prototype.hasOwnProperty;
12294
+ var shallow$1 = function (old, nu) {
12295
+ return nu;
12296
+ };
12297
+ var deep$1 = function (old, nu) {
12298
+ var bothObjects = isObject(old) && isObject(nu);
12299
+ return bothObjects ? deepMerge(old, nu) : nu;
12300
+ };
12301
+ var baseMerge = function (merger) {
12302
+ return function () {
12303
+ var objects = new Array(arguments.length);
12304
+ for (var i = 0; i < objects.length; i++) {
12305
+ objects[i] = arguments[i];
12306
+ }
12307
+ if (objects.length === 0) {
12308
+ throw new Error('Can\'t merge zero objects');
12309
+ }
12310
+ var ret = {};
12311
+ for (var j = 0; j < objects.length; j++) {
12312
+ var curObject = objects[j];
12313
+ for (var key in curObject) {
12314
+ if (hasOwnProperty$2.call(curObject, key)) {
12315
+ ret[key] = merger(ret[key], curObject[key]);
12316
+ }
12317
+ }
12318
+ }
12319
+ return ret;
12320
+ };
12321
+ };
12322
+ var deepMerge = baseMerge(deep$1);
12323
+ var merge = baseMerge(shallow$1);
12324
+
12310
12325
  var sectionResult = Immutable('sections', 'settings');
12311
12326
  var detection = PlatformDetection$1.detect();
12312
12327
  var isTouch = detection.deviceType.isTouch();
@@ -12316,7 +12331,7 @@
12316
12331
  'autolink',
12317
12332
  'autosave'
12318
12333
  ];
12319
- var defaultMobileSettings = isPhone ? { theme: 'mobile' } : {};
12334
+ var defaultMobileSettings = { theme: 'mobile' };
12320
12335
  var normalizePlugins = function (plugins) {
12321
12336
  var pluginNames = isArray(plugins) ? plugins.join(' ') : plugins;
12322
12337
  var trimmedPlugins = map(isString(pluginNames) ? pluginNames.split(' ') : [], trim$2);
@@ -12334,6 +12349,9 @@
12334
12349
  return sectionResult(result.t, result.f);
12335
12350
  };
12336
12351
  var getSection = function (sectionResult, name, defaults) {
12352
+ if (defaults === void 0) {
12353
+ defaults = {};
12354
+ }
12337
12355
  var sections = sectionResult.sections();
12338
12356
  var sectionSettings = sections.hasOwnProperty(name) ? sections[name] : {};
12339
12357
  return Tools.extend({}, defaults, sectionSettings);
@@ -12398,11 +12416,12 @@
12398
12416
  };
12399
12417
  var isOnMobile = function (isTouchDevice, sectionResult) {
12400
12418
  var isInline = sectionResult.settings().inline;
12401
- return isTouchDevice && !isInline;
12419
+ return isTouchDevice && hasSection(sectionResult, 'mobile') && !isInline;
12402
12420
  };
12403
- var combineSettings = function (isTouchDevice, defaultSettings, defaultOverrideSettings, settings) {
12404
- var sectionResult = extractSections(['mobile'], settings);
12405
- var extendedSettings = Tools.extend(defaultSettings, defaultOverrideSettings, sectionResult.settings(), isOnMobile(isTouchDevice, sectionResult) ? getSection(sectionResult, 'mobile', defaultMobileSettings) : {}, {
12421
+ var combineSettings = function (isTouchDevice, isPhone, defaultSettings, defaultOverrideSettings, settings) {
12422
+ var defaultDeviceSettings = isPhone ? { mobile: defaultMobileSettings } : {};
12423
+ var sectionResult = extractSections(['mobile'], deepMerge(defaultDeviceSettings, settings));
12424
+ var extendedSettings = Tools.extend(defaultSettings, defaultOverrideSettings, sectionResult.settings(), isOnMobile(isTouchDevice, sectionResult) ? getSection(sectionResult, 'mobile') : {}, {
12406
12425
  validate: true,
12407
12426
  external_plugins: getExternalPlugins(defaultOverrideSettings, sectionResult.settings())
12408
12427
  });
@@ -12410,7 +12429,7 @@
12410
12429
  };
12411
12430
  var getEditorSettings = function (editor, id, documentBaseUrl, defaultOverrideSettings, settings) {
12412
12431
  var defaultSettings = getDefaultSettings(id, documentBaseUrl, editor);
12413
- return combineSettings(isTouch, defaultSettings, defaultOverrideSettings, settings);
12432
+ return combineSettings(isTouch, isPhone, defaultSettings, defaultOverrideSettings, settings);
12414
12433
  };
12415
12434
  var getFiltered = function (predicate, editor, name) {
12416
12435
  return Option.from(editor.settings[name]).filter(predicate);
@@ -15816,12 +15835,8 @@
15816
15835
  }
15817
15836
  };
15818
15837
  var deleteNormalized = function (elm, afterDeletePosOpt, normalizeWhitespace) {
15819
- var prevTextOpt = prevSibling(elm).filter(function (e) {
15820
- return NodeType.isText(e.dom());
15821
- });
15822
- var nextTextOpt = nextSibling(elm).filter(function (e) {
15823
- return NodeType.isText(e.dom());
15824
- });
15838
+ var prevTextOpt = prevSibling(elm).filter(isText);
15839
+ var nextTextOpt = nextSibling(elm).filter(isText);
15825
15840
  remove$1(elm);
15826
15841
  return liftN([
15827
15842
  prevTextOpt,
@@ -17635,33 +17650,6 @@
17635
17650
  };
17636
17651
  };
17637
17652
 
17638
- var hasOwnProperty$2 = Object.prototype.hasOwnProperty;
17639
- var shallow$1 = function (old, nu) {
17640
- return nu;
17641
- };
17642
- var baseMerge = function (merger) {
17643
- return function () {
17644
- var objects = new Array(arguments.length);
17645
- for (var i = 0; i < objects.length; i++) {
17646
- objects[i] = arguments[i];
17647
- }
17648
- if (objects.length === 0) {
17649
- throw new Error('Can\'t merge zero objects');
17650
- }
17651
- var ret = {};
17652
- for (var j = 0; j < objects.length; j++) {
17653
- var curObject = objects[j];
17654
- for (var key in curObject) {
17655
- if (hasOwnProperty$2.call(curObject, key)) {
17656
- ret[key] = merger(ret[key], curObject[key]);
17657
- }
17658
- }
17659
- }
17660
- return ret;
17661
- };
17662
- };
17663
- var merge = baseMerge(shallow$1);
17664
-
17665
17653
  var register$1 = function (htmlParser, settings, dom) {
17666
17654
  htmlParser.addAttributeFilter('data-mce-tabindex', function (nodes, name) {
17667
17655
  var i = nodes.length, node;
@@ -19076,18 +19064,6 @@
19076
19064
  return api$1.get(element);
19077
19065
  };
19078
19066
 
19079
- var attached = function (element, scope) {
19080
- var doc = scope || Element.fromDom(domGlobals.document.documentElement);
19081
- return ancestor(element, curry(eq, doc)).isSome();
19082
- };
19083
- var windowOf = function (element) {
19084
- var dom = element.dom();
19085
- if (dom === dom.window && element instanceof domGlobals.Window) {
19086
- return element;
19087
- }
19088
- return isDocument(element) ? dom.defaultView || dom.parentWindow : null;
19089
- };
19090
-
19091
19067
  var r = function (left, top) {
19092
19068
  var translate = function (x, y) {
19093
19069
  return r(left + x, top + y);
@@ -19110,7 +19086,7 @@
19110
19086
  var absolute = function (element) {
19111
19087
  var doc = element.dom().ownerDocument;
19112
19088
  var body = doc.body;
19113
- var win = windowOf(Element.fromDom(doc));
19089
+ var win = doc.defaultView;
19114
19090
  var html = doc.documentElement;
19115
19091
  var scrollTop = firstDefinedOrZero(win.pageYOffset, html.scrollTop);
19116
19092
  var scrollLeft = firstDefinedOrZero(win.pageXOffset, html.scrollLeft);
@@ -19122,11 +19098,10 @@
19122
19098
  var dom = element.dom();
19123
19099
  var doc = dom.ownerDocument;
19124
19100
  var body = doc.body;
19125
- var html = Element.fromDom(doc.documentElement);
19126
19101
  if (body === dom) {
19127
19102
  return Position$1(body.offsetLeft, body.offsetTop);
19128
19103
  }
19129
- if (!attached(element, html)) {
19104
+ if (!inBody(element)) {
19130
19105
  return Position$1(0, 0);
19131
19106
  }
19132
19107
  return boxPosition(dom);
@@ -20093,7 +20068,8 @@
20093
20068
  }
20094
20069
  };
20095
20070
  function SelectorChanged (dom, editor) {
20096
- var selectorChangedData, currentSelectors;
20071
+ var selectorChangedData;
20072
+ var currentSelectors;
20097
20073
  return {
20098
20074
  selectorChangedWithUnbind: function (selector, callback) {
20099
20075
  if (!selectorChangedData) {
@@ -20163,8 +20139,10 @@
20163
20139
  }
20164
20140
  };
20165
20141
  var Selection$1 = function (dom, win, serializer, editor) {
20166
- var bookmarkManager, controlSelection;
20167
- var selectedRange, explicitRange;
20142
+ var bookmarkManager;
20143
+ var controlSelection;
20144
+ var selectedRange;
20145
+ var explicitRange;
20168
20146
  var selectorChangedWithUnbind = SelectorChanged(dom, editor).selectorChangedWithUnbind;
20169
20147
  var setCursorLocation = function (node, offset) {
20170
20148
  var rng = dom.createRng();
@@ -27198,8 +27176,8 @@
27198
27176
  suffix: null,
27199
27177
  $: DomQuery,
27200
27178
  majorVersion: '5',
27201
- minorVersion: '0.13',
27202
- releaseDate: '2019-08-06',
27179
+ minorVersion: '0.14',
27180
+ releaseDate: '2019-08-19',
27203
27181
  editors: legacyEditors,
27204
27182
  i18n: I18n,
27205
27183
  activeEditor: null,