tinymce-rails 5.0.5 → 5.0.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/assets/source/tinymce/tinymce.js +1599 -1199
- data/lib/tinymce/rails/version.rb +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/advlist/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/anchor/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/autolink/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/autoresize/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/autosave/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/bbcode/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/charmap/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/code/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/codesample/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/colorpicker/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/contextmenu/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/directionality/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/emoticons/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/fullpage/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/fullscreen/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/help/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/hr/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/image/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/imagetools/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/importcss/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/insertdatetime/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/legacyoutput/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/link/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/lists/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/media/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/nonbreaking/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/noneditable/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/pagebreak/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/paste/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/preview/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/print/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/quickbars/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/save/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/searchreplace/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/spellchecker/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/tabfocus/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/table/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/template/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/textcolor/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/textpattern/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/toc/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/visualblocks/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/visualchars/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/plugins/wordcount/plugin.js +2 -2
- data/vendor/assets/javascripts/tinymce/skins/content/default/content.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/content/default/content.min.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/content/document/content.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/content/document/content.min.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/content/writer/content.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/content/writer/content.min.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/content.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/content.inline.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/content.inline.min.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/content.min.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/content.mobile.css +7 -0
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/content.mobile.min.css +7 -0
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.min.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.mobile.css +7 -0
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.mobile.min.css +7 -0
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/tinymce-mobile.woff +0 -0
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide/content.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide/content.inline.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide/content.inline.min.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide/content.min.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide/content.mobile.css +7 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide/content.mobile.min.css +7 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.min.css +1 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.mobile.css +7 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.mobile.min.css +7 -1
- data/vendor/assets/javascripts/tinymce/skins/ui/oxide/tinymce-mobile.woff +0 -0
- data/vendor/assets/javascripts/tinymce/themes/mobile/theme.js +2 -2
- data/vendor/assets/javascripts/tinymce/themes/silver/theme.js +2 -2
- data/vendor/assets/javascripts/tinymce/tinymce.js +2 -2
- metadata +8 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0b4b337972d39d3ac9e105de1b323083d52c654dcb3b127156f12a5f3ef0f93b
|
4
|
+
data.tar.gz: 1e2c278b7aa341bb3517a31eb77e182a40f3026f02a7fd4d98c0d6bdc8759717
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 31369d3ba439cbc04b4006d621c777a20ccbd0417d2bd175f119e92aa66210157bd3edfc584aa4fa828c9c493df27103f46197019e99326a539e92b01361151c
|
7
|
+
data.tar.gz: c2c192c1c0203280ebac10ea212f1490ba368c8d34e051d24836a9886e83fccdd5c5b8d0dd1cc11227d512c8f7d648c3a19f50ada78d9240400321af02465777
|
@@ -4,24 +4,15 @@
|
|
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.
|
7
|
+
* Version: 5.0.9 (2019-06-26)
|
8
8
|
*/
|
9
|
-
(function () {
|
10
9
|
(function (domGlobals) {
|
11
10
|
'use strict';
|
12
11
|
|
13
12
|
var noop = function () {
|
14
|
-
var args = [];
|
15
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
16
|
-
args[_i] = arguments[_i];
|
17
|
-
}
|
18
13
|
};
|
19
14
|
var noarg = function (f) {
|
20
15
|
return function () {
|
21
|
-
var args = [];
|
22
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
23
|
-
args[_i] = arguments[_i];
|
24
|
-
}
|
25
16
|
return f();
|
26
17
|
};
|
27
18
|
};
|
@@ -250,6 +241,7 @@
|
|
250
241
|
var isFunction = isType('function');
|
251
242
|
var isNumber = isType('number');
|
252
243
|
|
244
|
+
var slice = Array.prototype.slice;
|
253
245
|
var rawIndexOf = function () {
|
254
246
|
var pIndexOf = Array.prototype.indexOf;
|
255
247
|
var fastIndex = function (xs, x) {
|
@@ -280,7 +272,7 @@
|
|
280
272
|
var chunk = function (array, size) {
|
281
273
|
var r = [];
|
282
274
|
for (var i = 0; i < array.length; i += size) {
|
283
|
-
var s =
|
275
|
+
var s = slice.call(array, i, i + size);
|
284
276
|
r.push(s);
|
285
277
|
}
|
286
278
|
return r;
|
@@ -418,7 +410,6 @@
|
|
418
410
|
return x === a2[i];
|
419
411
|
});
|
420
412
|
};
|
421
|
-
var slice = Array.prototype.slice;
|
422
413
|
var reverse = function (xs) {
|
423
414
|
var r = slice.call(xs, 0);
|
424
415
|
r.reverse();
|
@@ -485,471 +476,827 @@
|
|
485
476
|
from: from$1
|
486
477
|
});
|
487
478
|
|
488
|
-
var
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
var parts = p.split('.');
|
498
|
-
return path(parts, scope);
|
499
|
-
};
|
500
|
-
|
501
|
-
var unsafe = function (name, scope) {
|
502
|
-
return resolve(name, scope);
|
503
|
-
};
|
504
|
-
var getOrDie = function (name, scope) {
|
505
|
-
var actual = unsafe(name, scope);
|
506
|
-
if (actual === undefined || actual === null)
|
507
|
-
throw name + ' not available on this browser';
|
508
|
-
return actual;
|
509
|
-
};
|
510
|
-
var Global$1 = { getOrDie: getOrDie };
|
511
|
-
|
512
|
-
var url = function () {
|
513
|
-
return Global$1.getOrDie('URL');
|
514
|
-
};
|
515
|
-
var createObjectURL = function (blob) {
|
516
|
-
return url().createObjectURL(blob);
|
517
|
-
};
|
518
|
-
var revokeObjectURL = function (u) {
|
519
|
-
url().revokeObjectURL(u);
|
520
|
-
};
|
521
|
-
var URL = {
|
522
|
-
createObjectURL: createObjectURL,
|
523
|
-
revokeObjectURL: revokeObjectURL
|
524
|
-
};
|
525
|
-
|
526
|
-
var nav = domGlobals.navigator, userAgent = nav.userAgent;
|
527
|
-
var opera, webkit, ie, ie11, ie12, gecko, mac, iDevice, android, fileApi, phone, tablet, windowsPhone;
|
528
|
-
var matchMediaQuery = function (query) {
|
529
|
-
return 'matchMedia' in domGlobals.window ? domGlobals.matchMedia(query).matches : false;
|
530
|
-
};
|
531
|
-
opera = false;
|
532
|
-
android = /Android/.test(userAgent);
|
533
|
-
webkit = /WebKit/.test(userAgent);
|
534
|
-
ie = !webkit && !opera && /MSIE/gi.test(userAgent) && /Explorer/gi.test(nav.appName);
|
535
|
-
ie = ie && /MSIE (\w+)\./.exec(userAgent)[1];
|
536
|
-
ie11 = userAgent.indexOf('Trident/') !== -1 && (userAgent.indexOf('rv:') !== -1 || nav.appName.indexOf('Netscape') !== -1) ? 11 : false;
|
537
|
-
ie12 = userAgent.indexOf('Edge/') !== -1 && !ie && !ie11 ? 12 : false;
|
538
|
-
ie = ie || ie11 || ie12;
|
539
|
-
gecko = !webkit && !ie11 && /Gecko/.test(userAgent);
|
540
|
-
mac = userAgent.indexOf('Mac') !== -1;
|
541
|
-
iDevice = /(iPad|iPhone)/.test(userAgent);
|
542
|
-
fileApi = 'FormData' in domGlobals.window && 'FileReader' in domGlobals.window && 'URL' in domGlobals.window && !!URL.createObjectURL;
|
543
|
-
phone = matchMediaQuery('only screen and (max-device-width: 480px)') && (android || iDevice);
|
544
|
-
tablet = matchMediaQuery('only screen and (min-width: 800px)') && (android || iDevice);
|
545
|
-
windowsPhone = userAgent.indexOf('Windows Phone') !== -1;
|
546
|
-
if (ie12) {
|
547
|
-
webkit = false;
|
548
|
-
}
|
549
|
-
var contentEditable = !iDevice || fileApi || parseInt(userAgent.match(/AppleWebKit\/(\d*)/)[1], 10) >= 534;
|
550
|
-
var Env = {
|
551
|
-
opera: opera,
|
552
|
-
webkit: webkit,
|
553
|
-
ie: ie,
|
554
|
-
gecko: gecko,
|
555
|
-
mac: mac,
|
556
|
-
iOS: iDevice,
|
557
|
-
android: android,
|
558
|
-
contentEditable: contentEditable,
|
559
|
-
transparentSrc: 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7',
|
560
|
-
caretAfter: ie !== 8,
|
561
|
-
range: domGlobals.window.getSelection && 'Range' in domGlobals.window,
|
562
|
-
documentMode: ie && !ie12 ? domGlobals.document.documentMode || 7 : 10,
|
563
|
-
fileApi: fileApi,
|
564
|
-
ceFalse: ie === false || ie > 8,
|
565
|
-
cacheSuffix: null,
|
566
|
-
container: null,
|
567
|
-
overrideViewPort: null,
|
568
|
-
experimentalShadowDom: false,
|
569
|
-
canHaveCSP: ie === false || ie > 11,
|
570
|
-
desktop: !phone && !tablet,
|
571
|
-
windowsPhone: windowsPhone
|
479
|
+
var extendStatics = function (d, b) {
|
480
|
+
extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function (d, b) {
|
481
|
+
d.__proto__ = b;
|
482
|
+
} || function (d, b) {
|
483
|
+
for (var p in b)
|
484
|
+
if (b.hasOwnProperty(p))
|
485
|
+
d[p] = b[p];
|
486
|
+
};
|
487
|
+
return extendStatics(d, b);
|
572
488
|
};
|
573
|
-
|
574
|
-
|
575
|
-
function
|
576
|
-
|
577
|
-
fn.apply(thisArg, arguments);
|
578
|
-
};
|
489
|
+
function __extends(d, b) {
|
490
|
+
extendStatics(d, b);
|
491
|
+
function __() {
|
492
|
+
this.constructor = d;
|
579
493
|
}
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
494
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
495
|
+
}
|
496
|
+
var __assign = function () {
|
497
|
+
__assign = Object.assign || function __assign(t) {
|
498
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
499
|
+
s = arguments[i];
|
500
|
+
for (var p in s)
|
501
|
+
if (Object.prototype.hasOwnProperty.call(s, p))
|
502
|
+
t[p] = s[p];
|
589
503
|
}
|
590
|
-
|
591
|
-
this._value = null;
|
592
|
-
this._deferreds = [];
|
593
|
-
doResolve(fn, bind(resolve, this), bind(reject, this));
|
504
|
+
return t;
|
594
505
|
};
|
595
|
-
|
596
|
-
|
506
|
+
return __assign.apply(this, arguments);
|
507
|
+
};
|
508
|
+
function __rest(s, e) {
|
509
|
+
var t = {};
|
510
|
+
for (var p in s)
|
511
|
+
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
512
|
+
t[p] = s[p];
|
513
|
+
if (s != null && typeof Object.getOwnPropertySymbols === 'function')
|
514
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++)
|
515
|
+
if (e.indexOf(p[i]) < 0)
|
516
|
+
t[p[i]] = s[p[i]];
|
517
|
+
return t;
|
518
|
+
}
|
519
|
+
function __decorate(decorators, target, key, desc) {
|
520
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
521
|
+
if (typeof Reflect === 'object' && typeof Reflect.decorate === 'function')
|
522
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
523
|
+
else
|
524
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
525
|
+
if (d = decorators[i])
|
526
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
527
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
528
|
+
}
|
529
|
+
function __param(paramIndex, decorator) {
|
530
|
+
return function (target, key) {
|
531
|
+
decorator(target, key, paramIndex);
|
597
532
|
};
|
598
|
-
|
599
|
-
|
600
|
-
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
|
605
|
-
|
606
|
-
if (cb === null) {
|
607
|
-
(me._state ? deferred.resolve : deferred.reject)(me._value);
|
608
|
-
return;
|
609
|
-
}
|
610
|
-
var ret;
|
533
|
+
}
|
534
|
+
function __metadata(metadataKey, metadataValue) {
|
535
|
+
if (typeof Reflect === 'object' && typeof Reflect.metadata === 'function')
|
536
|
+
return Reflect.metadata(metadataKey, metadataValue);
|
537
|
+
}
|
538
|
+
function __awaiter(thisArg, _arguments, P, generator) {
|
539
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
540
|
+
function fulfilled(value) {
|
611
541
|
try {
|
612
|
-
|
542
|
+
step(generator.next(value));
|
613
543
|
} catch (e) {
|
614
|
-
|
615
|
-
return;
|
616
|
-
}
|
617
|
-
deferred.resolve(ret);
|
618
|
-
});
|
619
|
-
}
|
620
|
-
function resolve(newValue) {
|
621
|
-
try {
|
622
|
-
if (newValue === this) {
|
623
|
-
throw new TypeError('A promise cannot be resolved with itself.');
|
544
|
+
reject(e);
|
624
545
|
}
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
|
546
|
+
}
|
547
|
+
function rejected(value) {
|
548
|
+
try {
|
549
|
+
step(generator['throw'](value));
|
550
|
+
} catch (e) {
|
551
|
+
reject(e);
|
631
552
|
}
|
632
|
-
this._state = true;
|
633
|
-
this._value = newValue;
|
634
|
-
finale.call(this);
|
635
|
-
} catch (e) {
|
636
|
-
reject.call(this, e);
|
637
553
|
}
|
638
|
-
|
639
|
-
|
640
|
-
|
641
|
-
|
642
|
-
finale.call(this);
|
643
|
-
}
|
644
|
-
function finale() {
|
645
|
-
for (var i = 0, len = this._deferreds.length; i < len; i++) {
|
646
|
-
handle.call(this, this._deferreds[i]);
|
554
|
+
function step(result) {
|
555
|
+
result.done ? resolve(result.value) : new P(function (resolve) {
|
556
|
+
resolve(result.value);
|
557
|
+
}).then(fulfilled, rejected);
|
647
558
|
}
|
648
|
-
|
559
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
560
|
+
});
|
561
|
+
}
|
562
|
+
function __generator(thisArg, body) {
|
563
|
+
var _ = {
|
564
|
+
label: 0,
|
565
|
+
sent: function () {
|
566
|
+
if (t[0] & 1)
|
567
|
+
throw t[1];
|
568
|
+
return t[1];
|
569
|
+
},
|
570
|
+
trys: [],
|
571
|
+
ops: []
|
572
|
+
}, f, y, t, g;
|
573
|
+
return g = {
|
574
|
+
next: verb(0),
|
575
|
+
'throw': verb(1),
|
576
|
+
'return': verb(2)
|
577
|
+
}, typeof Symbol === 'function' && (g[Symbol.iterator] = function () {
|
578
|
+
return this;
|
579
|
+
}), g;
|
580
|
+
function verb(n) {
|
581
|
+
return function (v) {
|
582
|
+
return step([
|
583
|
+
n,
|
584
|
+
v
|
585
|
+
]);
|
586
|
+
};
|
649
587
|
}
|
650
|
-
function
|
651
|
-
|
652
|
-
|
653
|
-
|
654
|
-
|
655
|
-
|
656
|
-
|
657
|
-
|
658
|
-
|
659
|
-
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
|
669
|
-
|
670
|
-
|
671
|
-
|
672
|
-
|
673
|
-
|
674
|
-
|
675
|
-
|
676
|
-
|
677
|
-
|
678
|
-
|
679
|
-
|
680
|
-
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
|
685
|
-
|
686
|
-
handle.call(me, new Handler(onFulfilled, onRejected, resolve, reject));
|
687
|
-
});
|
688
|
-
};
|
689
|
-
Promise.all = function () {
|
690
|
-
var args = Array.prototype.slice.call(arguments.length === 1 && isArray(arguments[0]) ? arguments[0] : arguments);
|
691
|
-
return new Promise(function (resolve, reject) {
|
692
|
-
if (args.length === 0) {
|
693
|
-
return resolve([]);
|
694
|
-
}
|
695
|
-
var remaining = args.length;
|
696
|
-
function res(i, val) {
|
697
|
-
try {
|
698
|
-
if (val && (typeof val === 'object' || typeof val === 'function')) {
|
699
|
-
var then = val.then;
|
700
|
-
if (typeof then === 'function') {
|
701
|
-
then.call(val, function (val) {
|
702
|
-
res(i, val);
|
703
|
-
}, reject);
|
704
|
-
return;
|
705
|
-
}
|
588
|
+
function step(op) {
|
589
|
+
if (f)
|
590
|
+
throw new TypeError('Generator is already executing.');
|
591
|
+
while (_)
|
592
|
+
try {
|
593
|
+
if (f = 1, y && (t = op[0] & 2 ? y['return'] : op[0] ? y['throw'] || ((t = y['return']) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
|
594
|
+
return t;
|
595
|
+
if (y = 0, t)
|
596
|
+
op = [
|
597
|
+
op[0] & 2,
|
598
|
+
t.value
|
599
|
+
];
|
600
|
+
switch (op[0]) {
|
601
|
+
case 0:
|
602
|
+
case 1:
|
603
|
+
t = op;
|
604
|
+
break;
|
605
|
+
case 4:
|
606
|
+
_.label++;
|
607
|
+
return {
|
608
|
+
value: op[1],
|
609
|
+
done: false
|
610
|
+
};
|
611
|
+
case 5:
|
612
|
+
_.label++;
|
613
|
+
y = op[1];
|
614
|
+
op = [0];
|
615
|
+
continue;
|
616
|
+
case 7:
|
617
|
+
op = _.ops.pop();
|
618
|
+
_.trys.pop();
|
619
|
+
continue;
|
620
|
+
default:
|
621
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
622
|
+
_ = 0;
|
623
|
+
continue;
|
706
624
|
}
|
707
|
-
|
708
|
-
|
709
|
-
|
625
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
626
|
+
_.label = op[1];
|
627
|
+
break;
|
710
628
|
}
|
711
|
-
|
712
|
-
|
629
|
+
if (op[0] === 6 && _.label < t[1]) {
|
630
|
+
_.label = t[1];
|
631
|
+
t = op;
|
632
|
+
break;
|
633
|
+
}
|
634
|
+
if (t && _.label < t[2]) {
|
635
|
+
_.label = t[2];
|
636
|
+
_.ops.push(op);
|
637
|
+
break;
|
638
|
+
}
|
639
|
+
if (t[2])
|
640
|
+
_.ops.pop();
|
641
|
+
_.trys.pop();
|
642
|
+
continue;
|
713
643
|
}
|
644
|
+
op = body.call(thisArg, _);
|
645
|
+
} catch (e) {
|
646
|
+
op = [
|
647
|
+
6,
|
648
|
+
e
|
649
|
+
];
|
650
|
+
y = 0;
|
651
|
+
} finally {
|
652
|
+
f = t = 0;
|
714
653
|
}
|
715
|
-
|
716
|
-
|
717
|
-
|
718
|
-
|
719
|
-
|
720
|
-
|
721
|
-
|
722
|
-
|
654
|
+
if (op[0] & 5)
|
655
|
+
throw op[1];
|
656
|
+
return {
|
657
|
+
value: op[0] ? op[1] : void 0,
|
658
|
+
done: true
|
659
|
+
};
|
660
|
+
}
|
661
|
+
}
|
662
|
+
function __exportStar(m, exports) {
|
663
|
+
for (var p in m)
|
664
|
+
if (!exports.hasOwnProperty(p))
|
665
|
+
exports[p] = m[p];
|
666
|
+
}
|
667
|
+
function __values(o) {
|
668
|
+
var m = typeof Symbol === 'function' && o[Symbol.iterator], i = 0;
|
669
|
+
if (m)
|
670
|
+
return m.call(o);
|
671
|
+
return {
|
672
|
+
next: function () {
|
673
|
+
if (o && i >= o.length)
|
674
|
+
o = void 0;
|
675
|
+
return {
|
676
|
+
value: o && o[i++],
|
677
|
+
done: !o
|
678
|
+
};
|
723
679
|
}
|
724
|
-
return new Promise(function (resolve) {
|
725
|
-
resolve(value);
|
726
|
-
});
|
727
|
-
};
|
728
|
-
Promise.reject = function (value) {
|
729
|
-
return new Promise(function (resolve, reject) {
|
730
|
-
reject(value);
|
731
|
-
});
|
732
|
-
};
|
733
|
-
Promise.race = function (values) {
|
734
|
-
return new Promise(function (resolve, reject) {
|
735
|
-
for (var i = 0, len = values.length; i < len; i++) {
|
736
|
-
values[i].then(resolve, reject);
|
737
|
-
}
|
738
|
-
});
|
739
|
-
};
|
740
|
-
return Promise;
|
741
|
-
};
|
742
|
-
var promiseObj = window.Promise ? window.Promise : promise();
|
743
|
-
|
744
|
-
var requestAnimationFramePromise;
|
745
|
-
var requestAnimationFrame = function (callback, element) {
|
746
|
-
var i, requestAnimationFrameFunc = domGlobals.window.requestAnimationFrame;
|
747
|
-
var vendors = [
|
748
|
-
'ms',
|
749
|
-
'moz',
|
750
|
-
'webkit'
|
751
|
-
];
|
752
|
-
var featurefill = function (callback) {
|
753
|
-
domGlobals.window.setTimeout(callback, 0);
|
754
680
|
};
|
755
|
-
|
756
|
-
|
681
|
+
}
|
682
|
+
function __read(o, n) {
|
683
|
+
var m = typeof Symbol === 'function' && o[Symbol.iterator];
|
684
|
+
if (!m)
|
685
|
+
return o;
|
686
|
+
var i = m.call(o), r, ar = [], e;
|
687
|
+
try {
|
688
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
|
689
|
+
ar.push(r.value);
|
690
|
+
} catch (error) {
|
691
|
+
e = { error: error };
|
692
|
+
} finally {
|
693
|
+
try {
|
694
|
+
if (r && !r.done && (m = i['return']))
|
695
|
+
m.call(i);
|
696
|
+
} finally {
|
697
|
+
if (e)
|
698
|
+
throw e.error;
|
699
|
+
}
|
757
700
|
}
|
758
|
-
|
759
|
-
|
701
|
+
return ar;
|
702
|
+
}
|
703
|
+
function __spread() {
|
704
|
+
for (var ar = [], i = 0; i < arguments.length; i++)
|
705
|
+
ar = ar.concat(__read(arguments[i]));
|
706
|
+
return ar;
|
707
|
+
}
|
708
|
+
function __await(v) {
|
709
|
+
return this instanceof __await ? (this.v = v, this) : new __await(v);
|
710
|
+
}
|
711
|
+
function __asyncGenerator(thisArg, _arguments, generator) {
|
712
|
+
if (!Symbol.asyncIterator)
|
713
|
+
throw new TypeError('Symbol.asyncIterator is not defined.');
|
714
|
+
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
715
|
+
return i = {}, verb('next'), verb('throw'), verb('return'), i[Symbol.asyncIterator] = function () {
|
716
|
+
return this;
|
717
|
+
}, i;
|
718
|
+
function verb(n) {
|
719
|
+
if (g[n])
|
720
|
+
i[n] = function (v) {
|
721
|
+
return new Promise(function (a, b) {
|
722
|
+
q.push([
|
723
|
+
n,
|
724
|
+
v,
|
725
|
+
a,
|
726
|
+
b
|
727
|
+
]) > 1 || resume(n, v);
|
728
|
+
});
|
729
|
+
};
|
760
730
|
}
|
761
|
-
|
762
|
-
|
763
|
-
|
764
|
-
|
765
|
-
|
731
|
+
function resume(n, v) {
|
732
|
+
try {
|
733
|
+
step(g[n](v));
|
734
|
+
} catch (e) {
|
735
|
+
settle(q[0][3], e);
|
736
|
+
}
|
766
737
|
}
|
767
|
-
|
768
|
-
|
769
|
-
var wrappedSetInterval = function (callback, time) {
|
770
|
-
if (typeof time !== 'number') {
|
771
|
-
time = 1;
|
738
|
+
function step(r) {
|
739
|
+
r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r);
|
772
740
|
}
|
773
|
-
|
774
|
-
|
775
|
-
|
776
|
-
|
741
|
+
function fulfill(value) {
|
742
|
+
resume('next', value);
|
743
|
+
}
|
744
|
+
function reject(value) {
|
745
|
+
resume('throw', value);
|
746
|
+
}
|
747
|
+
function settle(f, v) {
|
748
|
+
if (f(v), q.shift(), q.length)
|
749
|
+
resume(q[0][0], q[0][1]);
|
750
|
+
}
|
751
|
+
}
|
752
|
+
function __asyncDelegator(o) {
|
753
|
+
var i, p;
|
754
|
+
return i = {}, verb('next'), verb('throw', function (e) {
|
755
|
+
throw e;
|
756
|
+
}), verb('return'), i[Symbol.iterator] = function () {
|
757
|
+
return this;
|
758
|
+
}, i;
|
759
|
+
function verb(n, f) {
|
760
|
+
i[n] = o[n] ? function (v) {
|
761
|
+
return (p = !p) ? {
|
762
|
+
value: __await(o[n](v)),
|
763
|
+
done: n === 'return'
|
764
|
+
} : f ? f(v) : v;
|
765
|
+
} : f;
|
766
|
+
}
|
767
|
+
}
|
768
|
+
function __asyncValues(o) {
|
769
|
+
if (!Symbol.asyncIterator)
|
770
|
+
throw new TypeError('Symbol.asyncIterator is not defined.');
|
771
|
+
var m = o[Symbol.asyncIterator], i;
|
772
|
+
return m ? m.call(o) : (o = typeof __values === 'function' ? __values(o) : o[Symbol.iterator](), i = {}, verb('next'), verb('throw'), verb('return'), i[Symbol.asyncIterator] = function () {
|
773
|
+
return this;
|
774
|
+
}, i);
|
775
|
+
function verb(n) {
|
776
|
+
i[n] = o[n] && function (v) {
|
777
|
+
return new Promise(function (resolve, reject) {
|
778
|
+
v = o[n](v), settle(resolve, reject, v.done, v.value);
|
779
|
+
});
|
780
|
+
};
|
781
|
+
}
|
782
|
+
function settle(resolve, reject, d, v) {
|
783
|
+
Promise.resolve(v).then(function (v) {
|
784
|
+
resolve({
|
785
|
+
value: v,
|
786
|
+
done: d
|
787
|
+
});
|
788
|
+
}, reject);
|
789
|
+
}
|
790
|
+
}
|
791
|
+
function __makeTemplateObject(cooked, raw) {
|
792
|
+
if (Object.defineProperty) {
|
793
|
+
Object.defineProperty(cooked, 'raw', { value: raw });
|
794
|
+
} else {
|
795
|
+
cooked.raw = raw;
|
796
|
+
}
|
797
|
+
return cooked;
|
798
|
+
}
|
799
|
+
function __importStar(mod) {
|
800
|
+
if (mod && mod.__esModule)
|
801
|
+
return mod;
|
802
|
+
var result = {};
|
803
|
+
if (mod != null)
|
804
|
+
for (var k in mod)
|
805
|
+
if (Object.hasOwnProperty.call(mod, k))
|
806
|
+
result[k] = mod[k];
|
807
|
+
result.default = mod;
|
808
|
+
return result;
|
809
|
+
}
|
810
|
+
function __importDefault(mod) {
|
811
|
+
return mod && mod.__esModule ? mod : { default: mod };
|
812
|
+
}
|
813
|
+
|
814
|
+
var tslib_1 = /*#__PURE__*/Object.freeze({
|
815
|
+
__extends: __extends,
|
816
|
+
get __assign () { return __assign; },
|
817
|
+
__rest: __rest,
|
818
|
+
__decorate: __decorate,
|
819
|
+
__param: __param,
|
820
|
+
__metadata: __metadata,
|
821
|
+
__awaiter: __awaiter,
|
822
|
+
__generator: __generator,
|
823
|
+
__exportStar: __exportStar,
|
824
|
+
__values: __values,
|
825
|
+
__read: __read,
|
826
|
+
__spread: __spread,
|
827
|
+
__await: __await,
|
828
|
+
__asyncGenerator: __asyncGenerator,
|
829
|
+
__asyncDelegator: __asyncDelegator,
|
830
|
+
__asyncValues: __asyncValues,
|
831
|
+
__makeTemplateObject: __makeTemplateObject,
|
832
|
+
__importStar: __importStar,
|
833
|
+
__importDefault: __importDefault
|
834
|
+
});
|
835
|
+
|
836
|
+
var Global = typeof domGlobals.window !== 'undefined' ? domGlobals.window : Function('return this;')();
|
837
|
+
|
838
|
+
var path = function (parts, scope) {
|
839
|
+
var o = scope !== undefined && scope !== null ? scope : Global;
|
840
|
+
for (var i = 0; i < parts.length && o !== undefined && o !== null; ++i)
|
841
|
+
o = o[parts[i]];
|
842
|
+
return o;
|
777
843
|
};
|
778
|
-
var
|
779
|
-
|
844
|
+
var resolve = function (p, scope) {
|
845
|
+
var parts = p.split('.');
|
846
|
+
return path(parts, scope);
|
780
847
|
};
|
781
|
-
|
782
|
-
|
783
|
-
|
784
|
-
var args = [];
|
785
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
786
|
-
args[_i] = arguments[_i];
|
787
|
-
}
|
788
|
-
domGlobals.clearTimeout(timer);
|
789
|
-
timer = wrappedSetTimeout(function () {
|
790
|
-
callback.apply(this, args);
|
791
|
-
}, time);
|
792
|
-
};
|
793
|
-
func.stop = function () {
|
794
|
-
domGlobals.clearTimeout(timer);
|
795
|
-
};
|
796
|
-
return func;
|
848
|
+
|
849
|
+
var unsafe = function (name, scope) {
|
850
|
+
return resolve(name, scope);
|
797
851
|
};
|
798
|
-
var
|
799
|
-
|
800
|
-
|
801
|
-
|
802
|
-
|
803
|
-
}
|
804
|
-
requestAnimationFramePromise = new promiseObj(function (resolve) {
|
805
|
-
if (!element) {
|
806
|
-
element = domGlobals.document.body;
|
807
|
-
}
|
808
|
-
requestAnimationFrame(resolve, element);
|
809
|
-
}).then(callback);
|
810
|
-
},
|
811
|
-
setTimeout: wrappedSetTimeout,
|
812
|
-
setInterval: wrappedSetInterval,
|
813
|
-
setEditorTimeout: function (editor, callback, time) {
|
814
|
-
return wrappedSetTimeout(function () {
|
815
|
-
if (!editor.removed) {
|
816
|
-
callback();
|
817
|
-
}
|
818
|
-
}, time);
|
819
|
-
},
|
820
|
-
setEditorInterval: function (editor, callback, time) {
|
821
|
-
var timer;
|
822
|
-
timer = wrappedSetInterval(function () {
|
823
|
-
if (!editor.removed) {
|
824
|
-
callback();
|
825
|
-
} else {
|
826
|
-
domGlobals.clearInterval(timer);
|
827
|
-
}
|
828
|
-
}, time);
|
829
|
-
return timer;
|
830
|
-
},
|
831
|
-
debounce: debounce,
|
832
|
-
throttle: debounce,
|
833
|
-
clearInterval: wrappedClearInterval,
|
834
|
-
clearTimeout: wrappedClearTimeout
|
852
|
+
var getOrDie = function (name, scope) {
|
853
|
+
var actual = unsafe(name, scope);
|
854
|
+
if (actual === undefined || actual === null)
|
855
|
+
throw name + ' not available on this browser';
|
856
|
+
return actual;
|
835
857
|
};
|
858
|
+
var Global$1 = { getOrDie: getOrDie };
|
836
859
|
|
837
|
-
var
|
838
|
-
|
839
|
-
var deprecated = {
|
840
|
-
keyLocation: 1,
|
841
|
-
layerX: 1,
|
842
|
-
layerY: 1,
|
843
|
-
returnValue: 1,
|
844
|
-
webkitMovementX: 1,
|
845
|
-
webkitMovementY: 1,
|
846
|
-
keyIdentifier: 1
|
860
|
+
var url = function () {
|
861
|
+
return Global$1.getOrDie('URL');
|
847
862
|
};
|
848
|
-
var
|
849
|
-
return
|
863
|
+
var createObjectURL = function (blob) {
|
864
|
+
return url().createObjectURL(blob);
|
850
865
|
};
|
851
|
-
var
|
852
|
-
|
866
|
+
var revokeObjectURL = function (u) {
|
867
|
+
url().revokeObjectURL(u);
|
853
868
|
};
|
854
|
-
var
|
855
|
-
|
869
|
+
var URL = {
|
870
|
+
createObjectURL: createObjectURL,
|
871
|
+
revokeObjectURL: revokeObjectURL
|
856
872
|
};
|
857
|
-
|
858
|
-
|
859
|
-
|
860
|
-
|
861
|
-
|
862
|
-
}
|
873
|
+
|
874
|
+
var nav = domGlobals.navigator, userAgent = nav.userAgent;
|
875
|
+
var opera, webkit, ie, ie11, ie12, gecko, mac, iDevice, android, fileApi, phone, tablet, windowsPhone;
|
876
|
+
var matchMediaQuery = function (query) {
|
877
|
+
return 'matchMedia' in domGlobals.window ? domGlobals.matchMedia(query).matches : false;
|
863
878
|
};
|
864
|
-
|
865
|
-
|
866
|
-
|
867
|
-
|
868
|
-
|
869
|
-
|
879
|
+
opera = false;
|
880
|
+
android = /Android/.test(userAgent);
|
881
|
+
webkit = /WebKit/.test(userAgent);
|
882
|
+
ie = !webkit && !opera && /MSIE/gi.test(userAgent) && /Explorer/gi.test(nav.appName);
|
883
|
+
ie = ie && /MSIE (\w+)\./.exec(userAgent)[1];
|
884
|
+
ie11 = userAgent.indexOf('Trident/') !== -1 && (userAgent.indexOf('rv:') !== -1 || nav.appName.indexOf('Netscape') !== -1) ? 11 : false;
|
885
|
+
ie12 = userAgent.indexOf('Edge/') !== -1 && !ie && !ie11 ? 12 : false;
|
886
|
+
ie = ie || ie11 || ie12;
|
887
|
+
gecko = !webkit && !ie11 && /Gecko/.test(userAgent);
|
888
|
+
mac = userAgent.indexOf('Mac') !== -1;
|
889
|
+
iDevice = /(iPad|iPhone)/.test(userAgent);
|
890
|
+
fileApi = 'FormData' in domGlobals.window && 'FileReader' in domGlobals.window && 'URL' in domGlobals.window && !!URL.createObjectURL;
|
891
|
+
phone = matchMediaQuery('only screen and (max-device-width: 480px)') && (android || iDevice);
|
892
|
+
tablet = matchMediaQuery('only screen and (min-width: 800px)') && (android || iDevice);
|
893
|
+
windowsPhone = userAgent.indexOf('Windows Phone') !== -1;
|
894
|
+
if (ie12) {
|
895
|
+
webkit = false;
|
896
|
+
}
|
897
|
+
var contentEditable = !iDevice || fileApi || parseInt(userAgent.match(/AppleWebKit\/(\d*)/)[1], 10) >= 534;
|
898
|
+
var Env = {
|
899
|
+
opera: opera,
|
900
|
+
webkit: webkit,
|
901
|
+
ie: ie,
|
902
|
+
gecko: gecko,
|
903
|
+
mac: mac,
|
904
|
+
iOS: iDevice,
|
905
|
+
android: android,
|
906
|
+
contentEditable: contentEditable,
|
907
|
+
transparentSrc: 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7',
|
908
|
+
caretAfter: ie !== 8,
|
909
|
+
range: domGlobals.window.getSelection && 'Range' in domGlobals.window,
|
910
|
+
documentMode: ie && !ie12 ? domGlobals.document.documentMode || 7 : 10,
|
911
|
+
fileApi: fileApi,
|
912
|
+
ceFalse: ie === false || ie > 8,
|
913
|
+
cacheSuffix: null,
|
914
|
+
container: null,
|
915
|
+
experimentalShadowDom: false,
|
916
|
+
canHaveCSP: ie === false || ie > 11,
|
917
|
+
desktop: !phone && !tablet,
|
918
|
+
windowsPhone: windowsPhone
|
870
919
|
};
|
871
|
-
|
872
|
-
|
873
|
-
|
874
|
-
|
875
|
-
|
920
|
+
|
921
|
+
var promise = function () {
|
922
|
+
function bind(fn, thisArg) {
|
923
|
+
return function () {
|
924
|
+
fn.apply(thisArg, arguments);
|
925
|
+
};
|
926
|
+
}
|
927
|
+
var isArray = Array.isArray || function (value) {
|
928
|
+
return Object.prototype.toString.call(value) === '[object Array]';
|
929
|
+
};
|
930
|
+
var Promise = function (fn) {
|
931
|
+
if (typeof this !== 'object') {
|
932
|
+
throw new TypeError('Promises must be constructed via new');
|
933
|
+
}
|
934
|
+
if (typeof fn !== 'function') {
|
935
|
+
throw new TypeError('not a function');
|
936
|
+
}
|
937
|
+
this._state = null;
|
938
|
+
this._value = null;
|
939
|
+
this._deferreds = [];
|
940
|
+
doResolve(fn, bind(resolve, this), bind(reject, this));
|
941
|
+
};
|
942
|
+
var asap = Promise.immediateFn || typeof domGlobals.setImmediate === 'function' && domGlobals.setImmediate || function (fn) {
|
943
|
+
domGlobals.setTimeout(fn, 1);
|
944
|
+
};
|
945
|
+
function handle(deferred) {
|
946
|
+
var me = this;
|
947
|
+
if (this._state === null) {
|
948
|
+
this._deferreds.push(deferred);
|
949
|
+
return;
|
876
950
|
}
|
951
|
+
asap(function () {
|
952
|
+
var cb = me._state ? deferred.onFulfilled : deferred.onRejected;
|
953
|
+
if (cb === null) {
|
954
|
+
(me._state ? deferred.resolve : deferred.reject)(me._value);
|
955
|
+
return;
|
956
|
+
}
|
957
|
+
var ret;
|
958
|
+
try {
|
959
|
+
ret = cb(me._value);
|
960
|
+
} catch (e) {
|
961
|
+
deferred.reject(e);
|
962
|
+
return;
|
963
|
+
}
|
964
|
+
deferred.resolve(ret);
|
965
|
+
});
|
877
966
|
}
|
878
|
-
|
879
|
-
|
880
|
-
|
881
|
-
|
882
|
-
|
883
|
-
|
884
|
-
|
885
|
-
|
967
|
+
function resolve(newValue) {
|
968
|
+
try {
|
969
|
+
if (newValue === this) {
|
970
|
+
throw new TypeError('A promise cannot be resolved with itself.');
|
971
|
+
}
|
972
|
+
if (newValue && (typeof newValue === 'object' || typeof newValue === 'function')) {
|
973
|
+
var then = newValue.then;
|
974
|
+
if (typeof then === 'function') {
|
975
|
+
doResolve(bind(then, newValue), bind(resolve, this), bind(reject, this));
|
976
|
+
return;
|
977
|
+
}
|
978
|
+
}
|
979
|
+
this._state = true;
|
980
|
+
this._value = newValue;
|
981
|
+
finale.call(this);
|
982
|
+
} catch (e) {
|
983
|
+
reject.call(this, e);
|
886
984
|
}
|
887
985
|
}
|
888
|
-
|
889
|
-
|
986
|
+
function reject(newValue) {
|
987
|
+
this._state = false;
|
988
|
+
this._value = newValue;
|
989
|
+
finale.call(this);
|
890
990
|
}
|
891
|
-
|
892
|
-
|
991
|
+
function finale() {
|
992
|
+
for (var i = 0, len = this._deferreds.length; i < len; i++) {
|
993
|
+
handle.call(this, this._deferreds[i]);
|
994
|
+
}
|
995
|
+
this._deferreds = null;
|
893
996
|
}
|
894
|
-
|
895
|
-
|
896
|
-
|
897
|
-
|
898
|
-
|
899
|
-
event.pageY = originalEvent.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc && doc.clientTop || body && body.clientTop || 0);
|
997
|
+
function Handler(onFulfilled, onRejected, resolve, reject) {
|
998
|
+
this.onFulfilled = typeof onFulfilled === 'function' ? onFulfilled : null;
|
999
|
+
this.onRejected = typeof onRejected === 'function' ? onRejected : null;
|
1000
|
+
this.resolve = resolve;
|
1001
|
+
this.reject = reject;
|
900
1002
|
}
|
901
|
-
|
902
|
-
|
903
|
-
|
904
|
-
|
905
|
-
|
906
|
-
|
907
|
-
|
1003
|
+
function doResolve(fn, onFulfilled, onRejected) {
|
1004
|
+
var done = false;
|
1005
|
+
try {
|
1006
|
+
fn(function (value) {
|
1007
|
+
if (done) {
|
1008
|
+
return;
|
1009
|
+
}
|
1010
|
+
done = true;
|
1011
|
+
onFulfilled(value);
|
1012
|
+
}, function (reason) {
|
1013
|
+
if (done) {
|
1014
|
+
return;
|
1015
|
+
}
|
1016
|
+
done = true;
|
1017
|
+
onRejected(reason);
|
1018
|
+
});
|
1019
|
+
} catch (ex) {
|
1020
|
+
if (done) {
|
1021
|
+
return;
|
908
1022
|
}
|
1023
|
+
done = true;
|
1024
|
+
onRejected(ex);
|
909
1025
|
}
|
1026
|
+
}
|
1027
|
+
Promise.prototype.catch = function (onRejected) {
|
1028
|
+
return this.then(null, onRejected);
|
910
1029
|
};
|
911
|
-
|
912
|
-
|
913
|
-
|
914
|
-
|
915
|
-
|
916
|
-
|
917
|
-
|
1030
|
+
Promise.prototype.then = function (onFulfilled, onRejected) {
|
1031
|
+
var me = this;
|
1032
|
+
return new Promise(function (resolve, reject) {
|
1033
|
+
handle.call(me, new Handler(onFulfilled, onRejected, resolve, reject));
|
1034
|
+
});
|
1035
|
+
};
|
1036
|
+
Promise.all = function () {
|
1037
|
+
var args = Array.prototype.slice.call(arguments.length === 1 && isArray(arguments[0]) ? arguments[0] : arguments);
|
1038
|
+
return new Promise(function (resolve, reject) {
|
1039
|
+
if (args.length === 0) {
|
1040
|
+
return resolve([]);
|
1041
|
+
}
|
1042
|
+
var remaining = args.length;
|
1043
|
+
function res(i, val) {
|
1044
|
+
try {
|
1045
|
+
if (val && (typeof val === 'object' || typeof val === 'function')) {
|
1046
|
+
var then = val.then;
|
1047
|
+
if (typeof then === 'function') {
|
1048
|
+
then.call(val, function (val) {
|
1049
|
+
res(i, val);
|
1050
|
+
}, reject);
|
1051
|
+
return;
|
1052
|
+
}
|
1053
|
+
}
|
1054
|
+
args[i] = val;
|
1055
|
+
if (--remaining === 0) {
|
1056
|
+
resolve(args);
|
1057
|
+
}
|
1058
|
+
} catch (ex) {
|
1059
|
+
reject(ex);
|
1060
|
+
}
|
1061
|
+
}
|
1062
|
+
for (var i = 0; i < args.length; i++) {
|
1063
|
+
res(i, args[i]);
|
918
1064
|
}
|
1065
|
+
});
|
1066
|
+
};
|
1067
|
+
Promise.resolve = function (value) {
|
1068
|
+
if (value && typeof value === 'object' && value.constructor === Promise) {
|
1069
|
+
return value;
|
919
1070
|
}
|
1071
|
+
return new Promise(function (resolve) {
|
1072
|
+
resolve(value);
|
1073
|
+
});
|
920
1074
|
};
|
921
|
-
|
922
|
-
|
923
|
-
|
1075
|
+
Promise.reject = function (value) {
|
1076
|
+
return new Promise(function (resolve, reject) {
|
1077
|
+
reject(value);
|
1078
|
+
});
|
924
1079
|
};
|
925
|
-
|
926
|
-
|
927
|
-
|
928
|
-
|
1080
|
+
Promise.race = function (values) {
|
1081
|
+
return new Promise(function (resolve, reject) {
|
1082
|
+
for (var i = 0, len = values.length; i < len; i++) {
|
1083
|
+
values[i].then(resolve, reject);
|
1084
|
+
}
|
1085
|
+
});
|
1086
|
+
};
|
1087
|
+
return Promise;
|
1088
|
+
};
|
1089
|
+
var promiseObj = window.Promise ? window.Promise : promise();
|
1090
|
+
|
1091
|
+
var requestAnimationFramePromise;
|
1092
|
+
var requestAnimationFrame = function (callback, element) {
|
1093
|
+
var i, requestAnimationFrameFunc = domGlobals.window.requestAnimationFrame;
|
1094
|
+
var vendors = [
|
1095
|
+
'ms',
|
1096
|
+
'moz',
|
1097
|
+
'webkit'
|
1098
|
+
];
|
1099
|
+
var featurefill = function (callback) {
|
1100
|
+
domGlobals.window.setTimeout(callback, 0);
|
1101
|
+
};
|
1102
|
+
for (i = 0; i < vendors.length && !requestAnimationFrameFunc; i++) {
|
1103
|
+
requestAnimationFrameFunc = domGlobals.window[vendors[i] + 'RequestAnimationFrame'];
|
929
1104
|
}
|
930
|
-
if (
|
931
|
-
|
1105
|
+
if (!requestAnimationFrameFunc) {
|
1106
|
+
requestAnimationFrameFunc = featurefill;
|
932
1107
|
}
|
933
|
-
|
1108
|
+
requestAnimationFrameFunc(callback, element);
|
934
1109
|
};
|
935
|
-
var
|
936
|
-
|
937
|
-
|
938
|
-
callback(event);
|
939
|
-
return;
|
1110
|
+
var wrappedSetTimeout = function (callback, time) {
|
1111
|
+
if (typeof time !== 'number') {
|
1112
|
+
time = 0;
|
940
1113
|
}
|
941
|
-
|
942
|
-
|
943
|
-
|
944
|
-
|
945
|
-
|
946
|
-
|
947
|
-
|
948
|
-
|
949
|
-
|
1114
|
+
return domGlobals.setTimeout(callback, time);
|
1115
|
+
};
|
1116
|
+
var wrappedSetInterval = function (callback, time) {
|
1117
|
+
if (typeof time !== 'number') {
|
1118
|
+
time = 1;
|
1119
|
+
}
|
1120
|
+
return domGlobals.setInterval(callback, time);
|
1121
|
+
};
|
1122
|
+
var wrappedClearTimeout = function (id) {
|
1123
|
+
return domGlobals.clearTimeout(id);
|
1124
|
+
};
|
1125
|
+
var wrappedClearInterval = function (id) {
|
1126
|
+
return domGlobals.clearInterval(id);
|
1127
|
+
};
|
1128
|
+
var debounce = function (callback, time) {
|
1129
|
+
var timer, func;
|
1130
|
+
func = function () {
|
1131
|
+
var args = [];
|
1132
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
1133
|
+
args[_i] = arguments[_i];
|
950
1134
|
}
|
951
|
-
|
952
|
-
|
1135
|
+
domGlobals.clearTimeout(timer);
|
1136
|
+
timer = wrappedSetTimeout(function () {
|
1137
|
+
callback.apply(this, args);
|
1138
|
+
}, time);
|
1139
|
+
};
|
1140
|
+
func.stop = function () {
|
1141
|
+
domGlobals.clearTimeout(timer);
|
1142
|
+
};
|
1143
|
+
return func;
|
1144
|
+
};
|
1145
|
+
var Delay = {
|
1146
|
+
requestAnimationFrame: function (callback, element) {
|
1147
|
+
if (requestAnimationFramePromise) {
|
1148
|
+
requestAnimationFramePromise.then(callback);
|
1149
|
+
return;
|
1150
|
+
}
|
1151
|
+
requestAnimationFramePromise = new promiseObj(function (resolve) {
|
1152
|
+
if (!element) {
|
1153
|
+
element = domGlobals.document.body;
|
1154
|
+
}
|
1155
|
+
requestAnimationFrame(resolve, element);
|
1156
|
+
}).then(callback);
|
1157
|
+
},
|
1158
|
+
setTimeout: wrappedSetTimeout,
|
1159
|
+
setInterval: wrappedSetInterval,
|
1160
|
+
setEditorTimeout: function (editor, callback, time) {
|
1161
|
+
return wrappedSetTimeout(function () {
|
1162
|
+
if (!editor.removed) {
|
1163
|
+
callback();
|
1164
|
+
}
|
1165
|
+
}, time);
|
1166
|
+
},
|
1167
|
+
setEditorInterval: function (editor, callback, time) {
|
1168
|
+
var timer;
|
1169
|
+
timer = wrappedSetInterval(function () {
|
1170
|
+
if (!editor.removed) {
|
1171
|
+
callback();
|
1172
|
+
} else {
|
1173
|
+
domGlobals.clearInterval(timer);
|
1174
|
+
}
|
1175
|
+
}, time);
|
1176
|
+
return timer;
|
1177
|
+
},
|
1178
|
+
debounce: debounce,
|
1179
|
+
throttle: debounce,
|
1180
|
+
clearInterval: wrappedClearInterval,
|
1181
|
+
clearTimeout: wrappedClearTimeout
|
1182
|
+
};
|
1183
|
+
|
1184
|
+
var eventExpandoPrefix = 'mce-data-';
|
1185
|
+
var mouseEventRe = /^(?:mouse|contextmenu)|click/;
|
1186
|
+
var deprecated = {
|
1187
|
+
keyLocation: 1,
|
1188
|
+
layerX: 1,
|
1189
|
+
layerY: 1,
|
1190
|
+
returnValue: 1,
|
1191
|
+
webkitMovementX: 1,
|
1192
|
+
webkitMovementY: 1,
|
1193
|
+
keyIdentifier: 1
|
1194
|
+
};
|
1195
|
+
var hasIsDefaultPrevented = function (event) {
|
1196
|
+
return event.isDefaultPrevented === returnTrue || event.isDefaultPrevented === returnFalse;
|
1197
|
+
};
|
1198
|
+
var returnFalse = function () {
|
1199
|
+
return false;
|
1200
|
+
};
|
1201
|
+
var returnTrue = function () {
|
1202
|
+
return true;
|
1203
|
+
};
|
1204
|
+
var addEvent = function (target, name, callback, capture) {
|
1205
|
+
if (target.addEventListener) {
|
1206
|
+
target.addEventListener(name, callback, capture || false);
|
1207
|
+
} else if (target.attachEvent) {
|
1208
|
+
target.attachEvent('on' + name, callback);
|
1209
|
+
}
|
1210
|
+
};
|
1211
|
+
var removeEvent = function (target, name, callback, capture) {
|
1212
|
+
if (target.removeEventListener) {
|
1213
|
+
target.removeEventListener(name, callback, capture || false);
|
1214
|
+
} else if (target.detachEvent) {
|
1215
|
+
target.detachEvent('on' + name, callback);
|
1216
|
+
}
|
1217
|
+
};
|
1218
|
+
var getTargetFromShadowDom = function (event, defaultTarget) {
|
1219
|
+
if (event.composedPath) {
|
1220
|
+
var composedPath = event.composedPath();
|
1221
|
+
if (composedPath && composedPath.length > 0) {
|
1222
|
+
return composedPath[0];
|
1223
|
+
}
|
1224
|
+
}
|
1225
|
+
return defaultTarget;
|
1226
|
+
};
|
1227
|
+
var fix = function (originalEvent, data) {
|
1228
|
+
var name;
|
1229
|
+
var event = data || {};
|
1230
|
+
for (name in originalEvent) {
|
1231
|
+
if (!deprecated[name]) {
|
1232
|
+
event[name] = originalEvent[name];
|
1233
|
+
}
|
1234
|
+
}
|
1235
|
+
if (!event.target) {
|
1236
|
+
event.target = event.srcElement || domGlobals.document;
|
1237
|
+
}
|
1238
|
+
if (Env.experimentalShadowDom) {
|
1239
|
+
event.target = getTargetFromShadowDom(originalEvent, event.target);
|
1240
|
+
}
|
1241
|
+
if (originalEvent && mouseEventRe.test(originalEvent.type) && originalEvent.pageX === undefined && originalEvent.clientX !== undefined) {
|
1242
|
+
var eventDoc = event.target.ownerDocument || domGlobals.document;
|
1243
|
+
var doc = eventDoc.documentElement;
|
1244
|
+
var body = eventDoc.body;
|
1245
|
+
event.pageX = originalEvent.clientX + (doc && doc.scrollLeft || body && body.scrollLeft || 0) - (doc && doc.clientLeft || body && body.clientLeft || 0);
|
1246
|
+
event.pageY = originalEvent.clientY + (doc && doc.scrollTop || body && body.scrollTop || 0) - (doc && doc.clientTop || body && body.clientTop || 0);
|
1247
|
+
}
|
1248
|
+
event.preventDefault = function () {
|
1249
|
+
event.isDefaultPrevented = returnTrue;
|
1250
|
+
if (originalEvent) {
|
1251
|
+
if (originalEvent.preventDefault) {
|
1252
|
+
originalEvent.preventDefault();
|
1253
|
+
} else {
|
1254
|
+
originalEvent.returnValue = false;
|
1255
|
+
}
|
1256
|
+
}
|
1257
|
+
};
|
1258
|
+
event.stopPropagation = function () {
|
1259
|
+
event.isPropagationStopped = returnTrue;
|
1260
|
+
if (originalEvent) {
|
1261
|
+
if (originalEvent.stopPropagation) {
|
1262
|
+
originalEvent.stopPropagation();
|
1263
|
+
} else {
|
1264
|
+
originalEvent.cancelBubble = true;
|
1265
|
+
}
|
1266
|
+
}
|
1267
|
+
};
|
1268
|
+
event.stopImmediatePropagation = function () {
|
1269
|
+
event.isImmediatePropagationStopped = returnTrue;
|
1270
|
+
event.stopPropagation();
|
1271
|
+
};
|
1272
|
+
if (hasIsDefaultPrevented(event) === false) {
|
1273
|
+
event.isDefaultPrevented = returnFalse;
|
1274
|
+
event.isPropagationStopped = returnFalse;
|
1275
|
+
event.isImmediatePropagationStopped = returnFalse;
|
1276
|
+
}
|
1277
|
+
if (typeof event.metaKey === 'undefined') {
|
1278
|
+
event.metaKey = false;
|
1279
|
+
}
|
1280
|
+
return event;
|
1281
|
+
};
|
1282
|
+
var bindOnReady = function (win, callback, eventUtils) {
|
1283
|
+
var doc = win.document, event = { type: 'ready' };
|
1284
|
+
if (eventUtils.domLoaded) {
|
1285
|
+
callback(event);
|
1286
|
+
return;
|
1287
|
+
}
|
1288
|
+
var isDocReady = function () {
|
1289
|
+
return doc.readyState === 'complete' || doc.readyState === 'interactive' && doc.body;
|
1290
|
+
};
|
1291
|
+
var readyHandler = function () {
|
1292
|
+
removeEvent(win, 'DOMContentLoaded', readyHandler);
|
1293
|
+
removeEvent(win, 'load', readyHandler);
|
1294
|
+
if (!eventUtils.domLoaded) {
|
1295
|
+
eventUtils.domLoaded = true;
|
1296
|
+
callback(event);
|
1297
|
+
}
|
1298
|
+
};
|
1299
|
+
var waitForDomLoaded = function () {
|
953
1300
|
if (isDocReady()) {
|
954
1301
|
removeEvent(doc, 'readystatechange', waitForDomLoaded);
|
955
1302
|
readyHandler();
|
@@ -3753,6 +4100,7 @@
|
|
3753
4100
|
};
|
3754
4101
|
var isElement = isType$1(ELEMENT);
|
3755
4102
|
var isText = isType$1(TEXT);
|
4103
|
+
var isDocument = isType$1(DOCUMENT);
|
3756
4104
|
|
3757
4105
|
var keys = Object.keys;
|
3758
4106
|
var hasOwnProperty$1 = Object.hasOwnProperty;
|
@@ -3854,6 +4202,9 @@
|
|
3854
4202
|
return r.length > 0;
|
3855
4203
|
});
|
3856
4204
|
};
|
4205
|
+
var reflow = function (e) {
|
4206
|
+
return e.dom().offsetWidth;
|
4207
|
+
};
|
3857
4208
|
|
3858
4209
|
var Immutable = function () {
|
3859
4210
|
var fields = [];
|
@@ -4044,6 +4395,9 @@
|
|
4044
4395
|
return 0;
|
4045
4396
|
}
|
4046
4397
|
};
|
4398
|
+
var hasChild = function (elm, child) {
|
4399
|
+
return elm.children && contains(elm.children, child);
|
4400
|
+
};
|
4047
4401
|
var getPos = function (body, elm, rootElm) {
|
4048
4402
|
var x = 0, y = 0, offsetParent;
|
4049
4403
|
var doc = body.ownerDocument;
|
@@ -4060,13 +4414,13 @@
|
|
4060
4414
|
};
|
4061
4415
|
}
|
4062
4416
|
offsetParent = elm;
|
4063
|
-
while (offsetParent && offsetParent !== rootElm && offsetParent.nodeType) {
|
4417
|
+
while (offsetParent && offsetParent !== rootElm && offsetParent.nodeType && !hasChild(offsetParent, rootElm)) {
|
4064
4418
|
x += offsetParent.offsetLeft || 0;
|
4065
4419
|
y += offsetParent.offsetTop || 0;
|
4066
4420
|
offsetParent = offsetParent.offsetParent;
|
4067
4421
|
}
|
4068
4422
|
offsetParent = elm.parentNode;
|
4069
|
-
while (offsetParent && offsetParent !== rootElm && offsetParent.nodeType) {
|
4423
|
+
while (offsetParent && offsetParent !== rootElm && offsetParent.nodeType && !hasChild(offsetParent, rootElm)) {
|
4070
4424
|
x -= offsetParent.scrollLeft || 0;
|
4071
4425
|
y -= offsetParent.scrollTop || 0;
|
4072
4426
|
offsetParent = offsetParent.parentNode;
|
@@ -4497,6 +4851,9 @@
|
|
4497
4851
|
return !!node && node.nodeType === type;
|
4498
4852
|
};
|
4499
4853
|
};
|
4854
|
+
var isRestrictedNode = function (node) {
|
4855
|
+
return !!node && !Object.getPrototypeOf(node);
|
4856
|
+
};
|
4500
4857
|
var isElement$1 = isNodeType(1);
|
4501
4858
|
var matchNodeNames = function (names) {
|
4502
4859
|
var items = names.toLowerCase().split(' ');
|
@@ -4568,7 +4925,7 @@
|
|
4568
4925
|
};
|
4569
4926
|
var isText$1 = isNodeType(3);
|
4570
4927
|
var isComment = isNodeType(8);
|
4571
|
-
var isDocument = isNodeType(9);
|
4928
|
+
var isDocument$1 = isNodeType(9);
|
4572
4929
|
var isDocumentFragment = isNodeType(11);
|
4573
4930
|
var isBr = matchNodeNames('br');
|
4574
4931
|
var isContentEditableTrue = hasContentEditableState('true');
|
@@ -4577,11 +4934,12 @@
|
|
4577
4934
|
isText: isText$1,
|
4578
4935
|
isElement: isElement$1,
|
4579
4936
|
isComment: isComment,
|
4580
|
-
isDocument: isDocument,
|
4937
|
+
isDocument: isDocument$1,
|
4581
4938
|
isDocumentFragment: isDocumentFragment,
|
4582
4939
|
isBr: isBr,
|
4583
4940
|
isContentEditableTrue: isContentEditableTrue,
|
4584
4941
|
isContentEditableFalse: isContentEditableFalse,
|
4942
|
+
isRestrictedNode: isRestrictedNode,
|
4585
4943
|
matchNodeNames: matchNodeNames,
|
4586
4944
|
hasPropValue: hasPropValue,
|
4587
4945
|
hasAttribute: hasAttribute,
|
@@ -6399,10 +6757,11 @@
|
|
6399
6757
|
return;
|
6400
6758
|
}
|
6401
6759
|
files[url] = true;
|
6402
|
-
link = create('link', {
|
6760
|
+
link = create('link', __assign({
|
6403
6761
|
rel: 'stylesheet',
|
6762
|
+
type: 'text/css',
|
6404
6763
|
href: url
|
6405
|
-
});
|
6764
|
+
}, settings.contentCssCors ? { crossOrigin: 'anonymous' } : {}));
|
6406
6765
|
head.appendChild(link);
|
6407
6766
|
});
|
6408
6767
|
};
|
@@ -6808,455 +7167,98 @@
|
|
6808
7167
|
};
|
6809
7168
|
ScriptLoader.prototype.add = function (url, success, scope, failure) {
|
6810
7169
|
var state = this.states[url];
|
6811
|
-
if (state === undefined) {
|
6812
|
-
this.queue.push(url);
|
6813
|
-
this.states[url] = QUEUED;
|
6814
|
-
}
|
6815
|
-
if (success) {
|
6816
|
-
if (!this.scriptLoadedCallbacks[url]) {
|
6817
|
-
this.scriptLoadedCallbacks[url] = [];
|
6818
|
-
}
|
6819
|
-
this.scriptLoadedCallbacks[url].push({
|
6820
|
-
success: success,
|
6821
|
-
failure: failure,
|
6822
|
-
scope: scope || this
|
6823
|
-
});
|
6824
|
-
}
|
6825
|
-
};
|
6826
|
-
ScriptLoader.prototype.load = function (url, success, scope, failure) {
|
6827
|
-
return this.add(url, success, scope, failure);
|
6828
|
-
};
|
6829
|
-
ScriptLoader.prototype.remove = function (url) {
|
6830
|
-
delete this.states[url];
|
6831
|
-
delete this.scriptLoadedCallbacks[url];
|
6832
|
-
};
|
6833
|
-
ScriptLoader.prototype.loadQueue = function (success, scope, failure) {
|
6834
|
-
this.loadScripts(this.queue, success, scope, failure);
|
6835
|
-
};
|
6836
|
-
ScriptLoader.prototype.loadScripts = function (scripts, success, scope, failure) {
|
6837
|
-
var self = this;
|
6838
|
-
var loadScripts;
|
6839
|
-
var failures = [];
|
6840
|
-
var execCallbacks = function (name, url) {
|
6841
|
-
each$6(self.scriptLoadedCallbacks[url], function (callback) {
|
6842
|
-
if (isFunction(callback[name])) {
|
6843
|
-
callback[name].call(callback.scope);
|
6844
|
-
}
|
6845
|
-
});
|
6846
|
-
self.scriptLoadedCallbacks[url] = undefined;
|
6847
|
-
};
|
6848
|
-
self.queueLoadedCallbacks.push({
|
6849
|
-
success: success,
|
6850
|
-
failure: failure,
|
6851
|
-
scope: scope || this
|
6852
|
-
});
|
6853
|
-
loadScripts = function () {
|
6854
|
-
var loadingScripts = grep$2(scripts);
|
6855
|
-
scripts.length = 0;
|
6856
|
-
each$6(loadingScripts, function (url) {
|
6857
|
-
if (self.states[url] === LOADED) {
|
6858
|
-
execCallbacks('success', url);
|
6859
|
-
return;
|
6860
|
-
}
|
6861
|
-
if (self.states[url] === FAILED) {
|
6862
|
-
execCallbacks('failure', url);
|
6863
|
-
return;
|
6864
|
-
}
|
6865
|
-
if (self.states[url] !== LOADING) {
|
6866
|
-
self.states[url] = LOADING;
|
6867
|
-
self.loading++;
|
6868
|
-
self.loadScript(url, function () {
|
6869
|
-
self.states[url] = LOADED;
|
6870
|
-
self.loading--;
|
6871
|
-
execCallbacks('success', url);
|
6872
|
-
loadScripts();
|
6873
|
-
}, function () {
|
6874
|
-
self.states[url] = FAILED;
|
6875
|
-
self.loading--;
|
6876
|
-
failures.push(url);
|
6877
|
-
execCallbacks('failure', url);
|
6878
|
-
loadScripts();
|
6879
|
-
});
|
6880
|
-
}
|
6881
|
-
});
|
6882
|
-
if (!self.loading) {
|
6883
|
-
var notifyCallbacks = self.queueLoadedCallbacks.slice(0);
|
6884
|
-
self.queueLoadedCallbacks.length = 0;
|
6885
|
-
each$6(notifyCallbacks, function (callback) {
|
6886
|
-
if (failures.length === 0) {
|
6887
|
-
if (isFunction(callback.success)) {
|
6888
|
-
callback.success.call(callback.scope);
|
6889
|
-
}
|
6890
|
-
} else {
|
6891
|
-
if (isFunction(callback.failure)) {
|
6892
|
-
callback.failure.call(callback.scope, failures);
|
6893
|
-
}
|
6894
|
-
}
|
6895
|
-
});
|
6896
|
-
}
|
6897
|
-
};
|
6898
|
-
loadScripts();
|
6899
|
-
};
|
6900
|
-
ScriptLoader.ScriptLoader = new ScriptLoader();
|
6901
|
-
return ScriptLoader;
|
6902
|
-
}();
|
6903
|
-
|
6904
|
-
var extendStatics = function (d, b) {
|
6905
|
-
extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function (d, b) {
|
6906
|
-
d.__proto__ = b;
|
6907
|
-
} || function (d, b) {
|
6908
|
-
for (var p in b)
|
6909
|
-
if (b.hasOwnProperty(p))
|
6910
|
-
d[p] = b[p];
|
6911
|
-
};
|
6912
|
-
return extendStatics(d, b);
|
6913
|
-
};
|
6914
|
-
function __extends(d, b) {
|
6915
|
-
extendStatics(d, b);
|
6916
|
-
function __() {
|
6917
|
-
this.constructor = d;
|
6918
|
-
}
|
6919
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
6920
|
-
}
|
6921
|
-
var __assign = function () {
|
6922
|
-
__assign = Object.assign || function __assign(t) {
|
6923
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
6924
|
-
s = arguments[i];
|
6925
|
-
for (var p in s)
|
6926
|
-
if (Object.prototype.hasOwnProperty.call(s, p))
|
6927
|
-
t[p] = s[p];
|
6928
|
-
}
|
6929
|
-
return t;
|
6930
|
-
};
|
6931
|
-
return __assign.apply(this, arguments);
|
6932
|
-
};
|
6933
|
-
function __rest(s, e) {
|
6934
|
-
var t = {};
|
6935
|
-
for (var p in s)
|
6936
|
-
if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
6937
|
-
t[p] = s[p];
|
6938
|
-
if (s != null && typeof Object.getOwnPropertySymbols === 'function')
|
6939
|
-
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++)
|
6940
|
-
if (e.indexOf(p[i]) < 0)
|
6941
|
-
t[p[i]] = s[p[i]];
|
6942
|
-
return t;
|
6943
|
-
}
|
6944
|
-
function __decorate(decorators, target, key, desc) {
|
6945
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
6946
|
-
if (typeof Reflect === 'object' && typeof Reflect.decorate === 'function')
|
6947
|
-
r = Reflect.decorate(decorators, target, key, desc);
|
6948
|
-
else
|
6949
|
-
for (var i = decorators.length - 1; i >= 0; i--)
|
6950
|
-
if (d = decorators[i])
|
6951
|
-
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
6952
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
6953
|
-
}
|
6954
|
-
function __param(paramIndex, decorator) {
|
6955
|
-
return function (target, key) {
|
6956
|
-
decorator(target, key, paramIndex);
|
6957
|
-
};
|
6958
|
-
}
|
6959
|
-
function __metadata(metadataKey, metadataValue) {
|
6960
|
-
if (typeof Reflect === 'object' && typeof Reflect.metadata === 'function')
|
6961
|
-
return Reflect.metadata(metadataKey, metadataValue);
|
6962
|
-
}
|
6963
|
-
function __awaiter(thisArg, _arguments, P, generator) {
|
6964
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
6965
|
-
function fulfilled(value) {
|
6966
|
-
try {
|
6967
|
-
step(generator.next(value));
|
6968
|
-
} catch (e) {
|
6969
|
-
reject(e);
|
6970
|
-
}
|
6971
|
-
}
|
6972
|
-
function rejected(value) {
|
6973
|
-
try {
|
6974
|
-
step(generator['throw'](value));
|
6975
|
-
} catch (e) {
|
6976
|
-
reject(e);
|
6977
|
-
}
|
6978
|
-
}
|
6979
|
-
function step(result) {
|
6980
|
-
result.done ? resolve(result.value) : new P(function (resolve) {
|
6981
|
-
resolve(result.value);
|
6982
|
-
}).then(fulfilled, rejected);
|
6983
|
-
}
|
6984
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
6985
|
-
});
|
6986
|
-
}
|
6987
|
-
function __generator(thisArg, body) {
|
6988
|
-
var _ = {
|
6989
|
-
label: 0,
|
6990
|
-
sent: function () {
|
6991
|
-
if (t[0] & 1)
|
6992
|
-
throw t[1];
|
6993
|
-
return t[1];
|
6994
|
-
},
|
6995
|
-
trys: [],
|
6996
|
-
ops: []
|
6997
|
-
}, f, y, t, g;
|
6998
|
-
return g = {
|
6999
|
-
next: verb(0),
|
7000
|
-
'throw': verb(1),
|
7001
|
-
'return': verb(2)
|
7002
|
-
}, typeof Symbol === 'function' && (g[Symbol.iterator] = function () {
|
7003
|
-
return this;
|
7004
|
-
}), g;
|
7005
|
-
function verb(n) {
|
7006
|
-
return function (v) {
|
7007
|
-
return step([
|
7008
|
-
n,
|
7009
|
-
v
|
7010
|
-
]);
|
7011
|
-
};
|
7012
|
-
}
|
7013
|
-
function step(op) {
|
7014
|
-
if (f)
|
7015
|
-
throw new TypeError('Generator is already executing.');
|
7016
|
-
while (_)
|
7017
|
-
try {
|
7018
|
-
if (f = 1, y && (t = op[0] & 2 ? y['return'] : op[0] ? y['throw'] || ((t = y['return']) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done)
|
7019
|
-
return t;
|
7020
|
-
if (y = 0, t)
|
7021
|
-
op = [
|
7022
|
-
op[0] & 2,
|
7023
|
-
t.value
|
7024
|
-
];
|
7025
|
-
switch (op[0]) {
|
7026
|
-
case 0:
|
7027
|
-
case 1:
|
7028
|
-
t = op;
|
7029
|
-
break;
|
7030
|
-
case 4:
|
7031
|
-
_.label++;
|
7032
|
-
return {
|
7033
|
-
value: op[1],
|
7034
|
-
done: false
|
7035
|
-
};
|
7036
|
-
case 5:
|
7037
|
-
_.label++;
|
7038
|
-
y = op[1];
|
7039
|
-
op = [0];
|
7040
|
-
continue;
|
7041
|
-
case 7:
|
7042
|
-
op = _.ops.pop();
|
7043
|
-
_.trys.pop();
|
7044
|
-
continue;
|
7045
|
-
default:
|
7046
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
7047
|
-
_ = 0;
|
7048
|
-
continue;
|
7049
|
-
}
|
7050
|
-
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
7051
|
-
_.label = op[1];
|
7052
|
-
break;
|
7053
|
-
}
|
7054
|
-
if (op[0] === 6 && _.label < t[1]) {
|
7055
|
-
_.label = t[1];
|
7056
|
-
t = op;
|
7057
|
-
break;
|
7058
|
-
}
|
7059
|
-
if (t && _.label < t[2]) {
|
7060
|
-
_.label = t[2];
|
7061
|
-
_.ops.push(op);
|
7062
|
-
break;
|
7063
|
-
}
|
7064
|
-
if (t[2])
|
7065
|
-
_.ops.pop();
|
7066
|
-
_.trys.pop();
|
7067
|
-
continue;
|
7068
|
-
}
|
7069
|
-
op = body.call(thisArg, _);
|
7070
|
-
} catch (e) {
|
7071
|
-
op = [
|
7072
|
-
6,
|
7073
|
-
e
|
7074
|
-
];
|
7075
|
-
y = 0;
|
7076
|
-
} finally {
|
7077
|
-
f = t = 0;
|
7078
|
-
}
|
7079
|
-
if (op[0] & 5)
|
7080
|
-
throw op[1];
|
7081
|
-
return {
|
7082
|
-
value: op[0] ? op[1] : void 0,
|
7083
|
-
done: true
|
7084
|
-
};
|
7085
|
-
}
|
7086
|
-
}
|
7087
|
-
function __exportStar(m, exports) {
|
7088
|
-
for (var p in m)
|
7089
|
-
if (!exports.hasOwnProperty(p))
|
7090
|
-
exports[p] = m[p];
|
7091
|
-
}
|
7092
|
-
function __values(o) {
|
7093
|
-
var m = typeof Symbol === 'function' && o[Symbol.iterator], i = 0;
|
7094
|
-
if (m)
|
7095
|
-
return m.call(o);
|
7096
|
-
return {
|
7097
|
-
next: function () {
|
7098
|
-
if (o && i >= o.length)
|
7099
|
-
o = void 0;
|
7100
|
-
return {
|
7101
|
-
value: o && o[i++],
|
7102
|
-
done: !o
|
7103
|
-
};
|
7104
|
-
}
|
7105
|
-
};
|
7106
|
-
}
|
7107
|
-
function __read(o, n) {
|
7108
|
-
var m = typeof Symbol === 'function' && o[Symbol.iterator];
|
7109
|
-
if (!m)
|
7110
|
-
return o;
|
7111
|
-
var i = m.call(o), r, ar = [], e;
|
7112
|
-
try {
|
7113
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done)
|
7114
|
-
ar.push(r.value);
|
7115
|
-
} catch (error) {
|
7116
|
-
e = { error: error };
|
7117
|
-
} finally {
|
7118
|
-
try {
|
7119
|
-
if (r && !r.done && (m = i['return']))
|
7120
|
-
m.call(i);
|
7121
|
-
} finally {
|
7122
|
-
if (e)
|
7123
|
-
throw e.error;
|
7124
|
-
}
|
7125
|
-
}
|
7126
|
-
return ar;
|
7127
|
-
}
|
7128
|
-
function __spread() {
|
7129
|
-
for (var ar = [], i = 0; i < arguments.length; i++)
|
7130
|
-
ar = ar.concat(__read(arguments[i]));
|
7131
|
-
return ar;
|
7132
|
-
}
|
7133
|
-
function __await(v) {
|
7134
|
-
return this instanceof __await ? (this.v = v, this) : new __await(v);
|
7135
|
-
}
|
7136
|
-
function __asyncGenerator(thisArg, _arguments, generator) {
|
7137
|
-
if (!Symbol.asyncIterator)
|
7138
|
-
throw new TypeError('Symbol.asyncIterator is not defined.');
|
7139
|
-
var g = generator.apply(thisArg, _arguments || []), i, q = [];
|
7140
|
-
return i = {}, verb('next'), verb('throw'), verb('return'), i[Symbol.asyncIterator] = function () {
|
7141
|
-
return this;
|
7142
|
-
}, i;
|
7143
|
-
function verb(n) {
|
7144
|
-
if (g[n])
|
7145
|
-
i[n] = function (v) {
|
7146
|
-
return new Promise(function (a, b) {
|
7147
|
-
q.push([
|
7148
|
-
n,
|
7149
|
-
v,
|
7150
|
-
a,
|
7151
|
-
b
|
7152
|
-
]) > 1 || resume(n, v);
|
7153
|
-
});
|
7154
|
-
};
|
7155
|
-
}
|
7156
|
-
function resume(n, v) {
|
7157
|
-
try {
|
7158
|
-
step(g[n](v));
|
7159
|
-
} catch (e) {
|
7160
|
-
settle(q[0][3], e);
|
7170
|
+
if (state === undefined) {
|
7171
|
+
this.queue.push(url);
|
7172
|
+
this.states[url] = QUEUED;
|
7161
7173
|
}
|
7162
|
-
|
7163
|
-
|
7164
|
-
|
7165
|
-
|
7166
|
-
|
7167
|
-
|
7168
|
-
|
7169
|
-
|
7170
|
-
|
7171
|
-
|
7172
|
-
|
7173
|
-
|
7174
|
-
|
7175
|
-
}
|
7176
|
-
|
7177
|
-
|
7178
|
-
|
7179
|
-
|
7180
|
-
|
7181
|
-
|
7182
|
-
|
7183
|
-
|
7184
|
-
|
7185
|
-
|
7186
|
-
|
7187
|
-
|
7188
|
-
|
7189
|
-
|
7190
|
-
|
7191
|
-
|
7192
|
-
}
|
7193
|
-
function __asyncValues(o) {
|
7194
|
-
if (!Symbol.asyncIterator)
|
7195
|
-
throw new TypeError('Symbol.asyncIterator is not defined.');
|
7196
|
-
var m = o[Symbol.asyncIterator], i;
|
7197
|
-
return m ? m.call(o) : (o = typeof __values === 'function' ? __values(o) : o[Symbol.iterator](), i = {}, verb('next'), verb('throw'), verb('return'), i[Symbol.asyncIterator] = function () {
|
7198
|
-
return this;
|
7199
|
-
}, i);
|
7200
|
-
function verb(n) {
|
7201
|
-
i[n] = o[n] && function (v) {
|
7202
|
-
return new Promise(function (resolve, reject) {
|
7203
|
-
v = o[n](v), settle(resolve, reject, v.done, v.value);
|
7174
|
+
if (success) {
|
7175
|
+
if (!this.scriptLoadedCallbacks[url]) {
|
7176
|
+
this.scriptLoadedCallbacks[url] = [];
|
7177
|
+
}
|
7178
|
+
this.scriptLoadedCallbacks[url].push({
|
7179
|
+
success: success,
|
7180
|
+
failure: failure,
|
7181
|
+
scope: scope || this
|
7182
|
+
});
|
7183
|
+
}
|
7184
|
+
};
|
7185
|
+
ScriptLoader.prototype.load = function (url, success, scope, failure) {
|
7186
|
+
return this.add(url, success, scope, failure);
|
7187
|
+
};
|
7188
|
+
ScriptLoader.prototype.remove = function (url) {
|
7189
|
+
delete this.states[url];
|
7190
|
+
delete this.scriptLoadedCallbacks[url];
|
7191
|
+
};
|
7192
|
+
ScriptLoader.prototype.loadQueue = function (success, scope, failure) {
|
7193
|
+
this.loadScripts(this.queue, success, scope, failure);
|
7194
|
+
};
|
7195
|
+
ScriptLoader.prototype.loadScripts = function (scripts, success, scope, failure) {
|
7196
|
+
var self = this;
|
7197
|
+
var loadScripts;
|
7198
|
+
var failures = [];
|
7199
|
+
var execCallbacks = function (name, url) {
|
7200
|
+
each$6(self.scriptLoadedCallbacks[url], function (callback) {
|
7201
|
+
if (isFunction(callback[name])) {
|
7202
|
+
callback[name].call(callback.scope);
|
7203
|
+
}
|
7204
7204
|
});
|
7205
|
+
self.scriptLoadedCallbacks[url] = undefined;
|
7205
7206
|
};
|
7206
|
-
|
7207
|
-
|
7208
|
-
|
7209
|
-
|
7210
|
-
|
7211
|
-
|
7207
|
+
self.queueLoadedCallbacks.push({
|
7208
|
+
success: success,
|
7209
|
+
failure: failure,
|
7210
|
+
scope: scope || this
|
7211
|
+
});
|
7212
|
+
loadScripts = function () {
|
7213
|
+
var loadingScripts = grep$2(scripts);
|
7214
|
+
scripts.length = 0;
|
7215
|
+
each$6(loadingScripts, function (url) {
|
7216
|
+
if (self.states[url] === LOADED) {
|
7217
|
+
execCallbacks('success', url);
|
7218
|
+
return;
|
7219
|
+
}
|
7220
|
+
if (self.states[url] === FAILED) {
|
7221
|
+
execCallbacks('failure', url);
|
7222
|
+
return;
|
7223
|
+
}
|
7224
|
+
if (self.states[url] !== LOADING) {
|
7225
|
+
self.states[url] = LOADING;
|
7226
|
+
self.loading++;
|
7227
|
+
self.loadScript(url, function () {
|
7228
|
+
self.states[url] = LOADED;
|
7229
|
+
self.loading--;
|
7230
|
+
execCallbacks('success', url);
|
7231
|
+
loadScripts();
|
7232
|
+
}, function () {
|
7233
|
+
self.states[url] = FAILED;
|
7234
|
+
self.loading--;
|
7235
|
+
failures.push(url);
|
7236
|
+
execCallbacks('failure', url);
|
7237
|
+
loadScripts();
|
7238
|
+
});
|
7239
|
+
}
|
7212
7240
|
});
|
7213
|
-
|
7214
|
-
|
7215
|
-
|
7216
|
-
|
7217
|
-
|
7218
|
-
|
7219
|
-
|
7220
|
-
|
7221
|
-
|
7222
|
-
|
7223
|
-
|
7224
|
-
|
7225
|
-
|
7226
|
-
|
7227
|
-
|
7228
|
-
|
7229
|
-
|
7230
|
-
|
7231
|
-
|
7232
|
-
|
7233
|
-
|
7234
|
-
}
|
7235
|
-
function __importDefault(mod) {
|
7236
|
-
return mod && mod.__esModule ? mod : { default: mod };
|
7237
|
-
}
|
7238
|
-
|
7239
|
-
var tslib_1 = /*#__PURE__*/Object.freeze({
|
7240
|
-
__extends: __extends,
|
7241
|
-
get __assign () { return __assign; },
|
7242
|
-
__rest: __rest,
|
7243
|
-
__decorate: __decorate,
|
7244
|
-
__param: __param,
|
7245
|
-
__metadata: __metadata,
|
7246
|
-
__awaiter: __awaiter,
|
7247
|
-
__generator: __generator,
|
7248
|
-
__exportStar: __exportStar,
|
7249
|
-
__values: __values,
|
7250
|
-
__read: __read,
|
7251
|
-
__spread: __spread,
|
7252
|
-
__await: __await,
|
7253
|
-
__asyncGenerator: __asyncGenerator,
|
7254
|
-
__asyncDelegator: __asyncDelegator,
|
7255
|
-
__asyncValues: __asyncValues,
|
7256
|
-
__makeTemplateObject: __makeTemplateObject,
|
7257
|
-
__importStar: __importStar,
|
7258
|
-
__importDefault: __importDefault
|
7259
|
-
});
|
7241
|
+
if (!self.loading) {
|
7242
|
+
var notifyCallbacks = self.queueLoadedCallbacks.slice(0);
|
7243
|
+
self.queueLoadedCallbacks.length = 0;
|
7244
|
+
each$6(notifyCallbacks, function (callback) {
|
7245
|
+
if (failures.length === 0) {
|
7246
|
+
if (isFunction(callback.success)) {
|
7247
|
+
callback.success.call(callback.scope);
|
7248
|
+
}
|
7249
|
+
} else {
|
7250
|
+
if (isFunction(callback.failure)) {
|
7251
|
+
callback.failure.call(callback.scope, failures);
|
7252
|
+
}
|
7253
|
+
}
|
7254
|
+
});
|
7255
|
+
}
|
7256
|
+
};
|
7257
|
+
loadScripts();
|
7258
|
+
};
|
7259
|
+
ScriptLoader.ScriptLoader = new ScriptLoader();
|
7260
|
+
return ScriptLoader;
|
7261
|
+
}();
|
7260
7262
|
|
7261
7263
|
var Cell = function (initial) {
|
7262
7264
|
var value = initial;
|
@@ -8277,26 +8279,6 @@
|
|
8277
8279
|
var containsXY = function (rect, clientX, clientY) {
|
8278
8280
|
return clientX >= rect.left && clientX <= rect.right && clientY >= rect.top && clientY <= rect.bottom;
|
8279
8281
|
};
|
8280
|
-
var overflowX = function (outer, inner) {
|
8281
|
-
if (inner.left > outer.left && inner.right < outer.right) {
|
8282
|
-
return 0;
|
8283
|
-
} else {
|
8284
|
-
return inner.left < outer.left ? inner.left - outer.left : inner.right - outer.right;
|
8285
|
-
}
|
8286
|
-
};
|
8287
|
-
var overflowY = function (outer, inner) {
|
8288
|
-
if (inner.top > outer.top && inner.bottom < outer.bottom) {
|
8289
|
-
return 0;
|
8290
|
-
} else {
|
8291
|
-
return inner.top < outer.top ? inner.top - outer.top : inner.bottom - outer.bottom;
|
8292
|
-
}
|
8293
|
-
};
|
8294
|
-
var getOverflow = function (outer, inner) {
|
8295
|
-
return {
|
8296
|
-
x: overflowX(outer, inner),
|
8297
|
-
y: overflowY(outer, inner)
|
8298
|
-
};
|
8299
|
-
};
|
8300
8282
|
|
8301
8283
|
var getSelectedNode = function (range) {
|
8302
8284
|
var startContainer = range.startContainer, startOffset = range.startOffset;
|
@@ -11306,7 +11288,7 @@
|
|
11306
11288
|
return editor.getParam('end_container_on_empty_block', false);
|
11307
11289
|
};
|
11308
11290
|
var getFontStyleValues = function (editor) {
|
11309
|
-
return Tools.explode(editor.getParam('font_size_style_values', ''));
|
11291
|
+
return Tools.explode(editor.getParam('font_size_style_values', 'xx-small,x-small,small,medium,large,x-large,xx-large'));
|
11310
11292
|
};
|
11311
11293
|
var getFontSizeClasses = function (editor) {
|
11312
11294
|
return Tools.explode(editor.getParam('font_size_classes', ''));
|
@@ -11323,6 +11305,12 @@
|
|
11323
11305
|
var shouldReplaceBlobUris = function (editor) {
|
11324
11306
|
return editor.getParam('images_replace_blob_uris', true, 'boolean');
|
11325
11307
|
};
|
11308
|
+
var getIconPackName = function (editor) {
|
11309
|
+
return editor.getParam('icons', '', 'string');
|
11310
|
+
};
|
11311
|
+
var getIconsUrl = function (editor) {
|
11312
|
+
return editor.getParam('icons_url', '', 'string');
|
11313
|
+
};
|
11326
11314
|
var getImageUploadUrl = function (editor) {
|
11327
11315
|
return editor.getParam('images_upload_url', '', 'string');
|
11328
11316
|
};
|
@@ -11365,6 +11353,9 @@
|
|
11365
11353
|
var getDirectionality = function (editor) {
|
11366
11354
|
return editor.getParam('directionality', I18n.isRtl() ? 'rtl' : undefined);
|
11367
11355
|
};
|
11356
|
+
var getInlineBoundarySelector = function (editor) {
|
11357
|
+
return editor.getParam('inline_boundaries_selector', 'a[href],code,.mce-annotation', 'string');
|
11358
|
+
};
|
11368
11359
|
var Settings = {
|
11369
11360
|
getIframeAttrs: getIframeAttrs,
|
11370
11361
|
getDocType: getDocType,
|
@@ -11381,6 +11372,8 @@
|
|
11381
11372
|
shouldEndContainerOnEmptyBlock: shouldEndContainerOnEmptyBlock,
|
11382
11373
|
getFontStyleValues: getFontStyleValues,
|
11383
11374
|
getFontSizeClasses: getFontSizeClasses,
|
11375
|
+
getIconPackName: getIconPackName,
|
11376
|
+
getIconsUrl: getIconsUrl,
|
11384
11377
|
getImagesDataImgFilter: getImagesDataImgFilter,
|
11385
11378
|
isAutomaticUploadsEnabled: isAutomaticUploadsEnabled,
|
11386
11379
|
shouldReuseFileName: shouldReuseFileName,
|
@@ -11395,7 +11388,8 @@
|
|
11395
11388
|
shouldIndentUseMargin: shouldIndentUseMargin,
|
11396
11389
|
getIndentation: getIndentation,
|
11397
11390
|
getContentCss: getContentCss,
|
11398
|
-
getDirectionality: getDirectionality
|
11391
|
+
getDirectionality: getDirectionality,
|
11392
|
+
getInlineBoundarySelector: getInlineBoundarySelector
|
11399
11393
|
};
|
11400
11394
|
|
11401
11395
|
var defaultFormat = 'html';
|
@@ -11759,6 +11753,9 @@
|
|
11759
11753
|
};
|
11760
11754
|
var Adt = { generate: generate$1 };
|
11761
11755
|
|
11756
|
+
var create$3 = Immutable('start', 'soffset', 'finish', 'foffset');
|
11757
|
+
var SimRange = { create: create$3 };
|
11758
|
+
|
11762
11759
|
var adt = Adt.generate([
|
11763
11760
|
{ before: ['element'] },
|
11764
11761
|
{
|
@@ -11769,8 +11766,24 @@
|
|
11769
11766
|
},
|
11770
11767
|
{ after: ['element'] }
|
11771
11768
|
]);
|
11769
|
+
var cata = function (subject, onBefore, onOn, onAfter) {
|
11770
|
+
return subject.fold(onBefore, onOn, onAfter);
|
11771
|
+
};
|
11772
|
+
var getStart = function (situ) {
|
11773
|
+
return situ.fold(identity, identity, identity);
|
11774
|
+
};
|
11775
|
+
var before$3 = adt.before;
|
11776
|
+
var on = adt.on;
|
11777
|
+
var after$2 = adt.after;
|
11778
|
+
var Situ = {
|
11779
|
+
before: before$3,
|
11780
|
+
on: on,
|
11781
|
+
after: after$2,
|
11782
|
+
cata: cata,
|
11783
|
+
getStart: getStart
|
11784
|
+
};
|
11772
11785
|
|
11773
|
-
var
|
11786
|
+
var adt$1 = Adt.generate([
|
11774
11787
|
{ domRange: ['rng'] },
|
11775
11788
|
{
|
11776
11789
|
relative: [
|
@@ -11787,7 +11800,38 @@
|
|
11787
11800
|
]
|
11788
11801
|
}
|
11789
11802
|
]);
|
11790
|
-
var
|
11803
|
+
var exactFromRange = function (simRange) {
|
11804
|
+
return adt$1.exact(simRange.start(), simRange.soffset(), simRange.finish(), simRange.foffset());
|
11805
|
+
};
|
11806
|
+
var getStart$1 = function (selection) {
|
11807
|
+
return selection.match({
|
11808
|
+
domRange: function (rng) {
|
11809
|
+
return Element.fromDom(rng.startContainer);
|
11810
|
+
},
|
11811
|
+
relative: function (startSitu, finishSitu) {
|
11812
|
+
return Situ.getStart(startSitu);
|
11813
|
+
},
|
11814
|
+
exact: function (start, soffset, finish, foffset) {
|
11815
|
+
return start;
|
11816
|
+
}
|
11817
|
+
});
|
11818
|
+
};
|
11819
|
+
var domRange = adt$1.domRange;
|
11820
|
+
var relative = adt$1.relative;
|
11821
|
+
var exact = adt$1.exact;
|
11822
|
+
var getWin = function (selection) {
|
11823
|
+
var start = getStart$1(selection);
|
11824
|
+
return defaultView(start);
|
11825
|
+
};
|
11826
|
+
var range$1 = SimRange.create;
|
11827
|
+
var Selection = {
|
11828
|
+
domRange: domRange,
|
11829
|
+
relative: relative,
|
11830
|
+
exact: exact,
|
11831
|
+
exactFromRange: exactFromRange,
|
11832
|
+
getWin: getWin,
|
11833
|
+
range: range$1
|
11834
|
+
};
|
11791
11835
|
|
11792
11836
|
var browser$3 = PlatformDetection$1.detect().browser;
|
11793
11837
|
var clamp = function (offset, element) {
|
@@ -11800,10 +11844,10 @@
|
|
11800
11844
|
return offset;
|
11801
11845
|
};
|
11802
11846
|
var normalizeRng = function (rng) {
|
11803
|
-
return range
|
11847
|
+
return Selection.range(rng.start(), clamp(rng.soffset(), rng.start()), rng.finish(), clamp(rng.foffset(), rng.finish()));
|
11804
11848
|
};
|
11805
11849
|
var isOrContains = function (root, elm) {
|
11806
|
-
return contains$3(root, elm) || eq(root, elm);
|
11850
|
+
return !NodeType.isRestrictedNode(elm.dom()) && (contains$3(root, elm) || eq(root, elm));
|
11807
11851
|
};
|
11808
11852
|
var isRngInRoot = function (root) {
|
11809
11853
|
return function (rng) {
|
@@ -11814,7 +11858,7 @@
|
|
11814
11858
|
return editor.inline === true || browser$3.isIE();
|
11815
11859
|
};
|
11816
11860
|
var nativeRangeToSelectionRange = function (r) {
|
11817
|
-
return range
|
11861
|
+
return Selection.range(Element.fromDom(r.startContainer), r.startOffset, Element.fromDom(r.endContainer), r.endOffset);
|
11818
11862
|
};
|
11819
11863
|
var readRange = function (win) {
|
11820
11864
|
var selection = win.getSelection();
|
@@ -12191,7 +12235,6 @@
|
|
12191
12235
|
return {
|
12192
12236
|
id: id,
|
12193
12237
|
theme: 'silver',
|
12194
|
-
popup_css: '',
|
12195
12238
|
plugins: '',
|
12196
12239
|
document_base_url: documentBaseUrl,
|
12197
12240
|
add_form_submit_trigger: true,
|
@@ -12203,11 +12246,9 @@
|
|
12203
12246
|
object_resizing: true,
|
12204
12247
|
doctype: '<!DOCTYPE html>',
|
12205
12248
|
visual: true,
|
12206
|
-
font_size_style_values: 'xx-small,x-small,small,medium,large,x-large,xx-large',
|
12207
12249
|
font_size_legacy_values: 'xx-small,small,medium,large,x-large,xx-large,300%',
|
12208
12250
|
forced_root_block: 'p',
|
12209
12251
|
hidden_input: true,
|
12210
|
-
render_ui: true,
|
12211
12252
|
inline_styles: true,
|
12212
12253
|
convert_fonts_to_spans: true,
|
12213
12254
|
indent: true,
|
@@ -12215,8 +12256,7 @@
|
|
12215
12256
|
indent_after: 'p,h1,h2,h3,h4,h5,h6,blockquote,div,title,style,pre,script,td,th,ul,ol,li,dl,dt,dd,area,table,thead,' + 'tfoot,tbody,tr,section,summary,article,hgroup,aside,figure,figcaption,option,optgroup,datalist',
|
12216
12257
|
entity_encoding: 'named',
|
12217
12258
|
url_converter: editor.convertURL,
|
12218
|
-
url_converter_scope: editor
|
12219
|
-
ie7_compat: true
|
12259
|
+
url_converter_scope: editor
|
12220
12260
|
};
|
12221
12261
|
};
|
12222
12262
|
var getExternalPlugins = function (overrideSettings, settings) {
|
@@ -12256,7 +12296,6 @@
|
|
12256
12296
|
var getFiltered = function (predicate, editor, name) {
|
12257
12297
|
return Option.from(editor.settings[name]).filter(predicate);
|
12258
12298
|
};
|
12259
|
-
var getString = curry(getFiltered, isString);
|
12260
12299
|
var getParamObject = function (value) {
|
12261
12300
|
var output = {};
|
12262
12301
|
if (typeof value === 'string') {
|
@@ -12536,27 +12575,6 @@
|
|
12536
12575
|
};
|
12537
12576
|
};
|
12538
12577
|
|
12539
|
-
var PluginManager = AddOnManager$1.PluginManager;
|
12540
|
-
var resolvePluginName = function (targetUrl, suffix) {
|
12541
|
-
for (var name in PluginManager.urls) {
|
12542
|
-
var matchUrl = PluginManager.urls[name] + '/plugin' + suffix + '.js';
|
12543
|
-
if (matchUrl === targetUrl) {
|
12544
|
-
return name;
|
12545
|
-
}
|
12546
|
-
}
|
12547
|
-
return null;
|
12548
|
-
};
|
12549
|
-
var pluginUrlToMessage = function (editor, url) {
|
12550
|
-
var plugin = resolvePluginName(url, editor.suffix);
|
12551
|
-
return plugin ? I18n.translate([
|
12552
|
-
'Failed to load plugin: {0} from url {1}',
|
12553
|
-
plugin,
|
12554
|
-
url
|
12555
|
-
]) : I18n.translate([
|
12556
|
-
'Failed to load plugin url: {0}',
|
12557
|
-
url
|
12558
|
-
]);
|
12559
|
-
};
|
12560
12578
|
var displayNotification = function (editor, message) {
|
12561
12579
|
editor.notificationManager.open({
|
12562
12580
|
type: 'error',
|
@@ -12578,8 +12596,20 @@
|
|
12578
12596
|
message
|
12579
12597
|
]));
|
12580
12598
|
};
|
12581
|
-
var
|
12582
|
-
|
12599
|
+
var logError = function (msg) {
|
12600
|
+
domGlobals.console.error(msg);
|
12601
|
+
};
|
12602
|
+
var createLoadError = function (type, url, name) {
|
12603
|
+
return name ? 'Failed to load ' + type + ': ' + name + ' from url ' + url : 'Failed to load ' + type + ' url: ' + url;
|
12604
|
+
};
|
12605
|
+
var pluginLoadError = function (url, name) {
|
12606
|
+
logError(createLoadError('plugin', url, name));
|
12607
|
+
};
|
12608
|
+
var iconsLoadError = function (url, name) {
|
12609
|
+
logError(createLoadError('icons', url, name));
|
12610
|
+
};
|
12611
|
+
var languageLoadError = function (url, name) {
|
12612
|
+
logError(createLoadError('language', url, name));
|
12583
12613
|
};
|
12584
12614
|
var pluginInitError = function (editor, name, err) {
|
12585
12615
|
var message = I18n.translate([
|
@@ -12605,6 +12635,8 @@
|
|
12605
12635
|
};
|
12606
12636
|
var ErrorReporter = {
|
12607
12637
|
pluginLoadError: pluginLoadError,
|
12638
|
+
iconsLoadError: iconsLoadError,
|
12639
|
+
languageLoadError: languageLoadError,
|
12608
12640
|
pluginInitError: pluginInitError,
|
12609
12641
|
uploadError: uploadError,
|
12610
12642
|
displayError: displayError,
|
@@ -12791,7 +12823,7 @@
|
|
12791
12823
|
};
|
12792
12824
|
var IconManager = CreateIconManager();
|
12793
12825
|
|
12794
|
-
var PluginManager
|
12826
|
+
var PluginManager = AddOnManager$1.PluginManager;
|
12795
12827
|
|
12796
12828
|
var ThemeManager = AddOnManager$1.ThemeManager;
|
12797
12829
|
|
@@ -14255,9 +14287,17 @@
|
|
14255
14287
|
if (range.collapsed) {
|
14256
14288
|
return false;
|
14257
14289
|
}
|
14258
|
-
|
14259
|
-
|
14260
|
-
|
14290
|
+
if (Env.ie <= 11 && range.startOffset === range.endOffset - 1 && range.startContainer === range.endContainer) {
|
14291
|
+
var elm = range.startContainer.childNodes[range.startOffset];
|
14292
|
+
if (NodeType.isElement(elm)) {
|
14293
|
+
return exists(elm.getClientRects(), function (rect) {
|
14294
|
+
return containsXY(rect, clientX, clientY);
|
14295
|
+
});
|
14296
|
+
}
|
14297
|
+
}
|
14298
|
+
return exists(range.getClientRects(), function (rect) {
|
14299
|
+
return containsXY(rect, clientX, clientY);
|
14300
|
+
});
|
14261
14301
|
};
|
14262
14302
|
var RangePoint = { isXYWithinRange: isXYWithinRange };
|
14263
14303
|
|
@@ -14668,7 +14708,7 @@
|
|
14668
14708
|
if (startContainer.nodeType !== 1) {
|
14669
14709
|
return null;
|
14670
14710
|
}
|
14671
|
-
if (endOffset === startOffset + 1) {
|
14711
|
+
if (endOffset === startOffset + 1 && startContainer === range.endContainer) {
|
14672
14712
|
node = startContainer.childNodes[startOffset];
|
14673
14713
|
}
|
14674
14714
|
if (!isContentEditableFalse$9(node)) {
|
@@ -16178,7 +16218,7 @@
|
|
16178
16218
|
name = value;
|
16179
16219
|
compareNode = 0;
|
16180
16220
|
}
|
16181
|
-
if (!compareNode || isEq$4(dom.getAttrib(compareNode, name), value)) {
|
16221
|
+
if (format.remove_similar || (!compareNode || isEq$4(dom.getAttrib(compareNode, name), value))) {
|
16182
16222
|
if (name === 'class') {
|
16183
16223
|
value = dom.getAttrib(node, name);
|
16184
16224
|
if (value) {
|
@@ -18583,7 +18623,6 @@
|
|
18583
18623
|
var contextMenuSelectImage = function (evt) {
|
18584
18624
|
var target = evt.target;
|
18585
18625
|
if (isEventOnImageOutsideRange(evt, editor.selection.getRng()) && !evt.isDefaultPrevented()) {
|
18586
|
-
evt.preventDefault();
|
18587
18626
|
editor.selection.select(target);
|
18588
18627
|
}
|
18589
18628
|
};
|
@@ -18878,112 +18917,347 @@
|
|
18878
18917
|
}
|
18879
18918
|
});
|
18880
18919
|
editor.on('hide blur', hideResizeRect);
|
18881
|
-
editor.on('contextmenu', contextMenuSelectImage);
|
18920
|
+
editor.on('contextmenu', contextMenuSelectImage, true);
|
18882
18921
|
});
|
18883
18922
|
editor.on('remove', unbindResizeHandleEvents);
|
18884
18923
|
var destroy = function () {
|
18885
18924
|
selectedElm = selectedElmGhost = null;
|
18886
18925
|
};
|
18887
18926
|
return {
|
18888
|
-
isResizable: isResizable,
|
18889
|
-
showResizeRect: showResizeRect,
|
18890
|
-
hideResizeRect: hideResizeRect,
|
18891
|
-
updateResizeRect: updateResizeRect,
|
18892
|
-
destroy: destroy
|
18927
|
+
isResizable: isResizable,
|
18928
|
+
showResizeRect: showResizeRect,
|
18929
|
+
hideResizeRect: hideResizeRect,
|
18930
|
+
updateResizeRect: updateResizeRect,
|
18931
|
+
destroy: destroy
|
18932
|
+
};
|
18933
|
+
};
|
18934
|
+
|
18935
|
+
function Dimension (name, getOffset) {
|
18936
|
+
var set = function (element, h) {
|
18937
|
+
if (!isNumber(h) && !h.match(/^[0-9]+$/)) {
|
18938
|
+
throw new Error(name + '.set accepts only positive integer values. Value was ' + h);
|
18939
|
+
}
|
18940
|
+
var dom = element.dom();
|
18941
|
+
if (isSupported(dom)) {
|
18942
|
+
dom.style[name] = h + 'px';
|
18943
|
+
}
|
18944
|
+
};
|
18945
|
+
var get = function (element) {
|
18946
|
+
var r = getOffset(element);
|
18947
|
+
if (r <= 0 || r === null) {
|
18948
|
+
var css = get$2(element, name);
|
18949
|
+
return parseFloat(css) || 0;
|
18950
|
+
}
|
18951
|
+
return r;
|
18952
|
+
};
|
18953
|
+
var getOuter = get;
|
18954
|
+
var aggregate = function (element, properties) {
|
18955
|
+
return foldl(properties, function (acc, property) {
|
18956
|
+
var val = get$2(element, property);
|
18957
|
+
var value = val === undefined ? 0 : parseInt(val, 10);
|
18958
|
+
return isNaN(value) ? acc : acc + value;
|
18959
|
+
}, 0);
|
18960
|
+
};
|
18961
|
+
var max = function (element, value, properties) {
|
18962
|
+
var cumulativeInclusions = aggregate(element, properties);
|
18963
|
+
var absoluteMax = value > cumulativeInclusions ? value - cumulativeInclusions : 0;
|
18964
|
+
return absoluteMax;
|
18965
|
+
};
|
18966
|
+
return {
|
18967
|
+
set: set,
|
18968
|
+
get: get,
|
18969
|
+
getOuter: getOuter,
|
18970
|
+
aggregate: aggregate,
|
18971
|
+
max: max
|
18972
|
+
};
|
18973
|
+
}
|
18974
|
+
|
18975
|
+
var api$1 = Dimension('height', function (element) {
|
18976
|
+
var dom = element.dom();
|
18977
|
+
return inBody(element) ? dom.getBoundingClientRect().height : dom.offsetHeight;
|
18978
|
+
});
|
18979
|
+
var get$7 = function (element) {
|
18980
|
+
return api$1.get(element);
|
18981
|
+
};
|
18982
|
+
|
18983
|
+
var attached = function (element, scope) {
|
18984
|
+
var doc = scope || Element.fromDom(domGlobals.document.documentElement);
|
18985
|
+
return ancestor(element, curry(eq, doc)).isSome();
|
18986
|
+
};
|
18987
|
+
var windowOf = function (element) {
|
18988
|
+
var dom = element.dom();
|
18989
|
+
if (dom === dom.window && element instanceof domGlobals.Window) {
|
18990
|
+
return element;
|
18991
|
+
}
|
18992
|
+
return isDocument(element) ? dom.defaultView || dom.parentWindow : null;
|
18993
|
+
};
|
18994
|
+
|
18995
|
+
var r = function (left, top) {
|
18996
|
+
var translate = function (x, y) {
|
18997
|
+
return r(left + x, top + y);
|
18998
|
+
};
|
18999
|
+
return {
|
19000
|
+
left: constant(left),
|
19001
|
+
top: constant(top),
|
19002
|
+
translate: translate
|
18893
19003
|
};
|
18894
19004
|
};
|
19005
|
+
var Position$1 = r;
|
19006
|
+
|
19007
|
+
var boxPosition = function (dom) {
|
19008
|
+
var box = dom.getBoundingClientRect();
|
19009
|
+
return Position$1(box.left, box.top);
|
19010
|
+
};
|
19011
|
+
var firstDefinedOrZero = function (a, b) {
|
19012
|
+
return a !== undefined ? a : b !== undefined ? b : 0;
|
19013
|
+
};
|
19014
|
+
var absolute = function (element) {
|
19015
|
+
var doc = element.dom().ownerDocument;
|
19016
|
+
var body = doc.body;
|
19017
|
+
var win = windowOf(Element.fromDom(doc));
|
19018
|
+
var html = doc.documentElement;
|
19019
|
+
var scrollTop = firstDefinedOrZero(win.pageYOffset, html.scrollTop);
|
19020
|
+
var scrollLeft = firstDefinedOrZero(win.pageXOffset, html.scrollLeft);
|
19021
|
+
var clientTop = firstDefinedOrZero(html.clientTop, body.clientTop);
|
19022
|
+
var clientLeft = firstDefinedOrZero(html.clientLeft, body.clientLeft);
|
19023
|
+
return viewport(element).translate(scrollLeft - clientLeft, scrollTop - clientTop);
|
19024
|
+
};
|
19025
|
+
var viewport = function (element) {
|
19026
|
+
var dom = element.dom();
|
19027
|
+
var doc = dom.ownerDocument;
|
19028
|
+
var body = doc.body;
|
19029
|
+
var html = Element.fromDom(doc.documentElement);
|
19030
|
+
if (body === dom) {
|
19031
|
+
return Position$1(body.offsetLeft, body.offsetTop);
|
19032
|
+
}
|
19033
|
+
if (!attached(element, html)) {
|
19034
|
+
return Position$1(0, 0);
|
19035
|
+
}
|
19036
|
+
return boxPosition(dom);
|
19037
|
+
};
|
19038
|
+
|
19039
|
+
var isSafari = PlatformDetection$1.detect().browser.isSafari();
|
19040
|
+
var get$8 = function (_DOC) {
|
19041
|
+
var doc = _DOC !== undefined ? _DOC.dom() : domGlobals.document;
|
19042
|
+
var x = doc.body.scrollLeft || doc.documentElement.scrollLeft;
|
19043
|
+
var y = doc.body.scrollTop || doc.documentElement.scrollTop;
|
19044
|
+
return Position$1(x, y);
|
19045
|
+
};
|
19046
|
+
var to = function (x, y, _DOC) {
|
19047
|
+
var doc = _DOC !== undefined ? _DOC.dom() : domGlobals.document;
|
19048
|
+
var win = doc.defaultView;
|
19049
|
+
win.scrollTo(x, y);
|
19050
|
+
};
|
19051
|
+
var intoView = function (element, alignToTop) {
|
19052
|
+
if (isSafari && isFunction(element.dom().scrollIntoViewIfNeeded)) {
|
19053
|
+
element.dom().scrollIntoViewIfNeeded(false);
|
19054
|
+
} else {
|
19055
|
+
element.dom().scrollIntoView(alignToTop);
|
19056
|
+
}
|
19057
|
+
};
|
19058
|
+
|
19059
|
+
var walkUp = function (navigation, doc) {
|
19060
|
+
var frame = navigation.view(doc);
|
19061
|
+
return frame.fold(constant([]), function (f) {
|
19062
|
+
var parent = navigation.owner(f);
|
19063
|
+
var rest = walkUp(navigation, parent);
|
19064
|
+
return [f].concat(rest);
|
19065
|
+
});
|
19066
|
+
};
|
19067
|
+
var pathTo = function (element, navigation) {
|
19068
|
+
var d = navigation.owner(element);
|
19069
|
+
return walkUp(navigation, d);
|
19070
|
+
};
|
19071
|
+
|
19072
|
+
var view = function (doc) {
|
19073
|
+
var element = doc.dom() === domGlobals.document ? Option.none() : Option.from(doc.dom().defaultView.frameElement);
|
19074
|
+
return element.map(Element.fromDom);
|
19075
|
+
};
|
19076
|
+
var owner$1 = function (element) {
|
19077
|
+
return owner(element);
|
19078
|
+
};
|
19079
|
+
|
19080
|
+
var Navigation = /*#__PURE__*/Object.freeze({
|
19081
|
+
view: view,
|
19082
|
+
owner: owner$1
|
19083
|
+
});
|
19084
|
+
|
19085
|
+
var find$4 = function (element) {
|
19086
|
+
var doc = Element.fromDom(domGlobals.document);
|
19087
|
+
var scroll = get$8(doc);
|
19088
|
+
var frames = pathTo(element, Navigation);
|
19089
|
+
var offset = viewport(element);
|
19090
|
+
var r = foldr(frames, function (b, a) {
|
19091
|
+
var loc = viewport(a);
|
19092
|
+
return {
|
19093
|
+
left: b.left + loc.left(),
|
19094
|
+
top: b.top + loc.top()
|
19095
|
+
};
|
19096
|
+
}, {
|
19097
|
+
left: 0,
|
19098
|
+
top: 0
|
19099
|
+
});
|
19100
|
+
return Position$1(r.left + offset.left() + scroll.left(), r.top + offset.top() + scroll.top());
|
19101
|
+
};
|
18895
19102
|
|
18896
|
-
var
|
18897
|
-
|
18898
|
-
|
18899
|
-
|
18900
|
-
|
18901
|
-
|
18902
|
-
|
19103
|
+
var excludeFromDescend = function (element) {
|
19104
|
+
return name(element) === 'textarea';
|
19105
|
+
};
|
19106
|
+
var descend = function (element, offset) {
|
19107
|
+
var children$1 = children(element);
|
19108
|
+
if (children$1.length === 0 || excludeFromDescend(element)) {
|
19109
|
+
return {
|
19110
|
+
element: element,
|
19111
|
+
offset: offset
|
19112
|
+
};
|
19113
|
+
} else if (offset < children$1.length && !excludeFromDescend(children$1[offset])) {
|
19114
|
+
return {
|
19115
|
+
element: children$1[offset],
|
19116
|
+
offset: 0
|
19117
|
+
};
|
19118
|
+
} else {
|
19119
|
+
var last = children$1[children$1.length - 1];
|
19120
|
+
if (excludeFromDescend(last)) {
|
19121
|
+
return {
|
19122
|
+
element: element,
|
19123
|
+
offset: offset
|
19124
|
+
};
|
19125
|
+
} else {
|
19126
|
+
if (name(last) === 'img') {
|
19127
|
+
return {
|
19128
|
+
element: last,
|
19129
|
+
offset: 1
|
19130
|
+
};
|
19131
|
+
} else if (isText(last)) {
|
19132
|
+
return {
|
19133
|
+
element: last,
|
19134
|
+
offset: get$5(last).length
|
19135
|
+
};
|
19136
|
+
} else {
|
19137
|
+
return {
|
19138
|
+
element: last,
|
19139
|
+
offset: children(last).length
|
19140
|
+
};
|
19141
|
+
}
|
19142
|
+
}
|
18903
19143
|
}
|
19144
|
+
};
|
19145
|
+
var markerInfo = function (element, cleanupFun) {
|
19146
|
+
var pos = absolute(element);
|
19147
|
+
var height = get$7(element);
|
18904
19148
|
return {
|
18905
|
-
|
18906
|
-
|
19149
|
+
element: element,
|
19150
|
+
bottom: pos.top() + height,
|
19151
|
+
pos: pos,
|
19152
|
+
cleanup: cleanupFun
|
18907
19153
|
};
|
18908
19154
|
};
|
19155
|
+
var createMarker = function (element, offset) {
|
19156
|
+
var startPoint = descend(element, offset);
|
19157
|
+
var span = Element.fromHtml('<span data-mce-bogus="all">' + Zwsp.ZWSP + '</span>');
|
19158
|
+
before(startPoint.element, span);
|
19159
|
+
return markerInfo(span, function () {
|
19160
|
+
return remove$1(span);
|
19161
|
+
});
|
19162
|
+
};
|
19163
|
+
var elementMarker = function (element) {
|
19164
|
+
return markerInfo(Element.fromDom(element), noop);
|
19165
|
+
};
|
19166
|
+
var withMarker = function (editor, f, rng, alignToTop) {
|
19167
|
+
preserveWith(editor, function (_s, _e) {
|
19168
|
+
return applyWithMarker(editor, f, rng, alignToTop);
|
19169
|
+
}, rng);
|
19170
|
+
};
|
19171
|
+
var applyWithMarker = function (editor, f, rng, alignToTop) {
|
19172
|
+
var body = Element.fromDom(editor.getBody());
|
19173
|
+
var doc = Element.fromDom(editor.getDoc());
|
19174
|
+
reflow(body);
|
19175
|
+
var scrollTop = get$8(doc).top();
|
19176
|
+
var marker = createMarker(Element.fromDom(rng.startContainer), rng.startOffset);
|
19177
|
+
f(doc, scrollTop, marker, alignToTop);
|
19178
|
+
marker.cleanup();
|
19179
|
+
};
|
19180
|
+
var withElement = function (editor, element, f, alignToTop) {
|
19181
|
+
var doc = Element.fromDom(editor.getDoc());
|
19182
|
+
var scrollTop = get$8(doc).top();
|
19183
|
+
f(doc, scrollTop, element, alignToTop);
|
19184
|
+
};
|
19185
|
+
var preserveWith = function (editor, f, rng) {
|
19186
|
+
var startElement = rng.startContainer;
|
19187
|
+
var startOffset = rng.startOffset;
|
19188
|
+
var endElement = rng.endContainer;
|
19189
|
+
var endOffset = rng.endOffset;
|
19190
|
+
f(Element.fromDom(startElement), Element.fromDom(endElement));
|
19191
|
+
var newRng = editor.dom.createRng();
|
19192
|
+
newRng.setStart(startElement, startOffset);
|
19193
|
+
newRng.setEnd(endElement, endOffset);
|
19194
|
+
editor.selection.setRng(rng);
|
19195
|
+
};
|
18909
19196
|
var fireScrollIntoViewEvent = function (editor, elm, alignToTop) {
|
18910
|
-
var scrollEvent = {
|
19197
|
+
var scrollEvent = editor.fire('ScrollIntoView', {
|
18911
19198
|
elm: elm,
|
18912
19199
|
alignToTop: alignToTop
|
18913
|
-
};
|
18914
|
-
editor.fire('ScrollIntoView', scrollEvent);
|
19200
|
+
});
|
18915
19201
|
return scrollEvent.isDefaultPrevented();
|
18916
19202
|
};
|
18917
|
-
var
|
18918
|
-
var
|
18919
|
-
|
18920
|
-
|
18921
|
-
|
18922
|
-
|
18923
|
-
|
18924
|
-
}
|
18925
|
-
if (!NodeType.isElement(elm)) {
|
18926
|
-
return;
|
18927
|
-
}
|
18928
|
-
if (alignToTop === false) {
|
18929
|
-
offsetY = elm.offsetHeight;
|
18930
|
-
}
|
18931
|
-
if (root.nodeName !== 'BODY') {
|
18932
|
-
var scrollContainer = editor.selection.getScrollContainer();
|
18933
|
-
if (scrollContainer) {
|
18934
|
-
y = getPos$1(elm).y - getPos$1(scrollContainer).y + offsetY;
|
18935
|
-
viewPortH = scrollContainer.clientHeight;
|
18936
|
-
viewPortY = scrollContainer.scrollTop;
|
18937
|
-
if (y < viewPortY || y + 25 > viewPortY + viewPortH) {
|
18938
|
-
scrollContainer.scrollTop = y < viewPortY ? y : y - viewPortH + 25;
|
18939
|
-
}
|
18940
|
-
return;
|
18941
|
-
}
|
19203
|
+
var scrollTo = function (marker, viewHeight, alignToTop, doc) {
|
19204
|
+
var pos = marker.pos;
|
19205
|
+
if (alignToTop) {
|
19206
|
+
to(pos.left(), pos.top(), doc);
|
19207
|
+
} else {
|
19208
|
+
var y = pos.top() - viewHeight + (marker.bottom - pos.top());
|
19209
|
+
to(pos.left(), y, doc);
|
18942
19210
|
}
|
18943
|
-
|
18944
|
-
|
18945
|
-
|
18946
|
-
|
18947
|
-
if (
|
18948
|
-
|
19211
|
+
};
|
19212
|
+
var intoWindowIfNeeded = function (doc, scrollTop, viewHeight, marker, alignToTop) {
|
19213
|
+
if (marker.pos.top() < scrollTop) {
|
19214
|
+
scrollTo(marker, viewHeight, alignToTop !== false, doc);
|
19215
|
+
} else if (marker.bottom > viewHeight + scrollTop) {
|
19216
|
+
scrollTo(marker, viewHeight, alignToTop === true, doc);
|
18949
19217
|
}
|
18950
19218
|
};
|
18951
|
-
var
|
18952
|
-
|
18953
|
-
|
18954
|
-
|
18955
|
-
|
18956
|
-
|
18957
|
-
|
18958
|
-
|
18959
|
-
|
18960
|
-
|
18961
|
-
|
18962
|
-
|
18963
|
-
|
19219
|
+
var intoWindow = function (doc, scrollTop, marker, alignToTop) {
|
19220
|
+
var viewHeight = doc.dom().defaultView.innerHeight;
|
19221
|
+
intoWindowIfNeeded(doc, scrollTop, viewHeight, marker, alignToTop);
|
19222
|
+
};
|
19223
|
+
var intoFrame = function (editor, doc, scrollTop, marker, alignToTop) {
|
19224
|
+
var frameViewHeight = doc.dom().defaultView.innerHeight;
|
19225
|
+
intoWindowIfNeeded(doc, scrollTop, frameViewHeight, marker, alignToTop);
|
19226
|
+
var op = find$4(marker.element);
|
19227
|
+
var viewTop = get$8().top();
|
19228
|
+
var viewBot = domGlobals.window.innerHeight + viewTop;
|
19229
|
+
if (op.top() < viewTop) {
|
19230
|
+
intoView(marker.element, alignToTop !== false);
|
19231
|
+
} else if (op.top() > viewBot) {
|
19232
|
+
intoView(marker.element, alignToTop === true);
|
18964
19233
|
}
|
18965
19234
|
};
|
18966
|
-
var
|
18967
|
-
|
18968
|
-
|
18969
|
-
|
18970
|
-
|
18971
|
-
|
19235
|
+
var rangeIntoWindow = function (editor, rng, alignToTop) {
|
19236
|
+
return withMarker(editor, curry(intoWindow), rng, alignToTop);
|
19237
|
+
};
|
19238
|
+
var elementIntoWindow = function (editor, element, alignToTop) {
|
19239
|
+
return withElement(editor, elementMarker(element), curry(intoWindow), alignToTop);
|
19240
|
+
};
|
19241
|
+
var rangeIntoFrame = function (editor, rng, alignToTop) {
|
19242
|
+
return withMarker(editor, curry(intoFrame, editor), rng, alignToTop);
|
19243
|
+
};
|
19244
|
+
var elementIntoFrame = function (editor, element, alignToTop) {
|
19245
|
+
return withElement(editor, elementMarker(element), curry(intoFrame, editor), alignToTop);
|
19246
|
+
};
|
19247
|
+
var elementIntoView = function (editor, element, alignToTop) {
|
19248
|
+
if (fireScrollIntoViewEvent(editor, element, alignToTop)) {
|
19249
|
+
return;
|
18972
19250
|
}
|
19251
|
+
var scroller = editor.inline ? elementIntoWindow : elementIntoFrame;
|
19252
|
+
scroller(editor, element, alignToTop);
|
18973
19253
|
};
|
18974
|
-
var
|
18975
|
-
|
18976
|
-
|
18977
|
-
var overflow = getOverflow(bodyRect, rngRect);
|
18978
|
-
var margin = 4;
|
18979
|
-
var dx = overflow.x > 0 ? overflow.x + margin : overflow.x - margin;
|
18980
|
-
var dy = overflow.y > 0 ? overflow.y + margin : overflow.y - margin;
|
18981
|
-
scrollBy(editor, overflow.x !== 0 ? dx : 0, overflow.y !== 0 ? dy : 0);
|
18982
|
-
});
|
19254
|
+
var rangeIntoView = function (editor, rng, alignToTop) {
|
19255
|
+
var scroller = editor.inline ? rangeIntoWindow : rangeIntoFrame;
|
19256
|
+
scroller(editor, rng, alignToTop);
|
18983
19257
|
};
|
18984
19258
|
var ScrollIntoView = {
|
18985
|
-
scrollElementIntoView:
|
18986
|
-
scrollRangeIntoView:
|
19259
|
+
scrollElementIntoView: elementIntoView,
|
19260
|
+
scrollRangeIntoView: rangeIntoView
|
18987
19261
|
};
|
18988
19262
|
|
18989
19263
|
var hasCeProperty = function (node) {
|
@@ -19617,7 +19891,7 @@
|
|
19617
19891
|
return elm.dom();
|
19618
19892
|
}).getOr(root);
|
19619
19893
|
};
|
19620
|
-
var getStart = function (root, rng, real) {
|
19894
|
+
var getStart$2 = function (root, rng, real) {
|
19621
19895
|
return getEndpointElement(root, rng, true, real, function (elm, offset) {
|
19622
19896
|
return Math.min(childNodesCount(elm), offset);
|
19623
19897
|
});
|
@@ -19677,7 +19951,7 @@
|
|
19677
19951
|
var node, root;
|
19678
19952
|
var selectedBlocks = [];
|
19679
19953
|
root = dom.getRoot();
|
19680
|
-
startElm = dom.getParent(startElm || getStart(root, rng, rng.collapsed), dom.isBlock);
|
19954
|
+
startElm = dom.getParent(startElm || getStart$2(root, rng, rng.collapsed), dom.isBlock);
|
19681
19955
|
endElm = dom.getParent(endElm || getEnd(root, rng, rng.collapsed), dom.isBlock);
|
19682
19956
|
if (startElm && startElm !== root) {
|
19683
19957
|
selectedBlocks.push(startElm);
|
@@ -19792,7 +20066,7 @@
|
|
19792
20066
|
return isAttachedToDom(rng.startContainer) && isAttachedToDom(rng.endContainer);
|
19793
20067
|
}
|
19794
20068
|
};
|
19795
|
-
var Selection = function (dom, win, serializer, editor) {
|
20069
|
+
var Selection$1 = function (dom, win, serializer, editor) {
|
19796
20070
|
var bookmarkManager, controlSelection;
|
19797
20071
|
var selectedRange, explicitRange;
|
19798
20072
|
var selectorChangedWithUnbind = SelectorChanged(dom, editor).selectorChangedWithUnbind;
|
@@ -19814,8 +20088,8 @@
|
|
19814
20088
|
var setContent = function (content, args) {
|
19815
20089
|
return SetSelectionContent.setContent(editor, content, args);
|
19816
20090
|
};
|
19817
|
-
var getStart
|
19818
|
-
return getStart(editor.getBody(), getRng(), real);
|
20091
|
+
var getStart = function (real) {
|
20092
|
+
return getStart$2(editor.getBody(), getRng(), real);
|
19819
20093
|
};
|
19820
20094
|
var getEnd$1 = function (real) {
|
19821
20095
|
return getEnd(editor.getBody(), getRng(), real);
|
@@ -19873,7 +20147,7 @@
|
|
19873
20147
|
}
|
19874
20148
|
}
|
19875
20149
|
try {
|
19876
|
-
if (selection = getSel()) {
|
20150
|
+
if ((selection = getSel()) && !NodeType.isRestrictedNode(selection.anchorNode)) {
|
19877
20151
|
if (selection.rangeCount > 0) {
|
19878
20152
|
rng = selection.getRangeAt(0);
|
19879
20153
|
} else {
|
@@ -20039,7 +20313,7 @@
|
|
20039
20313
|
getSel: getSel,
|
20040
20314
|
setRng: setRng,
|
20041
20315
|
getRng: getRng,
|
20042
|
-
getStart: getStart
|
20316
|
+
getStart: getStart,
|
20043
20317
|
getEnd: getEnd$1,
|
20044
20318
|
getSelectedBlocks: getSelectedBlocks$1,
|
20045
20319
|
normalize: normalize,
|
@@ -20174,8 +20448,7 @@
|
|
20174
20448
|
};
|
20175
20449
|
|
20176
20450
|
var isInlineTarget = function (editor, elm) {
|
20177
|
-
|
20178
|
-
return is$1(Element.fromDom(elm), selector);
|
20451
|
+
return is$1(Element.fromDom(elm), Settings.getInlineBoundarySelector(editor));
|
20179
20452
|
};
|
20180
20453
|
var isRtl$1 = function (element) {
|
20181
20454
|
return DOMUtils$1.DOM.getStyle(element, 'direction', true) === 'rtl' || hasStrongRtl(element.textContent);
|
@@ -20256,7 +20529,7 @@
|
|
20256
20529
|
var parentBlock = getParentBlock(node, rootNode);
|
20257
20530
|
return parentBlock ? parentBlock : rootNode;
|
20258
20531
|
};
|
20259
|
-
var before$
|
20532
|
+
var before$4 = function (isInlineTarget, rootNode, pos) {
|
20260
20533
|
var nPos = InlineUtils.normalizeForwards(pos);
|
20261
20534
|
var scope = rescope(rootNode, nPos.container());
|
20262
20535
|
return InlineUtils.findRootInline(isInlineTarget, scope, nPos).fold(function () {
|
@@ -20285,7 +20558,7 @@
|
|
20285
20558
|
return nextPos.isNone() ? Option.some(Location.end(inline)) : Option.none();
|
20286
20559
|
});
|
20287
20560
|
};
|
20288
|
-
var after$
|
20561
|
+
var after$3 = function (isInlineTarget, rootNode, pos) {
|
20289
20562
|
var nPos = InlineUtils.normalizeBackwards(pos);
|
20290
20563
|
var scope = rescope(rootNode, nPos.container());
|
20291
20564
|
return InlineUtils.findRootInline(isInlineTarget, scope, nPos).fold(function () {
|
@@ -20299,10 +20572,10 @@
|
|
20299
20572
|
};
|
20300
20573
|
var readLocation = function (isInlineTarget, rootNode, pos) {
|
20301
20574
|
var location = LazyEvaluator.evaluateUntil([
|
20302
|
-
before$
|
20575
|
+
before$4,
|
20303
20576
|
start$1,
|
20304
20577
|
end,
|
20305
|
-
after$
|
20578
|
+
after$3
|
20306
20579
|
], [
|
20307
20580
|
isInlineTarget,
|
20308
20581
|
rootNode,
|
@@ -22908,9 +23181,20 @@
|
|
22908
23181
|
var navigateIgnoreEmptyTextNodes = function (forward, root, from) {
|
22909
23182
|
return CaretFinder.navigateIgnore(forward, root, from, isEmptyText);
|
22910
23183
|
};
|
23184
|
+
var getClosestBlock = function (root, pos) {
|
23185
|
+
return find(Parents.parentsAndSelf(Element.fromDom(pos.container()), root), isBlock);
|
23186
|
+
};
|
23187
|
+
var isAtBeforeAfterBlockBoundary = function (forward, root, pos) {
|
23188
|
+
return navigateIgnoreEmptyTextNodes(forward, root.dom(), pos).forall(function (newPos) {
|
23189
|
+
return getClosestBlock(root, pos).fold(function () {
|
23190
|
+
return isInSameBlock(newPos, pos, root.dom()) === false;
|
23191
|
+
}, function (fromBlock) {
|
23192
|
+
return isInSameBlock(newPos, pos, root.dom()) === false && contains$3(fromBlock, Element.fromDom(newPos.container()));
|
23193
|
+
});
|
23194
|
+
});
|
23195
|
+
};
|
22911
23196
|
var isAtBlockBoundary = function (forward, root, pos) {
|
22912
|
-
|
22913
|
-
return head(parentBlocks).fold(function () {
|
23197
|
+
return getClosestBlock(root, pos).fold(function () {
|
22914
23198
|
return navigateIgnoreEmptyTextNodes(forward, root.dom(), pos).forall(function (newPos) {
|
22915
23199
|
return isInSameBlock(newPos, pos, root.dom()) === false;
|
22916
23200
|
});
|
@@ -22920,12 +23204,14 @@
|
|
22920
23204
|
};
|
22921
23205
|
var isAtStartOfBlock = curry(isAtBlockBoundary, false);
|
22922
23206
|
var isAtEndOfBlock = curry(isAtBlockBoundary, true);
|
23207
|
+
var isBeforeBlock = curry(isAtBeforeAfterBlockBoundary, false);
|
23208
|
+
var isAfterBlock = curry(isAtBeforeAfterBlockBoundary, true);
|
22923
23209
|
|
22924
23210
|
var nbsp = '\xA0';
|
22925
23211
|
var isInMiddleOfText = function (pos) {
|
22926
23212
|
return CaretPosition.isTextPosition(pos) && !pos.isAtStart() && !pos.isAtEnd();
|
22927
23213
|
};
|
22928
|
-
var getClosestBlock = function (root, pos) {
|
23214
|
+
var getClosestBlock$1 = function (root, pos) {
|
22929
23215
|
var parentBlocks = filter(Parents.parentsAndSelf(Element.fromDom(pos.container()), root), isBlock);
|
22930
23216
|
return head(parentBlocks).getOr(root);
|
22931
23217
|
};
|
@@ -22933,20 +23219,19 @@
|
|
22933
23219
|
if (isInMiddleOfText(pos)) {
|
22934
23220
|
return isAfterSpace(pos);
|
22935
23221
|
} else {
|
22936
|
-
return isAfterSpace(pos) || CaretFinder.prevPosition(getClosestBlock(root, pos).dom(), pos).exists(isAfterSpace);
|
23222
|
+
return isAfterSpace(pos) || CaretFinder.prevPosition(getClosestBlock$1(root, pos).dom(), pos).exists(isAfterSpace);
|
22937
23223
|
}
|
22938
23224
|
};
|
22939
23225
|
var hasSpaceAfter = function (root, pos) {
|
22940
23226
|
if (isInMiddleOfText(pos)) {
|
22941
23227
|
return isBeforeSpace(pos);
|
22942
23228
|
} else {
|
22943
|
-
return isBeforeSpace(pos) || CaretFinder.nextPosition(getClosestBlock(root, pos).dom(), pos).exists(isBeforeSpace);
|
23229
|
+
return isBeforeSpace(pos) || CaretFinder.nextPosition(getClosestBlock$1(root, pos).dom(), pos).exists(isBeforeSpace);
|
22944
23230
|
}
|
22945
23231
|
};
|
22946
23232
|
var isPreValue = function (value) {
|
22947
23233
|
return contains([
|
22948
23234
|
'pre',
|
22949
|
-
'pre-line',
|
22950
23235
|
'pre-wrap'
|
22951
23236
|
], value);
|
22952
23237
|
};
|
@@ -22977,7 +23262,7 @@
|
|
22977
23262
|
if (isInPre(pos)) {
|
22978
23263
|
return false;
|
22979
23264
|
} else {
|
22980
|
-
return isAtStartOfBlock(root, pos) || isAfterBr(root, pos) || hasSpaceBefore(root, pos);
|
23265
|
+
return isAtStartOfBlock(root, pos) || isBeforeBlock(root, pos) || isAfterBr(root, pos) || hasSpaceBefore(root, pos);
|
22981
23266
|
}
|
22982
23267
|
};
|
22983
23268
|
var leanRight = function (pos) {
|
@@ -22994,7 +23279,7 @@
|
|
22994
23279
|
if (isInPre(afterPos)) {
|
22995
23280
|
return false;
|
22996
23281
|
} else {
|
22997
|
-
return isAtEndOfBlock(root, afterPos) || isBeforeBr(root, afterPos) || hasSpaceAfter(root, afterPos);
|
23282
|
+
return isAtEndOfBlock(root, afterPos) || isAfterBlock(root, afterPos) || isBeforeBr(root, afterPos) || hasSpaceAfter(root, afterPos);
|
22998
23283
|
}
|
22999
23284
|
};
|
23000
23285
|
var needsToBeNbsp = function (root, pos) {
|
@@ -23816,11 +24101,10 @@
|
|
23816
24101
|
DOM$2.setAttrib(bodyEl, 'contentEditable', null);
|
23817
24102
|
});
|
23818
24103
|
DOM$2.addClass(targetElm, 'mce-content-body');
|
23819
|
-
editor.contentDocument = doc =
|
23820
|
-
editor.contentWindow =
|
24104
|
+
editor.contentDocument = doc = domGlobals.document;
|
24105
|
+
editor.contentWindow = domGlobals.window;
|
23821
24106
|
editor.bodyElement = targetElm;
|
23822
24107
|
editor.contentAreaContainer = targetElm;
|
23823
|
-
settings.content_document = settings.content_window = null;
|
23824
24108
|
settings.root_name = targetElm.nodeName.toLowerCase();
|
23825
24109
|
}
|
23826
24110
|
body = editor.getBody();
|
@@ -23853,7 +24137,7 @@
|
|
23853
24137
|
});
|
23854
24138
|
editor.parser = createParser(editor);
|
23855
24139
|
editor.serializer = Serializer$1(settings, editor);
|
23856
|
-
editor.selection = Selection(editor.dom, editor.getWin(), editor.serializer, editor);
|
24140
|
+
editor.selection = Selection$1(editor.dom, editor.getWin(), editor.serializer, editor);
|
23857
24141
|
editor.annotator = Annotator(editor);
|
23858
24142
|
editor.formatter = Formatter(editor);
|
23859
24143
|
editor.undoManager = UndoManager(editor);
|
@@ -24003,11 +24287,11 @@
|
|
24003
24287
|
|
24004
24288
|
var DOM$4 = DOMUtils$1.DOM;
|
24005
24289
|
var initPlugin = function (editor, initializedPlugins, plugin) {
|
24006
|
-
var Plugin = PluginManager
|
24007
|
-
var pluginUrl = PluginManager
|
24290
|
+
var Plugin = PluginManager.get(plugin);
|
24291
|
+
var pluginUrl = PluginManager.urls[plugin] || editor.documentBaseUrl.replace(/\/$/, '');
|
24008
24292
|
plugin = Tools.trim(plugin);
|
24009
24293
|
if (Plugin && Tools.inArray(initializedPlugins, plugin) === -1) {
|
24010
|
-
Tools.each(PluginManager
|
24294
|
+
Tools.each(PluginManager.dependencies(plugin), function (dep) {
|
24011
24295
|
initPlugin(editor, initializedPlugins, dep);
|
24012
24296
|
});
|
24013
24297
|
if (editor.plugins[plugin]) {
|
@@ -24124,11 +24408,10 @@
|
|
24124
24408
|
var languageCode = Settings.getLanguageCode(editor);
|
24125
24409
|
var languageUrl = Settings.getLanguageUrl(editor);
|
24126
24410
|
if (I18n.hasCode(languageCode) === false && languageCode !== 'en') {
|
24127
|
-
|
24128
|
-
|
24129
|
-
|
24130
|
-
|
24131
|
-
}
|
24411
|
+
var url_1 = languageUrl !== '' ? languageUrl : editor.editorManager.baseURL + '/langs/' + languageCode + '.js';
|
24412
|
+
scriptLoader.add(url_1, noop, undefined, function () {
|
24413
|
+
ErrorReporter.languageLoadError(url_1, languageCode);
|
24414
|
+
});
|
24132
24415
|
}
|
24133
24416
|
};
|
24134
24417
|
var loadTheme = function (scriptLoader, editor, suffix, callback) {
|
@@ -24149,41 +24432,70 @@
|
|
24149
24432
|
callback();
|
24150
24433
|
}
|
24151
24434
|
};
|
24152
|
-
var
|
24153
|
-
|
24154
|
-
|
24155
|
-
|
24156
|
-
|
24157
|
-
|
24435
|
+
var getIconsUrlMetaFromUrl = function (editor) {
|
24436
|
+
return Option.from(Settings.getIconsUrl(editor)).filter(function (url) {
|
24437
|
+
return url.length > 0;
|
24438
|
+
}).map(function (url) {
|
24439
|
+
return {
|
24440
|
+
url: url,
|
24441
|
+
name: Option.none()
|
24442
|
+
};
|
24443
|
+
});
|
24444
|
+
};
|
24445
|
+
var getIconsUrlMetaFromName = function (editor) {
|
24446
|
+
return Option.from(Settings.getIconPackName(editor)).filter(function (name) {
|
24447
|
+
return name.length > 0 && !IconManager.has(name);
|
24448
|
+
}).map(function (name) {
|
24449
|
+
return {
|
24450
|
+
url: editor.editorManager.baseURL + '/icons/' + name + '/icons.js',
|
24451
|
+
name: Option.some(name)
|
24452
|
+
};
|
24453
|
+
});
|
24454
|
+
};
|
24455
|
+
var loadIcons = function (scriptLoader, editor) {
|
24456
|
+
getIconsUrlMetaFromUrl(editor).orThunk(function () {
|
24457
|
+
return getIconsUrlMetaFromName(editor);
|
24458
|
+
}).each(function (urlMeta) {
|
24459
|
+
scriptLoader.add(urlMeta.url, noop, undefined, function () {
|
24460
|
+
ErrorReporter.iconsLoadError(urlMeta.url, urlMeta.name.getOrUndefined());
|
24461
|
+
});
|
24462
|
+
});
|
24158
24463
|
};
|
24159
24464
|
var loadPlugins = function (settings, suffix) {
|
24160
|
-
if (
|
24465
|
+
if (isArray(settings.plugins)) {
|
24161
24466
|
settings.plugins = settings.plugins.join(' ');
|
24162
24467
|
}
|
24163
24468
|
Tools.each(settings.external_plugins, function (url, name) {
|
24164
|
-
PluginManager
|
24469
|
+
PluginManager.load(name, url, noop, undefined, function () {
|
24470
|
+
ErrorReporter.pluginLoadError(name, url);
|
24471
|
+
});
|
24165
24472
|
settings.plugins += ' ' + name;
|
24166
24473
|
});
|
24167
24474
|
Tools.each(settings.plugins.split(/[ ,]/), function (plugin) {
|
24168
24475
|
plugin = Tools.trim(plugin);
|
24169
|
-
if (plugin && !PluginManager
|
24476
|
+
if (plugin && !PluginManager.urls[plugin]) {
|
24170
24477
|
if (hasSkipLoadPrefix(plugin)) {
|
24171
24478
|
plugin = plugin.substr(1, plugin.length);
|
24172
|
-
var dependencies = PluginManager
|
24479
|
+
var dependencies = PluginManager.dependencies(plugin);
|
24173
24480
|
Tools.each(dependencies, function (dep) {
|
24174
24481
|
var defaultSettings = {
|
24175
24482
|
prefix: 'plugins/',
|
24176
24483
|
resource: dep,
|
24177
24484
|
suffix: '/plugin' + suffix + '.js'
|
24178
24485
|
};
|
24179
|
-
dep = PluginManager
|
24180
|
-
PluginManager
|
24486
|
+
dep = PluginManager.createUrl(defaultSettings, dep);
|
24487
|
+
PluginManager.load(dep.resource, dep, noop, undefined, function () {
|
24488
|
+
ErrorReporter.pluginLoadError(dep.prefix + dep.resource + dep.suffix, dep.resource);
|
24489
|
+
});
|
24181
24490
|
});
|
24182
24491
|
} else {
|
24183
|
-
|
24492
|
+
var url_2 = {
|
24184
24493
|
prefix: 'plugins/',
|
24185
24494
|
resource: plugin,
|
24186
24495
|
suffix: '/plugin' + suffix + '.js'
|
24496
|
+
};
|
24497
|
+
PluginManager.load(plugin, url_2, noop, undefined, function () {
|
24498
|
+
ErrorReporter.pluginLoadError(url_2.prefix + url_2.resource + url_2.suffix, plugin);
|
24187
24499
|
});
|
24188
24500
|
}
|
24189
24501
|
}
|
@@ -24193,14 +24505,13 @@
|
|
24193
24505
|
var scriptLoader = ScriptLoader.ScriptLoader;
|
24194
24506
|
loadTheme(scriptLoader, editor, suffix, function () {
|
24195
24507
|
loadLanguage(scriptLoader, editor);
|
24196
|
-
loadIcons(editor);
|
24508
|
+
loadIcons(scriptLoader, editor);
|
24197
24509
|
loadPlugins(editor.settings, suffix);
|
24198
24510
|
scriptLoader.loadQueue(function () {
|
24199
24511
|
if (!editor.removed) {
|
24200
24512
|
Init.init(editor);
|
24201
24513
|
}
|
24202
|
-
}, editor, function (
|
24203
|
-
ErrorReporter.pluginLoadError(editor, urls[0]);
|
24514
|
+
}, editor, function () {
|
24204
24515
|
if (!editor.removed) {
|
24205
24516
|
Init.init(editor);
|
24206
24517
|
}
|
@@ -24289,6 +24600,7 @@
|
|
24289
24600
|
};
|
24290
24601
|
var Render = { render: render };
|
24291
24602
|
|
24603
|
+
var internalContentEditableAttr = 'data-mce-contenteditable';
|
24292
24604
|
var toggleClass = function (elm, cls, state) {
|
24293
24605
|
if (has$2(elm, cls) && state === false) {
|
24294
24606
|
remove$4(elm, cls);
|
@@ -24296,13 +24608,160 @@
|
|
24296
24608
|
add$3(elm, cls);
|
24297
24609
|
}
|
24298
24610
|
};
|
24299
|
-
var
|
24300
|
-
|
24301
|
-
|
24302
|
-
|
24303
|
-
|
24304
|
-
|
24305
|
-
|
24611
|
+
var setEditorCommandState = function (editor, cmd, state) {
|
24612
|
+
try {
|
24613
|
+
editor.getDoc().execCommand(cmd, false, state);
|
24614
|
+
} catch (ex) {
|
24615
|
+
}
|
24616
|
+
};
|
24617
|
+
var setContentEditable = function (elm, state) {
|
24618
|
+
elm.dom().contentEditable = state ? 'true' : 'false';
|
24619
|
+
};
|
24620
|
+
var switchOffContentEditableTrue = function (elm) {
|
24621
|
+
each(descendants$1(elm, '*[contenteditable="true"]'), function (elm) {
|
24622
|
+
set(elm, internalContentEditableAttr, 'true');
|
24623
|
+
setContentEditable(elm, false);
|
24624
|
+
});
|
24625
|
+
};
|
24626
|
+
var switchOnContentEditableTrue = function (elm) {
|
24627
|
+
each(descendants$1(elm, '*[' + internalContentEditableAttr + '="true"]'), function (elm) {
|
24628
|
+
remove(elm, internalContentEditableAttr);
|
24629
|
+
setContentEditable(elm, true);
|
24630
|
+
});
|
24631
|
+
};
|
24632
|
+
var removeFakeSelection = function (editor) {
|
24633
|
+
Option.from(editor.selection.getNode()).each(function (elm) {
|
24634
|
+
elm.removeAttribute('data-mce-selected');
|
24635
|
+
});
|
24636
|
+
};
|
24637
|
+
var restoreFakeSelection = function (editor) {
|
24638
|
+
editor.selection.setRng(editor.selection.getRng());
|
24639
|
+
};
|
24640
|
+
var toggleReadOnly = function (editor, state) {
|
24641
|
+
var body = Element.fromDom(editor.getBody());
|
24642
|
+
toggleClass(body, 'mce-content-readonly', state);
|
24643
|
+
if (state) {
|
24644
|
+
editor.selection.controlSelection.hideResizeRect();
|
24645
|
+
editor._selectionOverrides.hideFakeCaret();
|
24646
|
+
removeFakeSelection(editor);
|
24647
|
+
editor.readonly = true;
|
24648
|
+
setContentEditable(body, false);
|
24649
|
+
switchOffContentEditableTrue(body);
|
24650
|
+
} else {
|
24651
|
+
editor.readonly = false;
|
24652
|
+
setContentEditable(body, true);
|
24653
|
+
switchOnContentEditableTrue(body);
|
24654
|
+
setEditorCommandState(editor, 'StyleWithCSS', false);
|
24655
|
+
setEditorCommandState(editor, 'enableInlineTableEditing', false);
|
24656
|
+
setEditorCommandState(editor, 'enableObjectResizing', false);
|
24657
|
+
editor.focus();
|
24658
|
+
restoreFakeSelection(editor);
|
24659
|
+
editor.nodeChanged();
|
24660
|
+
}
|
24661
|
+
};
|
24662
|
+
var isReadOnly = function (editor) {
|
24663
|
+
return editor.readonly === true;
|
24664
|
+
};
|
24665
|
+
var registerFilters = function (editor) {
|
24666
|
+
editor.parser.addAttributeFilter('contenteditable', function (nodes) {
|
24667
|
+
if (isReadOnly(editor)) {
|
24668
|
+
each(nodes, function (node) {
|
24669
|
+
node.attr(internalContentEditableAttr, node.attr('contenteditable'));
|
24670
|
+
node.attr('contenteditable', 'false');
|
24671
|
+
});
|
24672
|
+
}
|
24673
|
+
});
|
24674
|
+
editor.serializer.addAttributeFilter(internalContentEditableAttr, function (nodes) {
|
24675
|
+
if (isReadOnly(editor)) {
|
24676
|
+
each(nodes, function (node) {
|
24677
|
+
node.attr('contenteditable', node.attr(internalContentEditableAttr));
|
24678
|
+
});
|
24679
|
+
}
|
24680
|
+
});
|
24681
|
+
editor.serializer.addTempAttr(internalContentEditableAttr);
|
24682
|
+
};
|
24683
|
+
var registerReadOnlyContentFilters = function (editor) {
|
24684
|
+
if (editor.serializer) {
|
24685
|
+
registerFilters(editor);
|
24686
|
+
} else {
|
24687
|
+
editor.on('PreInit', function () {
|
24688
|
+
registerFilters(editor);
|
24689
|
+
});
|
24690
|
+
}
|
24691
|
+
};
|
24692
|
+
var preventReadOnlyEvents = function (e) {
|
24693
|
+
var target = e.target;
|
24694
|
+
if (e.type === 'click' && target.tagName === 'A') {
|
24695
|
+
e.preventDefault();
|
24696
|
+
}
|
24697
|
+
};
|
24698
|
+
var registerReadOnlySelectionBlockers = function (editor) {
|
24699
|
+
editor.on('ShowCaret', function (e) {
|
24700
|
+
if (isReadOnly(editor)) {
|
24701
|
+
e.preventDefault();
|
24702
|
+
}
|
24703
|
+
});
|
24704
|
+
editor.on('ObjectSelected', function (e) {
|
24705
|
+
if (isReadOnly(editor)) {
|
24706
|
+
e.preventDefault();
|
24707
|
+
}
|
24708
|
+
});
|
24709
|
+
};
|
24710
|
+
|
24711
|
+
var defaultModes = [
|
24712
|
+
'design',
|
24713
|
+
'readonly'
|
24714
|
+
];
|
24715
|
+
var switchToMode = function (editor, activeMode, availableModes, mode) {
|
24716
|
+
var oldMode = availableModes[activeMode.get()];
|
24717
|
+
var newMode = availableModes[mode];
|
24718
|
+
try {
|
24719
|
+
newMode.activate();
|
24720
|
+
} catch (e) {
|
24721
|
+
domGlobals.console.error('problem while activating editor mode ' + mode + ':', e);
|
24722
|
+
return;
|
24723
|
+
}
|
24724
|
+
oldMode.deactivate();
|
24725
|
+
if (oldMode.editorReadOnly !== newMode.editorReadOnly) {
|
24726
|
+
toggleReadOnly(editor, newMode.editorReadOnly);
|
24727
|
+
}
|
24728
|
+
activeMode.set(mode);
|
24729
|
+
Events.fireSwitchMode(editor, mode);
|
24730
|
+
};
|
24731
|
+
var setMode = function (editor, availableModes, activeMode, mode) {
|
24732
|
+
if (mode === activeMode.get()) {
|
24733
|
+
return;
|
24734
|
+
} else if (!has(availableModes, mode)) {
|
24735
|
+
throw new Error('Editor mode \'' + mode + '\' is invalid');
|
24736
|
+
}
|
24737
|
+
if (editor.initialized) {
|
24738
|
+
switchToMode(editor, activeMode, availableModes, mode);
|
24739
|
+
} else {
|
24740
|
+
editor.on('init', function () {
|
24741
|
+
return switchToMode(editor, activeMode, availableModes, mode);
|
24742
|
+
});
|
24743
|
+
}
|
24744
|
+
};
|
24745
|
+
var registerMode = function (availableModes, mode, api) {
|
24746
|
+
var _a;
|
24747
|
+
if (contains(defaultModes, mode)) {
|
24748
|
+
throw new Error('Cannot override default mode ' + mode);
|
24749
|
+
}
|
24750
|
+
return __assign({}, availableModes, (_a = {}, _a[mode] = __assign({}, api, {
|
24751
|
+
deactivate: function () {
|
24752
|
+
try {
|
24753
|
+
api.deactivate();
|
24754
|
+
} catch (e) {
|
24755
|
+
domGlobals.console.error('problem while deactivating editor mode ' + mode + ':');
|
24756
|
+
domGlobals.console.error(e);
|
24757
|
+
}
|
24758
|
+
}
|
24759
|
+
}), _a));
|
24760
|
+
};
|
24761
|
+
|
24762
|
+
var create$4 = function (editor) {
|
24763
|
+
var activeMode = Cell('design');
|
24764
|
+
var availableModes = Cell({
|
24306
24765
|
design: {
|
24307
24766
|
activate: noop,
|
24308
24767
|
deactivate: noop,
|
@@ -24313,85 +24772,22 @@
|
|
24313
24772
|
deactivate: noop,
|
24314
24773
|
editorReadOnly: true
|
24315
24774
|
}
|
24316
|
-
};
|
24317
|
-
|
24318
|
-
|
24319
|
-
editor.getDoc().execCommand(cmd, false, state);
|
24320
|
-
} catch (ex) {
|
24321
|
-
}
|
24322
|
-
};
|
24323
|
-
var toggleReadOnly = function (state) {
|
24324
|
-
toggleClass(Element.fromDom(editor.getBody()), 'mce-content-readonly', state);
|
24325
|
-
if (state) {
|
24326
|
-
editor.selection.controlSelection.hideResizeRect();
|
24327
|
-
editor.readonly = true;
|
24328
|
-
editor.getBody().contentEditable = 'false';
|
24329
|
-
} else {
|
24330
|
-
editor.readonly = false;
|
24331
|
-
editor.getBody().contentEditable = 'true';
|
24332
|
-
setEditorCommandState('StyleWithCSS', false);
|
24333
|
-
setEditorCommandState('enableInlineTableEditing', false);
|
24334
|
-
setEditorCommandState('enableObjectResizing', false);
|
24335
|
-
editor.focus();
|
24336
|
-
editor.nodeChanged();
|
24337
|
-
}
|
24338
|
-
};
|
24339
|
-
var switchToMode = function (mode) {
|
24340
|
-
var oldMode = availableModes[activeMode];
|
24341
|
-
var newMode = availableModes[mode];
|
24342
|
-
try {
|
24343
|
-
newMode.activate();
|
24344
|
-
} catch (e) {
|
24345
|
-
domGlobals.console.error('problem while activating editor mode ' + mode + ':', e);
|
24346
|
-
return;
|
24347
|
-
}
|
24348
|
-
oldMode.deactivate();
|
24349
|
-
if (oldMode.editorReadOnly !== newMode.editorReadOnly) {
|
24350
|
-
toggleReadOnly(newMode.editorReadOnly);
|
24351
|
-
}
|
24352
|
-
activeMode = mode;
|
24353
|
-
Events.fireSwitchMode(editor, mode);
|
24354
|
-
};
|
24355
|
-
var set = function (mode) {
|
24356
|
-
if (mode === activeMode) {
|
24357
|
-
return;
|
24358
|
-
} else if (!has(availableModes, mode)) {
|
24359
|
-
throw new Error('Editor mode \'' + mode + '\' is invalid');
|
24360
|
-
}
|
24361
|
-
if (editor.initialized) {
|
24362
|
-
switchToMode(mode);
|
24363
|
-
} else {
|
24364
|
-
editor.on('init', function () {
|
24365
|
-
return switchToMode(mode);
|
24366
|
-
});
|
24367
|
-
}
|
24368
|
-
};
|
24369
|
-
var get = function () {
|
24370
|
-
return activeMode;
|
24371
|
-
};
|
24372
|
-
var isReadOnly = function () {
|
24373
|
-
return editor.readonly === true;
|
24374
|
-
};
|
24375
|
-
var register = function (mode, api) {
|
24376
|
-
if (contains(defaultModes, mode)) {
|
24377
|
-
throw new Error('Cannot override default mode ' + mode);
|
24378
|
-
}
|
24379
|
-
availableModes[mode] = __assign({}, api, {
|
24380
|
-
deactivate: function () {
|
24381
|
-
try {
|
24382
|
-
api.deactivate();
|
24383
|
-
} catch (e) {
|
24384
|
-
domGlobals.console.error('problem while deactivating editor mode ' + mode + ':');
|
24385
|
-
domGlobals.console.error(e);
|
24386
|
-
}
|
24387
|
-
}
|
24388
|
-
});
|
24389
|
-
};
|
24775
|
+
});
|
24776
|
+
registerReadOnlyContentFilters(editor);
|
24777
|
+
registerReadOnlySelectionBlockers(editor);
|
24390
24778
|
return {
|
24391
|
-
isReadOnly:
|
24392
|
-
|
24393
|
-
|
24394
|
-
|
24779
|
+
isReadOnly: function () {
|
24780
|
+
return isReadOnly(editor);
|
24781
|
+
},
|
24782
|
+
set: function (mode) {
|
24783
|
+
return setMode(editor, availableModes.get(), activeMode, mode);
|
24784
|
+
},
|
24785
|
+
get: function () {
|
24786
|
+
return activeMode.get();
|
24787
|
+
},
|
24788
|
+
register: function (mode, api) {
|
24789
|
+
availableModes.set(registerMode(availableModes.get(), mode, api));
|
24790
|
+
}
|
24395
24791
|
};
|
24396
24792
|
};
|
24397
24793
|
|
@@ -25375,7 +25771,7 @@
|
|
25375
25771
|
value = { href: value };
|
25376
25772
|
}
|
25377
25773
|
anchor = editor.dom.getParent(editor.selection.getNode(), 'a');
|
25378
|
-
value.href = value.href.replace(
|
25774
|
+
value.href = value.href.replace(/ /g, '%20');
|
25379
25775
|
if (!anchor || !value.href) {
|
25380
25776
|
editor.formatter.remove('link');
|
25381
25777
|
}
|
@@ -25452,18 +25848,12 @@
|
|
25452
25848
|
}();
|
25453
25849
|
|
25454
25850
|
var nativeEvents = Tools.makeMap('focus blur focusin focusout click dblclick mousedown mouseup mousemove mouseover beforepaste paste cut copy selectionchange ' + 'mouseout mouseenter mouseleave wheel keydown keypress keyup input contextmenu dragstart dragend dragover ' + 'draggesture dragdrop drop drag submit ' + 'compositionstart compositionend compositionupdate touchstart touchmove touchend', ' ');
|
25455
|
-
var returnFalse$1 = function () {
|
25456
|
-
return false;
|
25457
|
-
};
|
25458
|
-
var returnTrue$1 = function () {
|
25459
|
-
return true;
|
25460
|
-
};
|
25461
25851
|
var EventDispatcher = function () {
|
25462
25852
|
function EventDispatcher(settings) {
|
25463
25853
|
this.bindings = {};
|
25464
25854
|
this.settings = settings || {};
|
25465
25855
|
this.scope = this.settings.scope || this;
|
25466
|
-
this.toggleEvent = this.settings.toggleEvent ||
|
25856
|
+
this.toggleEvent = this.settings.toggleEvent || never;
|
25467
25857
|
}
|
25468
25858
|
EventDispatcher.isNative = function (name) {
|
25469
25859
|
return !!nativeEvents[name.toLowerCase()];
|
@@ -25478,17 +25868,17 @@
|
|
25478
25868
|
}
|
25479
25869
|
if (!args.preventDefault) {
|
25480
25870
|
args.preventDefault = function () {
|
25481
|
-
args.isDefaultPrevented =
|
25871
|
+
args.isDefaultPrevented = always;
|
25482
25872
|
};
|
25483
25873
|
args.stopPropagation = function () {
|
25484
|
-
args.isPropagationStopped =
|
25874
|
+
args.isPropagationStopped = always;
|
25485
25875
|
};
|
25486
25876
|
args.stopImmediatePropagation = function () {
|
25487
|
-
args.isImmediatePropagationStopped =
|
25877
|
+
args.isImmediatePropagationStopped = always;
|
25488
25878
|
};
|
25489
|
-
args.isDefaultPrevented =
|
25490
|
-
args.isPropagationStopped =
|
25491
|
-
args.isImmediatePropagationStopped =
|
25879
|
+
args.isDefaultPrevented = never;
|
25880
|
+
args.isPropagationStopped = never;
|
25881
|
+
args.isImmediatePropagationStopped = never;
|
25492
25882
|
}
|
25493
25883
|
if (this.settings.beforeFire) {
|
25494
25884
|
this.settings.beforeFire(args);
|
@@ -25515,7 +25905,7 @@
|
|
25515
25905
|
EventDispatcher.prototype.on = function (name, callback, prepend, extra) {
|
25516
25906
|
var handlers, names, i;
|
25517
25907
|
if (callback === false) {
|
25518
|
-
callback =
|
25908
|
+
callback = never;
|
25519
25909
|
}
|
25520
25910
|
if (callback) {
|
25521
25911
|
var wrappedCallback = { func: callback };
|
@@ -25652,13 +26042,13 @@
|
|
25652
26042
|
return editor.getBody();
|
25653
26043
|
};
|
25654
26044
|
var isListening = function (editor) {
|
25655
|
-
return !editor.hidden && !editor
|
26045
|
+
return !editor.hidden && !isReadOnly(editor);
|
25656
26046
|
};
|
25657
26047
|
var fireEvent = function (editor, eventName, e) {
|
25658
26048
|
if (isListening(editor)) {
|
25659
26049
|
editor.fire(eventName, e);
|
25660
|
-
} else if (editor
|
25661
|
-
e
|
26050
|
+
} else if (isReadOnly(editor)) {
|
26051
|
+
preventReadOnlyEvents(e);
|
25662
26052
|
}
|
25663
26053
|
};
|
25664
26054
|
var bindEventDelegate = function (editor, eventName) {
|
@@ -26157,7 +26547,7 @@
|
|
26157
26547
|
return URI;
|
26158
26548
|
}();
|
26159
26549
|
|
26160
|
-
var create$
|
26550
|
+
var create$5 = function () {
|
26161
26551
|
var buttons = {};
|
26162
26552
|
var menuItems = {};
|
26163
26553
|
var popups = {};
|
@@ -26202,7 +26592,7 @@
|
|
26202
26592
|
};
|
26203
26593
|
|
26204
26594
|
var registry = function () {
|
26205
|
-
var bridge = create$
|
26595
|
+
var bridge = create$5();
|
26206
26596
|
return {
|
26207
26597
|
addAutocompleter: bridge.addAutocompleter,
|
26208
26598
|
addButton: bridge.addButton,
|
@@ -26235,9 +26625,16 @@
|
|
26235
26625
|
this.isNotDirty = false;
|
26236
26626
|
this.editorManager = editorManager;
|
26237
26627
|
this.documentBaseUrl = editorManager.documentBaseURL;
|
26238
|
-
this.baseUri = editorManager.baseURI;
|
26239
26628
|
extend$3(this, EditorObservable);
|
26240
26629
|
this.settings = getEditorSettings(this, id, this.documentBaseUrl, editorManager.defaultSettings, settings);
|
26630
|
+
if (this.settings.suffix) {
|
26631
|
+
editorManager.suffix = this.settings.suffix;
|
26632
|
+
}
|
26633
|
+
this.suffix = editorManager.suffix;
|
26634
|
+
if (this.settings.base_url) {
|
26635
|
+
editorManager._setBaseUrl(this.settings.base_url);
|
26636
|
+
}
|
26637
|
+
this.baseUri = editorManager.baseURI;
|
26241
26638
|
AddOnManager$1.languageLoad = this.settings.language_load;
|
26242
26639
|
AddOnManager$1.baseURL = editorManager.baseURL;
|
26243
26640
|
this.id = id;
|
@@ -26245,18 +26642,14 @@
|
|
26245
26642
|
this.documentBaseURI = new URI(this.settings.document_base_url, { base_uri: this.baseUri });
|
26246
26643
|
this.baseURI = this.baseUri;
|
26247
26644
|
this.inline = this.settings.inline;
|
26248
|
-
this.suffix = editorManager.suffix;
|
26249
26645
|
this.shortcuts = new Shortcuts(this);
|
26250
26646
|
this.editorCommands = new EditorCommands(this);
|
26251
26647
|
if (this.settings.cache_suffix) {
|
26252
26648
|
Env.cacheSuffix = this.settings.cache_suffix.replace(/^[\?\&]+/, '');
|
26253
26649
|
}
|
26254
|
-
if (this.settings.override_viewport === false) {
|
26255
|
-
Env.overrideViewPort = false;
|
26256
|
-
}
|
26257
26650
|
this.ui = { registry: registry() };
|
26258
26651
|
var self = this;
|
26259
|
-
var modeInstance = create$
|
26652
|
+
var modeInstance = create$4(self);
|
26260
26653
|
this.mode = modeInstance;
|
26261
26654
|
this.setMode = modeInstance.set;
|
26262
26655
|
editorManager.fire('SetupEditor', { editor: this });
|
@@ -26727,7 +27120,8 @@
|
|
26727
27120
|
|
26728
27121
|
var DOM$9 = DOMUtils$1.DOM;
|
26729
27122
|
var explode$4 = Tools.explode, each$k = Tools.each, extend$4 = Tools.extend;
|
26730
|
-
var instanceCounter = 0,
|
27123
|
+
var instanceCounter = 0, boundGlobalEvents = false;
|
27124
|
+
var beforeUnloadDelegate;
|
26731
27125
|
var legacyEditors = [];
|
26732
27126
|
var editors = [];
|
26733
27127
|
var isValidLegacyKey = function (id) {
|
@@ -26787,7 +27181,6 @@
|
|
26787
27181
|
return editor;
|
26788
27182
|
};
|
26789
27183
|
var EditorManager = __assign({}, Observable, {
|
26790
|
-
_beforeUnloadHandler: null,
|
26791
27184
|
baseURI: null,
|
26792
27185
|
baseURL: null,
|
26793
27186
|
defaultSettings: {},
|
@@ -26795,8 +27188,8 @@
|
|
26795
27188
|
suffix: null,
|
26796
27189
|
$: DomQuery,
|
26797
27190
|
majorVersion: '5',
|
26798
|
-
minorVersion: '0.
|
26799
|
-
releaseDate: '2019-
|
27191
|
+
minorVersion: '0.9',
|
27192
|
+
releaseDate: '2019-06-26',
|
26800
27193
|
editors: legacyEditors,
|
26801
27194
|
i18n: I18n,
|
26802
27195
|
activeEditor: null,
|
@@ -26847,8 +27240,7 @@
|
|
26847
27240
|
var baseUrl, suffix;
|
26848
27241
|
baseUrl = defaultSettings.base_url;
|
26849
27242
|
if (baseUrl) {
|
26850
|
-
this.
|
26851
|
-
this.baseURI = new URI(this.baseURL);
|
27243
|
+
this._setBaseUrl(baseUrl);
|
26852
27244
|
}
|
26853
27245
|
suffix = defaultSettings.suffix;
|
26854
27246
|
if (defaultSettings.suffix) {
|
@@ -27036,10 +27428,15 @@
|
|
27036
27428
|
self.activeEditor = editor;
|
27037
27429
|
self.fire('AddEditor', { editor: editor });
|
27038
27430
|
if (!beforeUnloadDelegate) {
|
27039
|
-
beforeUnloadDelegate = function () {
|
27040
|
-
self.fire('BeforeUnload');
|
27431
|
+
beforeUnloadDelegate = function (e) {
|
27432
|
+
var event = self.fire('BeforeUnload');
|
27433
|
+
if (event.returnValue) {
|
27434
|
+
e.preventDefault();
|
27435
|
+
e.returnValue = event.returnValue;
|
27436
|
+
return event.returnValue;
|
27437
|
+
}
|
27041
27438
|
};
|
27042
|
-
|
27439
|
+
window.addEventListener('beforeunload', beforeUnloadDelegate);
|
27043
27440
|
}
|
27044
27441
|
return editor;
|
27045
27442
|
},
|
@@ -27072,7 +27469,7 @@
|
|
27072
27469
|
self.fire('RemoveEditor', { editor: editor });
|
27073
27470
|
}
|
27074
27471
|
if (editors.length === 0) {
|
27075
|
-
|
27472
|
+
window.removeEventListener('beforeunload', beforeUnloadDelegate);
|
27076
27473
|
}
|
27077
27474
|
editor.remove();
|
27078
27475
|
toggleGlobalEvents(editors.length > 0);
|
@@ -27128,6 +27525,10 @@
|
|
27128
27525
|
editor.fire('activate', { relatedTarget: activeEditor });
|
27129
27526
|
}
|
27130
27527
|
this.activeEditor = editor;
|
27528
|
+
},
|
27529
|
+
_setBaseUrl: function (baseUrl) {
|
27530
|
+
this.baseURL = new URI(this.documentBaseURL).toAbsolute(baseUrl.replace(/\/+$/, ''));
|
27531
|
+
this.baseURI = new URI(this.baseURL);
|
27131
27532
|
}
|
27132
27533
|
});
|
27133
27534
|
EditorManager.setup();
|
@@ -27192,7 +27593,7 @@
|
|
27192
27593
|
if (rel[4] === 'c') {
|
27193
27594
|
x -= round$2(w / 2);
|
27194
27595
|
}
|
27195
|
-
return create$
|
27596
|
+
return create$6(x, y, w, h);
|
27196
27597
|
};
|
27197
27598
|
var findBestRelativePosition = function (rect, targetRect, constrainRect, rels) {
|
27198
27599
|
var pos, i;
|
@@ -27205,7 +27606,7 @@
|
|
27205
27606
|
return null;
|
27206
27607
|
};
|
27207
27608
|
var inflate = function (rect, w, h) {
|
27208
|
-
return create$
|
27609
|
+
return create$6(rect.x - w, rect.y - h, rect.w + w * 2, rect.h + h * 2);
|
27209
27610
|
};
|
27210
27611
|
var intersect = function (rect, cropRect) {
|
27211
27612
|
var x1, y1, x2, y2;
|
@@ -27216,7 +27617,7 @@
|
|
27216
27617
|
if (x2 - x1 < 0 || y2 - y1 < 0) {
|
27217
27618
|
return null;
|
27218
27619
|
}
|
27219
|
-
return create$
|
27620
|
+
return create$6(x1, y1, x2 - x1, y2 - y1);
|
27220
27621
|
};
|
27221
27622
|
var clamp$1 = function (rect, clampRect, fixedSize) {
|
27222
27623
|
var underflowX1, underflowY1, overflowX2, overflowY2, x1, y1, x2, y2, cx2, cy2;
|
@@ -27240,9 +27641,9 @@
|
|
27240
27641
|
}
|
27241
27642
|
x2 -= overflowX2;
|
27242
27643
|
y2 -= overflowY2;
|
27243
|
-
return create$
|
27644
|
+
return create$6(x1, y1, x2 - x1, y2 - y1);
|
27244
27645
|
};
|
27245
|
-
var create$
|
27646
|
+
var create$6 = function (x, y, w, h) {
|
27246
27647
|
return {
|
27247
27648
|
x: x,
|
27248
27649
|
y: y,
|
@@ -27251,7 +27652,7 @@
|
|
27251
27652
|
};
|
27252
27653
|
};
|
27253
27654
|
var fromClientRect = function (clientRect) {
|
27254
|
-
return create$
|
27655
|
+
return create$6(clientRect.left, clientRect.top, clientRect.width, clientRect.height);
|
27255
27656
|
};
|
27256
27657
|
var Rect = {
|
27257
27658
|
inflate: inflate,
|
@@ -27259,7 +27660,7 @@
|
|
27259
27660
|
findBestRelativePosition: findBestRelativePosition,
|
27260
27661
|
intersect: intersect,
|
27261
27662
|
clamp: clamp$1,
|
27262
|
-
create: create$
|
27663
|
+
create: create$6,
|
27263
27664
|
fromClientRect: fromClientRect
|
27264
27665
|
};
|
27265
27666
|
|
@@ -27633,7 +28034,7 @@
|
|
27633
28034
|
return JSONRequest;
|
27634
28035
|
}();
|
27635
28036
|
|
27636
|
-
var create$
|
28037
|
+
var create$7 = function () {
|
27637
28038
|
return function () {
|
27638
28039
|
var data = {};
|
27639
28040
|
var keys = [];
|
@@ -27676,7 +28077,7 @@
|
|
27676
28077
|
try {
|
27677
28078
|
localStorage = domGlobals.window.localStorage;
|
27678
28079
|
} catch (e) {
|
27679
|
-
localStorage = create$
|
28080
|
+
localStorage = create$7();
|
27680
28081
|
}
|
27681
28082
|
var LocalStorage = localStorage;
|
27682
28083
|
|
@@ -27710,7 +28111,7 @@
|
|
27710
28111
|
Serializer: Serializer$1,
|
27711
28112
|
ControlSelection: ControlSelection,
|
27712
28113
|
BookmarkManager: BookmarkManager$1,
|
27713
|
-
Selection: Selection,
|
28114
|
+
Selection: Selection$1,
|
27714
28115
|
Event: EventUtils.Event
|
27715
28116
|
},
|
27716
28117
|
html: {
|
@@ -27781,4 +28182,3 @@
|
|
27781
28182
|
exportToModuleLoaders(tinymce);
|
27782
28183
|
|
27783
28184
|
}(window));
|
27784
|
-
})();
|