create-nextjs-cms 0.5.23 → 0.5.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +5 -7
- package/templates/default/components/NewPage.tsx +2 -2
- package/templates/default/components/ProgressBar.tsx +46 -22
- package/templates/default/components/form/DateRangeFormInput.tsx +8 -6
- package/templates/default/components/form/helpers/_section-hot-reload.js +1 -1
- package/templates/default/components/form/inputs/DateFormInput.tsx +82 -34
- package/templates/default/components/form/inputs/MultipleSelectFormInput.tsx +40 -107
- package/templates/default/components/form/inputs/RichTextFormInput.tsx +2 -0
- package/templates/default/components/form/inputs/TagsFormInput.tsx +115 -26
- package/templates/default/components/form/inputs/TextFormInput.tsx +1 -1
- package/templates/default/components/multi-select.tsx +1144 -0
- package/templates/default/components/ui/badge.tsx +16 -12
- package/templates/default/components/ui/button.tsx +35 -30
- package/templates/default/components/ui/calendar.tsx +145 -47
- package/templates/default/components/ui/command.tsx +184 -0
- package/templates/default/components/ui/dialog.tsx +143 -0
- package/templates/default/components/ui/popover.tsx +39 -22
- package/templates/default/components/ui/progress.tsx +31 -0
- package/templates/default/components/ui/select.tsx +150 -149
- package/templates/default/components/ui/separator.tsx +28 -0
- package/templates/default/components.json +8 -3
- package/templates/default/{postinstall.js → lib/postinstall.js} +1 -1
- package/templates/default/lib/utils.ts +6 -0
- package/templates/default/{proxy.ts → middleware.ts} +3 -2
- package/templates/default/next-env.d.ts +1 -1
- package/templates/default/package.json +41 -52
- package/templates/default/public/tinymce/CHANGELOG.md +155 -0
- package/templates/default/public/tinymce/README.md +12 -12
- package/templates/default/public/tinymce/bower.json +1 -1
- package/templates/default/public/tinymce/composer.json +2 -2
- package/templates/default/public/tinymce/icons/default/icons.js +40 -32
- package/templates/default/public/tinymce/icons/default/icons.min.js +1 -1
- package/templates/default/public/tinymce/license.md +7 -4
- package/templates/default/public/tinymce/models/dom/model.js +36 -50
- package/templates/default/public/tinymce/models/dom/model.min.js +1 -1
- package/templates/default/public/tinymce/notices.txt +2 -2
- package/templates/default/public/tinymce/package.json +2 -2
- package/templates/default/public/tinymce/plugins/accordion/plugin.js +45 -21
- package/templates/default/public/tinymce/plugins/accordion/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/advlist/plugin.js +8 -6
- package/templates/default/public/tinymce/plugins/advlist/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/anchor/plugin.js +1 -1
- package/templates/default/public/tinymce/plugins/autolink/plugin.js +3 -6
- package/templates/default/public/tinymce/plugins/autolink/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/autoresize/plugin.js +4 -6
- package/templates/default/public/tinymce/plugins/autoresize/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/autosave/plugin.js +4 -7
- package/templates/default/public/tinymce/plugins/autosave/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/charmap/plugin.js +8 -8
- package/templates/default/public/tinymce/plugins/charmap/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/code/plugin.js +3 -2
- package/templates/default/public/tinymce/plugins/code/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/codesample/plugin.js +11 -10
- package/templates/default/public/tinymce/plugins/codesample/plugin.min.js +2 -2
- package/templates/default/public/tinymce/plugins/directionality/plugin.js +9 -11
- package/templates/default/public/tinymce/plugins/directionality/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/emoticons/plugin.js +7 -7
- package/templates/default/public/tinymce/plugins/emoticons/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/fullscreen/plugin.js +11 -13
- package/templates/default/public/tinymce/plugins/fullscreen/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/bg-BG.js +93 -0
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/fr-FR.js +93 -0
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/he-IL.js +93 -0
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/hu-HU.js +93 -0
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/ko-KR.js +93 -0
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/nb-NO.js +93 -0
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/pt-BR.js +93 -0
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/pt-PT.js +93 -0
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/sl-SI.js +93 -0
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/sv-SE.js +93 -0
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/th-TH.js +93 -0
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/zh-CN.js +87 -0
- package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/zh-TW.js +93 -0
- package/templates/default/public/tinymce/plugins/help/plugin.js +15 -17
- package/templates/default/public/tinymce/plugins/help/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/image/plugin.js +34 -32
- package/templates/default/public/tinymce/plugins/image/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/importcss/plugin.js +4 -6
- package/templates/default/public/tinymce/plugins/importcss/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/insertdatetime/plugin.js +4 -3
- package/templates/default/public/tinymce/plugins/insertdatetime/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/link/plugin.js +170 -38
- package/templates/default/public/tinymce/plugins/link/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/lists/plugin.js +111 -2053
- package/templates/default/public/tinymce/plugins/lists/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/media/plugin.js +15 -23
- package/templates/default/public/tinymce/plugins/media/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/nonbreaking/plugin.js +1 -1
- package/templates/default/public/tinymce/plugins/pagebreak/plugin.js +1 -1
- package/templates/default/public/tinymce/plugins/preview/plugin.js +88 -10
- package/templates/default/public/tinymce/plugins/preview/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/quickbars/plugin.js +9 -9
- package/templates/default/public/tinymce/plugins/quickbars/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/save/plugin.js +1 -1
- package/templates/default/public/tinymce/plugins/searchreplace/plugin.js +10 -13
- package/templates/default/public/tinymce/plugins/searchreplace/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/table/plugin.js +13 -24
- package/templates/default/public/tinymce/plugins/table/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/visualblocks/plugin.js +1 -1
- package/templates/default/public/tinymce/plugins/visualchars/plugin.js +9 -10
- package/templates/default/public/tinymce/plugins/visualchars/plugin.min.js +1 -1
- package/templates/default/public/tinymce/plugins/wordcount/plugin.js +1 -1
- package/templates/default/public/tinymce/skins/content/dark/content.min.ts +3 -0
- package/templates/default/public/tinymce/skins/content/dark/content.ts +3 -0
- package/templates/default/public/tinymce/skins/content/default/content.min.ts +3 -0
- package/templates/default/public/tinymce/skins/content/default/content.ts +3 -0
- package/templates/default/public/tinymce/skins/content/document/content.min.ts +3 -0
- package/templates/default/public/tinymce/skins/content/document/content.ts +3 -0
- package/templates/default/public/tinymce/skins/content/tinymce-5/content.min.ts +3 -0
- package/templates/default/public/tinymce/skins/content/tinymce-5/content.ts +3 -0
- package/templates/default/public/tinymce/skins/content/tinymce-5-dark/content.min.ts +3 -0
- package/templates/default/public/tinymce/skins/content/tinymce-5-dark/content.ts +3 -0
- package/templates/default/public/tinymce/skins/content/writer/content.min.ts +3 -0
- package/templates/default/public/tinymce/skins/content/writer/content.ts +3 -0
- package/templates/default/public/tinymce/skins/ui/oxide/content.css +144 -0
- package/templates/default/public/tinymce/skins/ui/oxide/content.inline.css +144 -0
- package/templates/default/public/tinymce/skins/ui/oxide/content.inline.js +1 -1
- package/templates/default/public/tinymce/skins/ui/oxide/content.inline.min.css +1 -1
- package/templates/default/public/tinymce/skins/ui/oxide/content.inline.min.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/oxide/content.inline.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/oxide/content.js +1 -1
- package/templates/default/public/tinymce/skins/ui/oxide/content.min.css +1 -1
- package/templates/default/public/tinymce/skins/ui/oxide/content.min.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/oxide/content.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/oxide/skin.css +923 -449
- package/templates/default/public/tinymce/skins/ui/oxide/skin.js +1 -1
- package/templates/default/public/tinymce/skins/ui/oxide/skin.min.css +1 -1
- package/templates/default/public/tinymce/skins/ui/oxide/skin.min.ts +507 -0
- package/templates/default/public/tinymce/skins/ui/oxide/skin.shadowdom.min.ts +9 -0
- package/templates/default/public/tinymce/skins/ui/oxide/skin.shadowdom.ts +9 -0
- package/templates/default/public/tinymce/skins/ui/oxide/skin.ts +507 -0
- package/templates/default/public/tinymce/skins/ui/oxide-dark/content.css +144 -0
- package/templates/default/public/tinymce/skins/ui/oxide-dark/content.inline.css +144 -0
- package/templates/default/public/tinymce/skins/ui/oxide-dark/content.inline.js +1 -1
- package/templates/default/public/tinymce/skins/ui/oxide-dark/content.inline.min.css +1 -1
- package/templates/default/public/tinymce/skins/ui/oxide-dark/content.inline.min.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/oxide-dark/content.inline.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/oxide-dark/content.js +1 -1
- package/templates/default/public/tinymce/skins/ui/oxide-dark/content.min.css +1 -1
- package/templates/default/public/tinymce/skins/ui/oxide-dark/content.min.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/oxide-dark/content.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.css +926 -452
- package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.js +1 -1
- package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.min.css +1 -1
- package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.min.ts +507 -0
- package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.ts +9 -0
- package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.shadowdom.ts +9 -0
- package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.ts +507 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5/content.css +144 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5/content.inline.css +144 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5/content.inline.js +1 -1
- package/templates/default/public/tinymce/skins/ui/tinymce-5/content.inline.min.css +1 -1
- package/templates/default/public/tinymce/skins/ui/tinymce-5/content.inline.min.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5/content.inline.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5/content.js +1 -1
- package/templates/default/public/tinymce/skins/ui/tinymce-5/content.min.css +1 -1
- package/templates/default/public/tinymce/skins/ui/tinymce-5/content.min.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5/content.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.css +924 -450
- package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.js +1 -1
- package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.min.css +1 -1
- package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.min.ts +508 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.ts +9 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.shadowdom.ts +9 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.ts +508 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.css +144 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.inline.css +144 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.inline.js +1 -1
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css +1 -1
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.inline.min.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.inline.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.js +1 -1
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.min.css +1 -1
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.min.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.ts +116 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.css +925 -451
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.js +1 -1
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -1
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.min.ts +508 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.ts +9 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.ts +9 -0
- package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.ts +508 -0
- package/templates/default/public/tinymce/themes/silver/theme.js +543 -593
- package/templates/default/public/tinymce/themes/silver/theme.min.js +1 -1
- package/templates/default/public/tinymce/tinymce.d.ts +559 -496
- package/templates/default/public/tinymce/tinymce.js +6788 -3964
- package/templates/default/public/tinymce/tinymce.min.js +3 -4
- package/templates/default/styles/globals.css +132 -107
- package/templates/default/tsconfig.json +45 -45
- package/templates/default/.prettierrc.json +0 -19
- package/templates/default/eslint.config.mjs +0 -38
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* TinyMCE version
|
|
2
|
+
* TinyMCE version 8.3.1 (2025-12-17)
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
(function () {
|
|
@@ -9,13 +9,12 @@
|
|
|
9
9
|
|
|
10
10
|
/* eslint-disable @typescript-eslint/no-wrapper-object-types */
|
|
11
11
|
const hasProto = (v, constructor, predicate) => {
|
|
12
|
-
var _a;
|
|
13
12
|
if (predicate(v, constructor.prototype)) {
|
|
14
13
|
return true;
|
|
15
14
|
}
|
|
16
15
|
else {
|
|
17
16
|
// String-based fallback time
|
|
18
|
-
return
|
|
17
|
+
return v.constructor?.name === constructor.name;
|
|
19
18
|
}
|
|
20
19
|
};
|
|
21
20
|
const typeOf = (x) => {
|
|
@@ -64,6 +63,11 @@
|
|
|
64
63
|
* strict-null-checks
|
|
65
64
|
*/
|
|
66
65
|
class Optional {
|
|
66
|
+
tag;
|
|
67
|
+
value;
|
|
68
|
+
// Sneaky optimisation: every instance of Optional.none is identical, so just
|
|
69
|
+
// reuse the same object
|
|
70
|
+
static singletonNone = new Optional(false);
|
|
67
71
|
// The internal representation has a `tag` and a `value`, but both are
|
|
68
72
|
// private: able to be console.logged, but not able to be accessed by code
|
|
69
73
|
constructor(tag, value) {
|
|
@@ -231,7 +235,7 @@
|
|
|
231
235
|
*/
|
|
232
236
|
getOrDie(message) {
|
|
233
237
|
if (!this.tag) {
|
|
234
|
-
throw new Error(message
|
|
238
|
+
throw new Error(message ?? 'Called getOrDie on None');
|
|
235
239
|
}
|
|
236
240
|
else {
|
|
237
241
|
return this.value;
|
|
@@ -295,9 +299,6 @@
|
|
|
295
299
|
return this.tag ? `some(${this.value})` : 'none()';
|
|
296
300
|
}
|
|
297
301
|
}
|
|
298
|
-
// Sneaky optimisation: every instance of Optional.none is identical, so just
|
|
299
|
-
// reuse the same object
|
|
300
|
-
Optional.singletonNone = new Optional(false);
|
|
301
302
|
|
|
302
303
|
/**
|
|
303
304
|
* Adds two numbers, and wrap to a range.
|
|
@@ -360,9 +361,8 @@
|
|
|
360
361
|
fileInput.style.opacity = '0.001';
|
|
361
362
|
document.body.appendChild(fileInput);
|
|
362
363
|
const resolveFileInput = (value) => {
|
|
363
|
-
var _a;
|
|
364
364
|
if (!resolved) {
|
|
365
|
-
|
|
365
|
+
fileInput.parentNode?.removeChild(fileInput);
|
|
366
366
|
resolved = true;
|
|
367
367
|
resolve(value);
|
|
368
368
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager");const t=e=>t=>typeof t===e,o=e=>"string"===(e=>{const t=typeof e;return null===e?"null":"object"===t&&Array.isArray(e)?"array":"object"===t&&(o=r=e,(n=String).prototype.isPrototypeOf(o)||
|
|
1
|
+
!function(){"use strict";var e=tinymce.util.Tools.resolve("tinymce.PluginManager");const t=e=>t=>typeof t===e,o=e=>"string"===(e=>{const t=typeof e;return null===e?"null":"object"===t&&Array.isArray(e)?"array":"object"===t&&(o=r=e,(n=String).prototype.isPrototypeOf(o)||r.constructor?.name===n.name)?"string":t;var o,r,n})(e);const r=t("boolean"),n=t("function"),i=()=>false;class s{tag;value;static singletonNone=new s(!1);constructor(e,t){this.tag=e,this.value=t}static some(e){return new s(!0,e)}static none(){return s.singletonNone}fold(e,t){return this.tag?t(this.value):e()}isSome(){return this.tag}isNone(){return!this.tag}map(e){return this.tag?s.some(e(this.value)):s.none()}bind(e){return this.tag?e(this.value):s.none()}exists(e){return this.tag&&e(this.value)}forall(e){return!this.tag||e(this.value)}filter(e){return!this.tag||e(this.value)?this:s.none()}getOr(e){return this.tag?this.value:e}or(e){return this.tag?this:e}getOrThunk(e){return this.tag?this.value:e()}orThunk(e){return this.tag?this:e()}getOrDie(e){if(this.tag)return this.value;throw new Error(e??"Called getOrDie on None")}static from(e){return null==e?s.none():s.some(e)}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(e){this.tag&&e(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}let a=0;var l=tinymce.util.Tools.resolve("tinymce.util.Delay");const c=e=>{e.on("PreInit",(()=>{e.queryCommandSupported("QuickbarInsertImage")||e.addCommand("QuickbarInsertImage",(()=>{(e=>new Promise((t=>{let o=!1;const r=document.createElement("input");r.type="file",r.accept="image/*",r.style.position="fixed",r.style.left="0",r.style.top="0",r.style.opacity="0.001",document.body.appendChild(r);const n=e=>{o||(r.parentNode?.removeChild(r),o=!0,t(e))},i=e=>{n(Array.prototype.slice.call(e.target.files))};r.addEventListener("input",i),r.addEventListener("change",i);const s=t=>{const r=()=>{n([])};o||("focusin"===t.type?l.setEditorTimeout(e,r,1e3):r()),e.off("focusin remove",s)};e.on("focusin remove",s),r.click()})))(e).then((t=>{if(t.length>0){const o=t[0];(e=>new Promise((t=>{const o=new FileReader;o.onloadend=()=>{t(o.result.split(",")[1])},o.readAsDataURL(e)})))(o).then((t=>{((e,t,o)=>{const r=e.editorUpload.blobCache,n=r.create((e=>{const t=(new Date).getTime(),o=Math.floor(window.crypto.getRandomValues(new Uint32Array(1))[0]/4294967295*1e9);return a++,e+"_"+o+a+String(t)})("mceu"),o,t);r.add(n),e.insertContent(e.dom.createHTML("img",{src:n.blobUri()}))})(e,t,o)}))}}))}))}))},u=e=>t=>t.options.get(e),d=u("quickbars_selection_toolbar"),m=u("quickbars_insert_toolbar"),g=u("quickbars_image_toolbar"),h=e=>{if(null==e)throw new Error("Node cannot be null or undefined");return{dom:e}},b=h,p=(e,t)=>{const o=e.dom;if(1!==o.nodeType)return!1;{const e=o;if(void 0!==e.matches)return e.matches(t);if(void 0!==e.msMatchesSelector)return e.msMatchesSelector(t);if(void 0!==e.webkitMatchesSelector)return e.webkitMatchesSelector(t);if(void 0!==e.mozMatchesSelector)return e.mozMatchesSelector(t);throw new Error("Browser lacks native selectors")}};var v=(e,t,o,r,i)=>e(o,r)?s.some(o):n(i)&&i(o)?s.none():t(o,r,i);const f=(e,t,o)=>{let r=e.dom;const a=n(o)?o:i;for(;r.parentNode;){r=r.parentNode;const e=b(r);if(t(e))return s.some(e);if(a(e))break}return s.none()},y=(e,t,o)=>f(e,(e=>p(e,t)),o),k=e=>{const t=m(e);t.length>0&&e.ui.registry.addContextToolbar("quickblock",{predicate:t=>{const o=b(t),r=e.schema.getTextBlockElements(),n=t=>t.dom===e.getBody();return!(e=>{const t=e.dom;return!(!t||!t.hasAttribute)&&t.hasAttribute("data-mce-bogus")})(o)&&((e,t,o)=>v(((e,t)=>p(e,t)),y,e,'table,[data-mce-bogus="all"]',o))(o,0,n).fold((()=>((e,t,o)=>((e,t,o)=>v(((e,t)=>t(e)),f,e,t,o))(e,t,o).isSome())(o,(t=>t.dom.nodeName.toLowerCase()in r&&e.dom.isEmpty(t.dom)),n)),i)},items:t,position:"line",scope:"editor"})};e.add("quickbars",(e=>{(e=>{const t=e.options.register,n=e=>t=>{const n=r(t)||o(t);return n?r(t)?{value:t?e:"",valid:n}:{value:t.trim(),valid:n}:{valid:!1,message:"Must be a boolean or string."}},i="bold italic | quicklink h2 h3 blockquote";t("quickbars_selection_toolbar",{processor:n(i),default:i});const s="quickimage quicktable";t("quickbars_insert_toolbar",{processor:n(s),default:s});const a="alignleft aligncenter alignright";t("quickbars_image_toolbar",{processor:n(a),default:a})})(e),c(e),(e=>{e.ui.registry.addButton("quickimage",{icon:"image",tooltip:"Insert image",onAction:()=>e.execCommand("QuickbarInsertImage")}),e.ui.registry.addButton("quicktable",{icon:"table",tooltip:"Insert table",onAction:()=>{(e=>{e.execCommand("mceInsertTable",!1,{rows:2,columns:2})})(e)}})})(e),k(e),(e=>{const t=t=>e.dom.isEditable(t),o=e=>{const o="FIGURE"===e.nodeName&&/image/i.test(e.className),r="IMG"===e.nodeName||o,n=(e=>void 0!==e.dom.classList)(i=b(e))&&i.dom.classList.contains("mce-pagebreak");var i;return r&&t(e.parentElement)&&!n},r=g(e);r.length>0&&e.ui.registry.addContextToolbar("imageselection",{predicate:o,items:r,position:"node"});const n=d(e);n.length>0&&e.ui.registry.addContextToolbar("textselection",{predicate:r=>!o(r)&&!e.selection.isCollapsed()&&t(r),items:n,position:"selection",scope:"editor"})})(e)}))}();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* TinyMCE version
|
|
2
|
+
* TinyMCE version 8.3.1 (2025-12-17)
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
(function () {
|
|
@@ -7,13 +7,12 @@
|
|
|
7
7
|
|
|
8
8
|
/* eslint-disable @typescript-eslint/no-wrapper-object-types */
|
|
9
9
|
const hasProto = (v, constructor, predicate) => {
|
|
10
|
-
var _a;
|
|
11
10
|
if (predicate(v, constructor.prototype)) {
|
|
12
11
|
return true;
|
|
13
12
|
}
|
|
14
13
|
else {
|
|
15
14
|
// String-based fallback time
|
|
16
|
-
return
|
|
15
|
+
return v.constructor?.name === constructor.name;
|
|
17
16
|
}
|
|
18
17
|
};
|
|
19
18
|
const typeOf = (x) => {
|
|
@@ -64,6 +63,11 @@
|
|
|
64
63
|
* strict-null-checks
|
|
65
64
|
*/
|
|
66
65
|
class Optional {
|
|
66
|
+
tag;
|
|
67
|
+
value;
|
|
68
|
+
// Sneaky optimisation: every instance of Optional.none is identical, so just
|
|
69
|
+
// reuse the same object
|
|
70
|
+
static singletonNone = new Optional(false);
|
|
67
71
|
// The internal representation has a `tag` and a `value`, but both are
|
|
68
72
|
// private: able to be console.logged, but not able to be accessed by code
|
|
69
73
|
constructor(tag, value) {
|
|
@@ -231,7 +235,7 @@
|
|
|
231
235
|
*/
|
|
232
236
|
getOrDie(message) {
|
|
233
237
|
if (!this.tag) {
|
|
234
|
-
throw new Error(message
|
|
238
|
+
throw new Error(message ?? 'Called getOrDie on None');
|
|
235
239
|
}
|
|
236
240
|
else {
|
|
237
241
|
return this.value;
|
|
@@ -295,11 +299,7 @@
|
|
|
295
299
|
return this.tag ? `some(${this.value})` : 'none()';
|
|
296
300
|
}
|
|
297
301
|
}
|
|
298
|
-
// Sneaky optimisation: every instance of Optional.none is identical, so just
|
|
299
|
-
// reuse the same object
|
|
300
|
-
Optional.singletonNone = new Optional(false);
|
|
301
302
|
|
|
302
|
-
/* eslint-disable @typescript-eslint/unbound-method */
|
|
303
303
|
const nativeSlice = Array.prototype.slice;
|
|
304
304
|
const nativePush = Array.prototype.push;
|
|
305
305
|
const map = (xs, f) => {
|
|
@@ -391,7 +391,6 @@
|
|
|
391
391
|
return copy;
|
|
392
392
|
};
|
|
393
393
|
|
|
394
|
-
// eslint-disable-next-line @typescript-eslint/unbound-method
|
|
395
394
|
const hasOwnProperty = Object.hasOwnProperty;
|
|
396
395
|
const has = (obj, key) => hasOwnProperty.call(obj, key);
|
|
397
396
|
|
|
@@ -658,12 +657,11 @@
|
|
|
658
657
|
}
|
|
659
658
|
};
|
|
660
659
|
const collectTextToBoundary = (dom, section, node, rootNode, forwards) => {
|
|
661
|
-
var _a;
|
|
662
660
|
// Don't bother collecting text nodes if we're already at a boundary
|
|
663
661
|
if (isBoundary(dom, node)) {
|
|
664
662
|
return;
|
|
665
663
|
}
|
|
666
|
-
const rootBlock =
|
|
664
|
+
const rootBlock = dom.getParent(rootNode, dom.isBlock) ?? dom.getRoot();
|
|
667
665
|
const walker = new global(node, rootBlock);
|
|
668
666
|
const walkerFn = forwards ? walker.next.bind(walker) : walker.prev.bind(walker);
|
|
669
667
|
// Walk over and add text nodes to the section and increase the offsets
|
|
@@ -871,12 +869,11 @@
|
|
|
871
869
|
}
|
|
872
870
|
};
|
|
873
871
|
const unwrap = (node) => {
|
|
874
|
-
var _a;
|
|
875
872
|
const parentNode = node.parentNode;
|
|
876
873
|
if (node.firstChild) {
|
|
877
874
|
parentNode.insertBefore(node.firstChild, node);
|
|
878
875
|
}
|
|
879
|
-
|
|
876
|
+
node.parentNode?.removeChild(node);
|
|
880
877
|
};
|
|
881
878
|
const findSpansByIndex = (editor, index) => {
|
|
882
879
|
const spans = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(){"use strict";const e=e=>t=>(e=>{const t=typeof e;return null===e?"null":"object"===t&&Array.isArray(e)?"array":"object"===t&&(n=r=e,(o=String).prototype.isPrototypeOf(n)||(null===(s=r.constructor)||void 0===s?void 0:s.name)===o.name)?"string":t;var n,r,o,s})(t)===e,t=e=>t=>typeof t===e,n=e("string"),r=e("array"),o=t("boolean"),s=t("number"),a=()=>{},l=e=>()=>e,i=l(!0);class c{constructor(e,t){this.tag=e,this.value=t}static some(e){return new c(!0,e)}static none(){return c.singletonNone}fold(e,t){return this.tag?t(this.value):e()}isSome(){return this.tag}isNone(){return!this.tag}map(e){return this.tag?c.some(e(this.value)):c.none()}bind(e){return this.tag?e(this.value):c.none()}exists(e){return this.tag&&e(this.value)}forall(e){return!this.tag||e(this.value)}filter(e){return!this.tag||e(this.value)?this:c.none()}getOr(e){return this.tag?this.value:e}or(e){return this.tag?this:e}getOrThunk(e){return this.tag?this.value:e()}orThunk(e){return this.tag?this:e()}getOrDie(e){if(this.tag)return this.value;throw new Error(null!=e?e:"Called getOrDie on None")}static from(e){return null==e?c.none():c.some(e)}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(e){this.tag&&e(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}c.singletonNone=new c(!1);const d=Array.prototype.slice,u=Array.prototype.push,m=(e,t)=>{const n=e.length,r=new Array(n);for(let o=0;o<n;o++){const n=e[o];r[o]=t(n,o)}return r},h=(e,t)=>{for(let n=0,r=e.length;n<r;n++)t(e[n],n)},g=(e,t)=>{for(let n=e.length-1;n>=0;n--)t(e[n],n)},f=(e,t)=>(e=>{const t=[];for(let n=0,o=e.length;n<o;++n){if(!r(e[n]))throw new Error("Arr.flatten item "+n+" was not an array, input: "+e);u.apply(t,e[n])}return t})(m(e,t)),p=Object.hasOwnProperty,x=(e,t)=>p.call(e,t),y=e=>{let t=e;return{get:()=>t,set:e=>{t=e}}};var b=tinymce.util.Tools.resolve("tinymce.PluginManager");const v=l("[~\u2116|!-*+-\\/:;?@\\[-`{}\xa1\xab\xb7\xbb\xbf;\xb7\u055a-\u055f\u0589\u058a\u05be\u05c0\u05c3\u05c6\u05f3\u05f4\u0609\u060a\u060c\u060d\u061b\u061e\u061f\u066a-\u066d\u06d4\u0700-\u070d\u07f7-\u07f9\u0830-\u083e\u085e\u0964\u0965\u0970\u0df4\u0e4f\u0e5a\u0e5b\u0f04-\u0f12\u0f3a-\u0f3d\u0f85\u0fd0-\u0fd4\u0fd9\u0fda\u104a-\u104f\u10fb\u1361-\u1368\u1400\u166d\u166e\u169b\u169c\u16eb-\u16ed\u1735\u1736\u17d4-\u17d6\u17d8-\u17da\u1800-\u180a\u1944\u1945\u1a1e\u1a1f\u1aa0-\u1aa6\u1aa8-\u1aad\u1b5a-\u1b60\u1bfc-\u1bff\u1c3b-\u1c3f\u1c7e\u1c7f\u1cd3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205e\u207d\u207e\u208d\u208e\u3008\u3009\u2768-\u2775\u27c5\u27c6\u27e6-\u27ef\u2983-\u2998\u29d8-\u29db\u29fc\u29fd\u2cf9-\u2cfc\u2cfe\u2cff\u2d70\u2e00-\u2e2e\u2e30\u2e31\u3001-\u3003\u3008-\u3011\u3014-\u301f\u3030\u303d\u30a0\u30fb\ua4fe\ua4ff\ua60d-\ua60f\ua673\ua67e\ua6f2-\ua6f7\ua874-\ua877\ua8ce\ua8cf\ua8f8-\ua8fa\ua92e\ua92f\ua95f\ua9c1-\ua9cd\ua9de\ua9df\uaa5c-\uaa5f\uaade\uaadf\uabeb\ufd3e\ufd3f\ufe10-\ufe19\ufe30-\ufe52\ufe54-\ufe61\ufe63\ufe68\ufe6a\ufe6b\uff01-\uff03\uff05-\uff0a\uff0c-\uff0f\uff1a\uff1b\uff1f\uff20\uff3b-\uff3d\uff3f\uff5b\uff5d\uff5f-\uff65]");var w=tinymce.util.Tools.resolve("tinymce.Env"),C=tinymce.util.Tools.resolve("tinymce.util.Tools");const E=e=>{if(null==e)throw new Error("Node cannot be null or undefined");return{dom:e}},O=E,N=e=>3===(e=>e.dom.nodeType)(e);const T=(e,t)=>({element:e,offset:t}),k=(e,t)=>{((e,t)=>{const n=(e=>c.from(e.dom.parentNode).map(O))(e);n.each((n=>{n.dom.insertBefore(t.dom,e.dom)}))})(e,t),((e,t)=>{e.dom.appendChild(t.dom)})(t,e)},A=(e=>{const t=t=>e(t)?c.from(t.dom.nodeValue):c.none();return{get:n=>{if(!e(n))throw new Error("Can only get text value of a text node");return t(n).getOr("")},getOption:t,set:(t,n)=>{if(!e(t))throw new Error("Can only set raw text value of a text node");t.dom.nodeValue=n}}})(N),S=e=>A.get(e);var B=tinymce.util.Tools.resolve("tinymce.dom.TreeWalker");const F=(e,t)=>e.isBlock(t)||x(e.schema.getVoidElements(),t.nodeName),I=(e,t)=>!e.isEditable(t),M=(e,t)=>!e.isBlock(t)&&x(e.schema.getWhitespaceElements(),t.nodeName),R=(e,t)=>((e,t)=>{const n=(e=>m(e.dom.childNodes,O))(e);return n.length>0&&t<n.length?T(n[t],0):T(e,t)})(O(e),t),D=(e,t,n,r,o,s=!0)=>{let a=s?t(!1):n;for(;a;){const n=I(e,a);if(n||M(e,a)){if(n?r.cef(a):r.boundary(a))break;a=t(!0)}else{if(F(e,a)){if(r.boundary(a))break}else 3===a.nodeType&&r.text(a);if(a===o)break;a=t(!1)}}},P=(e,t,n,r,o)=>{var s;if(((e,t)=>F(e,t)||I(e,t)||M(e,t)||((e,t)=>"true"===e.getContentEditable(t)&&t.parentNode&&!e.isEditable(t.parentNode))(e,t))(e,n))return;const a=null!==(s=e.getParent(r,e.isBlock))&&void 0!==s?s:e.getRoot(),l=new B(n,a),c=o?l.next.bind(l):l.prev.bind(l);D(e,c,n,{boundary:i,cef:i,text:e=>{o?t.fOffset+=e.length:t.sOffset+=e.length,t.elements.push(O(e))}})},W=(e,t,n,r,o,s=!0)=>{const a=new B(n,t),l=[];let i={sOffset:0,fOffset:0,elements:[]};P(e,i,n,t,!1);const c=()=>(i.elements.length>0&&(l.push(i),i={sOffset:0,fOffset:0,elements:[]}),!1);return D(e,a.next.bind(a),n,{boundary:c,cef:e=>(c(),o&&l.push(...o.cef(e)),!1),text:e=>{i.elements.push(O(e)),o&&o.text(e,i)}},r,s),r&&P(e,i,r,t,!0),c(),l},$=(e,t)=>{const n=R(t.startContainer,t.startOffset),r=n.element.dom,o=R(t.endContainer,t.endOffset),s=o.element.dom;return W(e,t.commonAncestorContainer,r,s,{text:(e,t)=>{e===s?t.fOffset+=e.length-o.offset:e===r&&(t.sOffset+=n.offset)},cef:t=>{return(e=>{const t=d.call(e,0);return t.sort(((e,t)=>((e,t)=>((e,t,n)=>!!(e.compareDocumentPosition(t)&n))(e,t,Node.DOCUMENT_POSITION_PRECEDING))(e.elements[0].dom,t.elements[0].dom)?1:-1)),t})(f((n=O(t),((e,t)=>{const n=void 0===t?document:t.dom;return 1!==(r=n).nodeType&&9!==r.nodeType&&11!==r.nodeType||0===r.childElementCount?[]:m(n.querySelectorAll(e),O);var r})("*[contenteditable=true]",n)),(t=>{const n=t.dom;return W(e,n,n)})));var n}},!1)},V=(e,t)=>t.collapsed?[]:$(e,t),j=(e,t)=>{const n=e.createRng();return n.selectNode(t),V(e,n)},z=(e,t)=>f(t,(t=>{const n=t.elements,r=m(n,S).join(""),o=((e,t,n=0,r=e.length)=>{const o=t.regex;o.lastIndex=n;const s=[];let a;for(;a=o.exec(e);){const e=a[t.matchIndex],n=a.index+a[0].indexOf(e),l=n+e.length;if(l>r)break;s.push({start:n,finish:l}),o.lastIndex=l}return s})(r,e,t.sOffset,r.length-t.fOffset);return((e,t)=>{const n=(r=e,o=(e,n)=>{const r=S(n),o=e.last,s=o+r.length,a=f(t,((e,t)=>e.start<s&&e.finish>o?[{element:n,start:Math.max(o,e.start)-o,finish:Math.min(s,e.finish)-o,matchId:t}]:[]));return{results:e.results.concat(a),last:s}},s={results:[],last:0},h(r,((e,t)=>{s=o(s,e)})),s).results;var r,o,s;return((e,t)=>{if(0===e.length)return[];{let n=t(e[0]);const r=[];let o=[];for(let s=0,a=e.length;s<a;s++){const a=e[s],l=t(a);l!==n&&(r.push(o),o=[]),n=l,o.push(a)}return 0!==o.length&&r.push(o),r}})(n,(e=>e.matchId))})(n,o)})),U=(e,t)=>{g(e,((e,r)=>{g(e,(e=>{const a=O(t.cloneNode(!1));((e,t,r)=>{((e,t,r)=>{if(!(n(r)||o(r)||s(r)))throw console.error("Invalid call to Attribute.set. Key ",t,":: Value ",r,":: Element ",e),new Error("Attribute value was not simple");e.setAttribute(t,r+"")})(e.dom,t,r)})(a,"data-mce-index",r);const l=e.element.dom;if(l.length===e.finish&&0===e.start)k(e.element,a);else{l.length!==e.finish&&l.splitText(e.finish);const t=l.splitText(e.start);k(O(t),a)}}))}))},_=e=>e.getAttribute("data-mce-index"),q=(e,t,n,r)=>{const o=e.dom.create("span",{"data-mce-bogus":1});o.className="mce-match-marker";const s=e.getBody();return ee(e,t,!1),r?((e,t,n,r)=>{const o=n.getBookmark(),s=e.select("td[data-mce-selected],th[data-mce-selected]"),a=s.length>0?((e,t)=>f(t,(t=>j(e,t))))(e,s):V(e,n.getRng()),l=z(t,a);return U(l,r),n.moveToBookmark(o),l.length})(e.dom,n,e.selection,o):((e,t,n,r)=>{const o=j(e,n),s=z(t,o);return U(s,r),s.length})(e.dom,n,s,o)},G=e=>{var t;const n=e.parentNode;e.firstChild&&n.insertBefore(e.firstChild,e),null===(t=e.parentNode)||void 0===t||t.removeChild(e)},K=(e,t)=>{const n=[],r=C.toArray(e.getBody().getElementsByTagName("span"));if(r.length)for(let e=0;e<r.length;e++){const o=_(r[e]);null!==o&&o.length&&o===t.toString()&&n.push(r[e])}return n},H=(e,t,n)=>{const r=t.get();let o=r.index;const s=e.dom;n?o+1===r.count?o=0:o++:o-1==-1?o=r.count-1:o--,s.removeClass(K(e,r.index),"mce-match-marker-selected");const a=K(e,o);return a.length?(s.addClass(K(e,o),"mce-match-marker-selected"),e.selection.scrollIntoView(a[0]),o):-1},J=(e,t)=>{const n=t.parentNode;e.remove(t),n&&e.isEmpty(n)&&e.remove(n)},L=(e,t,n,r,o,s)=>{const a=e.selection,l=((e,t)=>{const n="("+e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&").replace(/\s/g,"[^\\S\\r\\n\\uFEFF]")+")";return t?`(?:^|\\s|${v()})`+n+`(?=$|\\s|${v()})`:n})(n,o),i=a.isForward(),c={regex:new RegExp(l,r?"g":"gi"),matchIndex:1},d=q(e,t,c,s);if(w.browser.isSafari()&&a.setRng(a.getRng(),i),d){const a=H(e,t,!0);t.set({index:a,count:d,text:n,matchCase:r,wholeWord:o,inSelection:s})}return d},Q=(e,t)=>{const n=H(e,t,!0);t.set({...t.get(),index:n})},X=(e,t)=>{const n=H(e,t,!1);t.set({...t.get(),index:n})},Y=e=>{const t=_(e);return null!==t&&t.length>0},Z=(e,t,n,r,o)=>{const s=t.get(),a=s.index;let l,i=a;r=!1!==r;const c=e.getBody(),d=C.grep(C.toArray(c.getElementsByTagName("span")),Y);for(let t=0;t<d.length;t++){const c=_(d[t]);let u=l=parseInt(c,10);if(o||u===s.index){for(n.length?(d[t].innerText=n,G(d[t])):J(e.dom,d[t]);d[++t];){if(u=parseInt(_(d[t]),10),u!==l){t--;break}J(e.dom,d[t])}r&&i--}else l>a&&d[t].setAttribute("data-mce-index",String(l-1))}return t.set({...s,count:o?0:s.count-1,index:i}),r?Q(e,t):X(e,t),!o&&t.get().count>0},ee=(e,t,n)=>{let r,o;const s=t.get(),a=C.toArray(e.getBody().getElementsByTagName("span"));for(let e=0;e<a.length;e++){const t=_(a[e]);null!==t&&t.length&&(t===s.index.toString()&&(r||(r=a[e].firstChild),o=a[e].firstChild),G(a[e]))}if(t.set({...s,index:-1,count:0,text:""}),r&&o){const t=e.dom.createRng();return t.setStart(r,0),t.setEnd(o,o.data.length),!1!==n&&e.selection.setRng(t),t}},te=(e,t)=>{const n=(()=>{const e=(e=>{const t=y(c.none()),n=()=>t.get().each(e);return{clear:()=>{n(),t.set(c.none())},isSet:()=>t.get().isSome(),get:()=>t.get(),set:e=>{n(),t.set(c.some(e))}}})(a);return{...e,on:t=>e.get().each(t)}})();e.undoManager.add();const r=C.trim(e.selection.getContent({format:"text"})),o=e=>{e.setEnabled("next",((e,t)=>t.get().count>1)(0,t)),e.setEnabled("prev",((e,t)=>t.get().count>1)(0,t))},s=(e,t)=>{h(["replace","replaceall","prev","next"],(n=>e.setEnabled(n,!t)))},l=(e,t)=>{t.redial(p(e,t.getData()))},i=(e,t)=>{w.browser.isSafari()&&w.deviceType.isTouch()&&("find"===t||"replace"===t||"replaceall"===t)&&e.focus(t)},d=n=>{ee(e,t,!1),s(n,!0),o(n)},u=n=>{const r=n.getData(),a=t.get();if(r.findtext.length){if(a.text===r.findtext&&a.matchCase===r.matchcase&&a.wholeWord===r.wholewords)Q(e,t);else{const o=L(e,t,r.findtext,r.matchcase,r.wholewords,r.inselection);o<=0&&l(!0,n),s(n,0===o)}o(n)}else d(n)},m=t.get(),g={findtext:r,replacetext:"",wholewords:m.wholeWord,matchcase:m.matchCase,inselection:m.inSelection},f=e=>{const t=[{type:"label",label:"Find",for:"findtext",items:[{type:"bar",items:[{type:"input",name:"findtext",maximized:!0,inputMode:"search"},{type:"button",name:"prev",text:"Previous",icon:"action-prev",enabled:!1,borderless:!0},{type:"button",name:"next",text:"Next",icon:"action-next",enabled:!1,borderless:!0}]}]},{type:"input",name:"replacetext",label:"Replace with",inputMode:"search"}];return e&&t.push({type:"alertbanner",level:"error",text:"Could not find the specified string.",icon:"warning"}),t},p=(n,r)=>({title:"Find and Replace",size:"normal",body:{type:"panel",items:f(n)},buttons:[{type:"menu",name:"options",icon:"preferences",tooltip:"Preferences",align:"start",items:[{type:"togglemenuitem",name:"matchcase",text:"Match case"},{type:"togglemenuitem",name:"wholewords",text:"Find whole words only"},{type:"togglemenuitem",name:"inselection",text:"Find in selection"}]},{type:"custom",name:"find",text:"Find",primary:!0},{type:"custom",name:"replace",text:"Replace",enabled:!1},{type:"custom",name:"replaceall",text:"Replace all",enabled:!1}],initialData:r,onChange:(e,r)=>{n&&l(!1,e),"findtext"===r.name&&t.get().count>0&&d(e)},onAction:(n,r)=>{const s=n.getData();switch(r.name){case"find":u(n);break;case"replace":Z(e,t,s.replacetext)?o(n):d(n);break;case"replaceall":Z(e,t,s.replacetext,!0,!0),d(n);break;case"prev":X(e,t),o(n);break;case"next":Q(e,t),o(n);break;case"matchcase":case"wholewords":case"inselection":l(!1,n),(e=>{const n=e.getData(),r=t.get();t.set({...r,matchCase:n.matchcase,wholeWord:n.wholewords,inSelection:n.inselection})})(n),d(n)}i(n,r.name)},onSubmit:e=>{u(e),i(e,"find")},onClose:()=>{e.focus(),ee(e,t),e.undoManager.add()}});n.set(e.windowManager.open(p(!1,g),{inline:"toolbar"}))},ne=(e,t)=>()=>{te(e,t)};b.add("searchreplace",(e=>{const t=y({index:-1,count:0,text:"",matchCase:!1,wholeWord:!1,inSelection:!1});return((e,t)=>{e.addCommand("SearchReplace",(()=>{te(e,t)}))})(e,t),((e,t)=>{e.ui.registry.addMenuItem("searchreplace",{text:"Find and replace...",shortcut:"Meta+F",onAction:ne(e,t),icon:"search"}),e.ui.registry.addButton("searchreplace",{tooltip:"Find and replace",onAction:ne(e,t),icon:"search",shortcut:"Meta+F"}),e.shortcuts.add("Meta+F","",ne(e,t))})(e,t),((e,t)=>({done:n=>ee(e,t,n),find:(n,r,o,s=!1)=>L(e,t,n,r,o,s),next:()=>Q(e,t),prev:()=>X(e,t),replace:(n,r,o)=>Z(e,t,n,r,o)}))(e,t)}))}();
|
|
1
|
+
!function(){"use strict";const e=e=>t=>(e=>{const t=typeof e;return null===e?"null":"object"===t&&Array.isArray(e)?"array":"object"===t&&(n=r=e,(o=String).prototype.isPrototypeOf(n)||r.constructor?.name===o.name)?"string":t;var n,r,o})(t)===e,t=e=>t=>typeof t===e,n=e("string"),r=e("array"),o=t("boolean"),s=t("number"),a=()=>{},l=e=>()=>e,i=l(!0);class c{tag;value;static singletonNone=new c(!1);constructor(e,t){this.tag=e,this.value=t}static some(e){return new c(!0,e)}static none(){return c.singletonNone}fold(e,t){return this.tag?t(this.value):e()}isSome(){return this.tag}isNone(){return!this.tag}map(e){return this.tag?c.some(e(this.value)):c.none()}bind(e){return this.tag?e(this.value):c.none()}exists(e){return this.tag&&e(this.value)}forall(e){return!this.tag||e(this.value)}filter(e){return!this.tag||e(this.value)?this:c.none()}getOr(e){return this.tag?this.value:e}or(e){return this.tag?this:e}getOrThunk(e){return this.tag?this.value:e()}orThunk(e){return this.tag?this:e()}getOrDie(e){if(this.tag)return this.value;throw new Error(e??"Called getOrDie on None")}static from(e){return null==e?c.none():c.some(e)}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(e){this.tag&&e(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}const d=Array.prototype.slice,u=Array.prototype.push,m=(e,t)=>{const n=e.length,r=new Array(n);for(let o=0;o<n;o++){const n=e[o];r[o]=t(n,o)}return r},h=(e,t)=>{for(let n=0,r=e.length;n<r;n++)t(e[n],n)},g=(e,t)=>{for(let n=e.length-1;n>=0;n--)t(e[n],n)},f=(e,t)=>(e=>{const t=[];for(let n=0,o=e.length;n<o;++n){if(!r(e[n]))throw new Error("Arr.flatten item "+n+" was not an array, input: "+e);u.apply(t,e[n])}return t})(m(e,t)),p=Object.hasOwnProperty,x=(e,t)=>p.call(e,t),y=e=>{let t=e;return{get:()=>t,set:e=>{t=e}}};var b=tinymce.util.Tools.resolve("tinymce.PluginManager");const w=l("[~\u2116|!-*+-\\/:;?@\\[-`{}\xa1\xab\xb7\xbb\xbf;\xb7\u055a-\u055f\u0589\u058a\u05be\u05c0\u05c3\u05c6\u05f3\u05f4\u0609\u060a\u060c\u060d\u061b\u061e\u061f\u066a-\u066d\u06d4\u0700-\u070d\u07f7-\u07f9\u0830-\u083e\u085e\u0964\u0965\u0970\u0df4\u0e4f\u0e5a\u0e5b\u0f04-\u0f12\u0f3a-\u0f3d\u0f85\u0fd0-\u0fd4\u0fd9\u0fda\u104a-\u104f\u10fb\u1361-\u1368\u1400\u166d\u166e\u169b\u169c\u16eb-\u16ed\u1735\u1736\u17d4-\u17d6\u17d8-\u17da\u1800-\u180a\u1944\u1945\u1a1e\u1a1f\u1aa0-\u1aa6\u1aa8-\u1aad\u1b5a-\u1b60\u1bfc-\u1bff\u1c3b-\u1c3f\u1c7e\u1c7f\u1cd3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205e\u207d\u207e\u208d\u208e\u3008\u3009\u2768-\u2775\u27c5\u27c6\u27e6-\u27ef\u2983-\u2998\u29d8-\u29db\u29fc\u29fd\u2cf9-\u2cfc\u2cfe\u2cff\u2d70\u2e00-\u2e2e\u2e30\u2e31\u3001-\u3003\u3008-\u3011\u3014-\u301f\u3030\u303d\u30a0\u30fb\ua4fe\ua4ff\ua60d-\ua60f\ua673\ua67e\ua6f2-\ua6f7\ua874-\ua877\ua8ce\ua8cf\ua8f8-\ua8fa\ua92e\ua92f\ua95f\ua9c1-\ua9cd\ua9de\ua9df\uaa5c-\uaa5f\uaade\uaadf\uabeb\ufd3e\ufd3f\ufe10-\ufe19\ufe30-\ufe52\ufe54-\ufe61\ufe63\ufe68\ufe6a\ufe6b\uff01-\uff03\uff05-\uff0a\uff0c-\uff0f\uff1a\uff1b\uff1f\uff20\uff3b-\uff3d\uff3f\uff5b\uff5d\uff5f-\uff65]");var v=tinymce.util.Tools.resolve("tinymce.Env"),C=tinymce.util.Tools.resolve("tinymce.util.Tools");const E=e=>{if(null==e)throw new Error("Node cannot be null or undefined");return{dom:e}},O=E,N=e=>3===(e=>e.dom.nodeType)(e);const T=(e,t)=>({element:e,offset:t}),k=(e,t)=>{((e,t)=>{const n=(e=>c.from(e.dom.parentNode).map(O))(e);n.each((n=>{n.dom.insertBefore(t.dom,e.dom)}))})(e,t),((e,t)=>{e.dom.appendChild(t.dom)})(t,e)},A=(e=>{const t=t=>e(t)?c.from(t.dom.nodeValue):c.none();return{get:n=>{if(!e(n))throw new Error("Can only get text value of a text node");return t(n).getOr("")},getOption:t,set:(t,n)=>{if(!e(t))throw new Error("Can only set raw text value of a text node");t.dom.nodeValue=n}}})(N),S=e=>A.get(e);var B=tinymce.util.Tools.resolve("tinymce.dom.TreeWalker");const F=(e,t)=>e.isBlock(t)||x(e.schema.getVoidElements(),t.nodeName),I=(e,t)=>!e.isEditable(t),M=(e,t)=>!e.isBlock(t)&&x(e.schema.getWhitespaceElements(),t.nodeName),R=(e,t)=>((e,t)=>{const n=(e=>m(e.dom.childNodes,O))(e);return n.length>0&&t<n.length?T(n[t],0):T(e,t)})(O(e),t),D=(e,t,n,r,o,s=!0)=>{let a=s?t(!1):n;for(;a;){const n=I(e,a);if(n||M(e,a)){if(n?r.cef(a):r.boundary(a))break;a=t(!0)}else{if(F(e,a)){if(r.boundary(a))break}else 3===a.nodeType&&r.text(a);if(a===o)break;a=t(!1)}}},P=(e,t,n,r,o)=>{if(((e,t)=>F(e,t)||I(e,t)||M(e,t)||((e,t)=>"true"===e.getContentEditable(t)&&t.parentNode&&!e.isEditable(t.parentNode))(e,t))(e,n))return;const s=e.getParent(r,e.isBlock)??e.getRoot(),a=new B(n,s),l=o?a.next.bind(a):a.prev.bind(a);D(e,l,n,{boundary:i,cef:i,text:e=>{o?t.fOffset+=e.length:t.sOffset+=e.length,t.elements.push(O(e))}})},W=(e,t,n,r,o,s=!0)=>{const a=new B(n,t),l=[];let i={sOffset:0,fOffset:0,elements:[]};P(e,i,n,t,!1);const c=()=>(i.elements.length>0&&(l.push(i),i={sOffset:0,fOffset:0,elements:[]}),!1);return D(e,a.next.bind(a),n,{boundary:c,cef:e=>(c(),o&&l.push(...o.cef(e)),!1),text:e=>{i.elements.push(O(e)),o&&o.text(e,i)}},r,s),r&&P(e,i,r,t,!0),c(),l},$=(e,t)=>{const n=R(t.startContainer,t.startOffset),r=n.element.dom,o=R(t.endContainer,t.endOffset),s=o.element.dom;return W(e,t.commonAncestorContainer,r,s,{text:(e,t)=>{e===s?t.fOffset+=e.length-o.offset:e===r&&(t.sOffset+=n.offset)},cef:t=>{return(e=>{const t=d.call(e,0);return t.sort(((e,t)=>((e,t)=>((e,t,n)=>!!(e.compareDocumentPosition(t)&n))(e,t,Node.DOCUMENT_POSITION_PRECEDING))(e.elements[0].dom,t.elements[0].dom)?1:-1)),t})(f((n=O(t),((e,t)=>{const n=void 0===t?document:t.dom;return 1!==(r=n).nodeType&&9!==r.nodeType&&11!==r.nodeType||0===r.childElementCount?[]:m(n.querySelectorAll(e),O);var r})("*[contenteditable=true]",n)),(t=>{const n=t.dom;return W(e,n,n)})));var n}},!1)},V=(e,t)=>t.collapsed?[]:$(e,t),j=(e,t)=>{const n=e.createRng();return n.selectNode(t),V(e,n)},z=(e,t)=>f(t,(t=>{const n=t.elements,r=m(n,S).join(""),o=((e,t,n=0,r=e.length)=>{const o=t.regex;o.lastIndex=n;const s=[];let a;for(;a=o.exec(e);){const e=a[t.matchIndex],n=a.index+a[0].indexOf(e),l=n+e.length;if(l>r)break;s.push({start:n,finish:l}),o.lastIndex=l}return s})(r,e,t.sOffset,r.length-t.fOffset);return((e,t)=>{const n=(r=e,o=(e,n)=>{const r=S(n),o=e.last,s=o+r.length,a=f(t,((e,t)=>e.start<s&&e.finish>o?[{element:n,start:Math.max(o,e.start)-o,finish:Math.min(s,e.finish)-o,matchId:t}]:[]));return{results:e.results.concat(a),last:s}},s={results:[],last:0},h(r,((e,t)=>{s=o(s,e)})),s).results;var r,o,s;return((e,t)=>{if(0===e.length)return[];{let n=t(e[0]);const r=[];let o=[];for(let s=0,a=e.length;s<a;s++){const a=e[s],l=t(a);l!==n&&(r.push(o),o=[]),n=l,o.push(a)}return 0!==o.length&&r.push(o),r}})(n,(e=>e.matchId))})(n,o)})),U=(e,t)=>{g(e,((e,r)=>{g(e,(e=>{const a=O(t.cloneNode(!1));((e,t,r)=>{((e,t,r)=>{if(!(n(r)||o(r)||s(r)))throw console.error("Invalid call to Attribute.set. Key ",t,":: Value ",r,":: Element ",e),new Error("Attribute value was not simple");e.setAttribute(t,r+"")})(e.dom,t,r)})(a,"data-mce-index",r);const l=e.element.dom;if(l.length===e.finish&&0===e.start)k(e.element,a);else{l.length!==e.finish&&l.splitText(e.finish);const t=l.splitText(e.start);k(O(t),a)}}))}))},_=e=>e.getAttribute("data-mce-index"),q=(e,t,n,r)=>{const o=e.dom.create("span",{"data-mce-bogus":1});o.className="mce-match-marker";const s=e.getBody();return ee(e,t,!1),r?((e,t,n,r)=>{const o=n.getBookmark(),s=e.select("td[data-mce-selected],th[data-mce-selected]"),a=s.length>0?((e,t)=>f(t,(t=>j(e,t))))(e,s):V(e,n.getRng()),l=z(t,a);return U(l,r),n.moveToBookmark(o),l.length})(e.dom,n,e.selection,o):((e,t,n,r)=>{const o=j(e,n),s=z(t,o);return U(s,r),s.length})(e.dom,n,s,o)},G=e=>{const t=e.parentNode;e.firstChild&&t.insertBefore(e.firstChild,e),e.parentNode?.removeChild(e)},K=(e,t)=>{const n=[],r=C.toArray(e.getBody().getElementsByTagName("span"));if(r.length)for(let e=0;e<r.length;e++){const o=_(r[e]);null!==o&&o.length&&o===t.toString()&&n.push(r[e])}return n},H=(e,t,n)=>{const r=t.get();let o=r.index;const s=e.dom;n?o+1===r.count?o=0:o++:o-1==-1?o=r.count-1:o--,s.removeClass(K(e,r.index),"mce-match-marker-selected");const a=K(e,o);return a.length?(s.addClass(K(e,o),"mce-match-marker-selected"),e.selection.scrollIntoView(a[0]),o):-1},J=(e,t)=>{const n=t.parentNode;e.remove(t),n&&e.isEmpty(n)&&e.remove(n)},L=(e,t,n,r,o,s)=>{const a=e.selection,l=((e,t)=>{const n="("+e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&").replace(/\s/g,"[^\\S\\r\\n\\uFEFF]")+")";return t?`(?:^|\\s|${w()})`+n+`(?=$|\\s|${w()})`:n})(n,o),i=a.isForward(),c={regex:new RegExp(l,r?"g":"gi"),matchIndex:1},d=q(e,t,c,s);if(v.browser.isSafari()&&a.setRng(a.getRng(),i),d){const a=H(e,t,!0);t.set({index:a,count:d,text:n,matchCase:r,wholeWord:o,inSelection:s})}return d},Q=(e,t)=>{const n=H(e,t,!0);t.set({...t.get(),index:n})},X=(e,t)=>{const n=H(e,t,!1);t.set({...t.get(),index:n})},Y=e=>{const t=_(e);return null!==t&&t.length>0},Z=(e,t,n,r,o)=>{const s=t.get(),a=s.index;let l,i=a;r=!1!==r;const c=e.getBody(),d=C.grep(C.toArray(c.getElementsByTagName("span")),Y);for(let t=0;t<d.length;t++){const c=_(d[t]);let u=l=parseInt(c,10);if(o||u===s.index){for(n.length?(d[t].innerText=n,G(d[t])):J(e.dom,d[t]);d[++t];){if(u=parseInt(_(d[t]),10),u!==l){t--;break}J(e.dom,d[t])}r&&i--}else l>a&&d[t].setAttribute("data-mce-index",String(l-1))}return t.set({...s,count:o?0:s.count-1,index:i}),r?Q(e,t):X(e,t),!o&&t.get().count>0},ee=(e,t,n)=>{let r,o;const s=t.get(),a=C.toArray(e.getBody().getElementsByTagName("span"));for(let e=0;e<a.length;e++){const t=_(a[e]);null!==t&&t.length&&(t===s.index.toString()&&(r||(r=a[e].firstChild),o=a[e].firstChild),G(a[e]))}if(t.set({...s,index:-1,count:0,text:""}),r&&o){const t=e.dom.createRng();return t.setStart(r,0),t.setEnd(o,o.data.length),!1!==n&&e.selection.setRng(t),t}},te=(e,t)=>{const n=(()=>{const e=(e=>{const t=y(c.none()),n=()=>t.get().each(e);return{clear:()=>{n(),t.set(c.none())},isSet:()=>t.get().isSome(),get:()=>t.get(),set:e=>{n(),t.set(c.some(e))}}})(a);return{...e,on:t=>e.get().each(t)}})();e.undoManager.add();const r=C.trim(e.selection.getContent({format:"text"})),o=e=>{e.setEnabled("next",((e,t)=>t.get().count>1)(0,t)),e.setEnabled("prev",((e,t)=>t.get().count>1)(0,t))},s=(e,t)=>{h(["replace","replaceall","prev","next"],(n=>e.setEnabled(n,!t)))},l=(e,t)=>{t.redial(p(e,t.getData()))},i=(e,t)=>{v.browser.isSafari()&&v.deviceType.isTouch()&&("find"===t||"replace"===t||"replaceall"===t)&&e.focus(t)},d=n=>{ee(e,t,!1),s(n,!0),o(n)},u=n=>{const r=n.getData(),a=t.get();if(r.findtext.length){if(a.text===r.findtext&&a.matchCase===r.matchcase&&a.wholeWord===r.wholewords)Q(e,t);else{const o=L(e,t,r.findtext,r.matchcase,r.wholewords,r.inselection);o<=0&&l(!0,n),s(n,0===o)}o(n)}else d(n)},m=t.get(),g={findtext:r,replacetext:"",wholewords:m.wholeWord,matchcase:m.matchCase,inselection:m.inSelection},f=e=>{const t=[{type:"label",label:"Find",for:"findtext",items:[{type:"bar",items:[{type:"input",name:"findtext",maximized:!0,inputMode:"search"},{type:"button",name:"prev",text:"Previous",icon:"action-prev",enabled:!1,borderless:!0},{type:"button",name:"next",text:"Next",icon:"action-next",enabled:!1,borderless:!0}]}]},{type:"input",name:"replacetext",label:"Replace with",inputMode:"search"}];return e&&t.push({type:"alertbanner",level:"error",text:"Could not find the specified string.",icon:"warning"}),t},p=(n,r)=>({title:"Find and Replace",size:"normal",body:{type:"panel",items:f(n)},buttons:[{type:"menu",name:"options",icon:"preferences",tooltip:"Preferences",align:"start",items:[{type:"togglemenuitem",name:"matchcase",text:"Match case"},{type:"togglemenuitem",name:"wholewords",text:"Find whole words only"},{type:"togglemenuitem",name:"inselection",text:"Find in selection"}]},{type:"custom",name:"find",text:"Find",primary:!0},{type:"custom",name:"replace",text:"Replace",enabled:!1},{type:"custom",name:"replaceall",text:"Replace all",enabled:!1}],initialData:r,onChange:(e,r)=>{n&&l(!1,e),"findtext"===r.name&&t.get().count>0&&d(e)},onAction:(n,r)=>{const s=n.getData();switch(r.name){case"find":u(n);break;case"replace":Z(e,t,s.replacetext)?o(n):d(n);break;case"replaceall":Z(e,t,s.replacetext,!0,!0),d(n);break;case"prev":X(e,t),o(n);break;case"next":Q(e,t),o(n);break;case"matchcase":case"wholewords":case"inselection":l(!1,n),(e=>{const n=e.getData(),r=t.get();t.set({...r,matchCase:n.matchcase,wholeWord:n.wholewords,inSelection:n.inselection})})(n),d(n)}i(n,r.name)},onSubmit:e=>{u(e),i(e,"find")},onClose:()=>{e.focus(),ee(e,t),e.undoManager.add()}});n.set(e.windowManager.open(p(!1,g),{inline:"toolbar"}))},ne=(e,t)=>()=>{te(e,t)};b.add("searchreplace",(e=>{const t=y({index:-1,count:0,text:"",matchCase:!1,wholeWord:!1,inSelection:!1});return((e,t)=>{e.addCommand("SearchReplace",(()=>{te(e,t)}))})(e,t),((e,t)=>{e.ui.registry.addMenuItem("searchreplace",{text:"Find and replace...",shortcut:"Meta+F",onAction:ne(e,t),icon:"search"}),e.ui.registry.addButton("searchreplace",{tooltip:"Find and replace",onAction:ne(e,t),icon:"search",shortcut:"Meta+F"}),e.shortcuts.add("Meta+F","",ne(e,t))})(e,t),((e,t)=>({done:n=>ee(e,t,n),find:(n,r,o,s=!1)=>L(e,t,n,r,o,s),next:()=>Q(e,t),prev:()=>X(e,t),replace:(n,r,o)=>Z(e,t,n,r,o)}))(e,t)}))}();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* TinyMCE version
|
|
2
|
+
* TinyMCE version 8.3.1 (2025-12-17)
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
(function () {
|
|
@@ -9,13 +9,12 @@
|
|
|
9
9
|
|
|
10
10
|
/* eslint-disable @typescript-eslint/no-wrapper-object-types */
|
|
11
11
|
const hasProto = (v, constructor, predicate) => {
|
|
12
|
-
var _a;
|
|
13
12
|
if (predicate(v, constructor.prototype)) {
|
|
14
13
|
return true;
|
|
15
14
|
}
|
|
16
15
|
else {
|
|
17
16
|
// String-based fallback time
|
|
18
|
-
return
|
|
17
|
+
return v.constructor?.name === constructor.name;
|
|
19
18
|
}
|
|
20
19
|
};
|
|
21
20
|
const typeOf = (x) => {
|
|
@@ -59,7 +58,6 @@
|
|
|
59
58
|
const tripleEquals = (a, b) => {
|
|
60
59
|
return a === b;
|
|
61
60
|
};
|
|
62
|
-
// eslint-disable-next-line prefer-arrow/prefer-arrow-functions
|
|
63
61
|
function curry(fn, ...initialArgs) {
|
|
64
62
|
return (...restArgs) => {
|
|
65
63
|
const all = initialArgs.concat(restArgs);
|
|
@@ -88,6 +86,11 @@
|
|
|
88
86
|
* strict-null-checks
|
|
89
87
|
*/
|
|
90
88
|
class Optional {
|
|
89
|
+
tag;
|
|
90
|
+
value;
|
|
91
|
+
// Sneaky optimisation: every instance of Optional.none is identical, so just
|
|
92
|
+
// reuse the same object
|
|
93
|
+
static singletonNone = new Optional(false);
|
|
91
94
|
// The internal representation has a `tag` and a `value`, but both are
|
|
92
95
|
// private: able to be console.logged, but not able to be accessed by code
|
|
93
96
|
constructor(tag, value) {
|
|
@@ -255,7 +258,7 @@
|
|
|
255
258
|
*/
|
|
256
259
|
getOrDie(message) {
|
|
257
260
|
if (!this.tag) {
|
|
258
|
-
throw new Error(message
|
|
261
|
+
throw new Error(message ?? 'Called getOrDie on None');
|
|
259
262
|
}
|
|
260
263
|
else {
|
|
261
264
|
return this.value;
|
|
@@ -319,15 +322,10 @@
|
|
|
319
322
|
return this.tag ? `some(${this.value})` : 'none()';
|
|
320
323
|
}
|
|
321
324
|
}
|
|
322
|
-
// Sneaky optimisation: every instance of Optional.none is identical, so just
|
|
323
|
-
// reuse the same object
|
|
324
|
-
Optional.singletonNone = new Optional(false);
|
|
325
325
|
|
|
326
|
-
/* eslint-disable @typescript-eslint/unbound-method */
|
|
327
326
|
const nativeSlice = Array.prototype.slice;
|
|
328
327
|
const nativeIndexOf = Array.prototype.indexOf;
|
|
329
328
|
const nativePush = Array.prototype.push;
|
|
330
|
-
/* eslint-enable */
|
|
331
329
|
const rawIndexOf = (ts, t) => nativeIndexOf.call(ts, t);
|
|
332
330
|
const contains = (xs, x) => rawIndexOf(xs, x) > -1;
|
|
333
331
|
const exists = (xs, pred) => {
|
|
@@ -480,7 +478,6 @@
|
|
|
480
478
|
//
|
|
481
479
|
// Use the native keys if it is available (IE9+), otherwise fall back to manually filtering
|
|
482
480
|
const keys = Object.keys;
|
|
483
|
-
// eslint-disable-next-line @typescript-eslint/unbound-method
|
|
484
481
|
const hasOwnProperty = Object.hasOwnProperty;
|
|
485
482
|
const each = (obj, f) => {
|
|
486
483
|
const props = keys(obj);
|
|
@@ -895,9 +892,7 @@
|
|
|
895
892
|
|
|
896
893
|
// some elements, such as mathml, don't have style attributes
|
|
897
894
|
// others, such as angular elements, have style attributes that aren't a CSSStyleDeclaration
|
|
898
|
-
const isSupported = (dom) =>
|
|
899
|
-
// eslint-disable-next-line @typescript-eslint/unbound-method
|
|
900
|
-
dom.style !== undefined && isFunction(dom.style.getPropertyValue);
|
|
895
|
+
const isSupported = (dom) => dom.style !== undefined && isFunction(dom.style.getPropertyValue);
|
|
901
896
|
|
|
902
897
|
// Node.contains() is very, very, very good performance
|
|
903
898
|
// http://jsperf.com/closest-vs-contains/5
|
|
@@ -1077,9 +1072,6 @@
|
|
|
1077
1072
|
};
|
|
1078
1073
|
const getInnerWidth = (element) => getCalculatedWidth(element, 'content-box');
|
|
1079
1074
|
|
|
1080
|
-
Dimension('width', (element) =>
|
|
1081
|
-
// IMO passing this function is better than using dom['offset' + 'width']
|
|
1082
|
-
element.dom.offsetWidth);
|
|
1083
1075
|
Dimension('width', (element) => {
|
|
1084
1076
|
const dom = element.dom;
|
|
1085
1077
|
return inBody(element) ? dom.getBoundingClientRect().width : dom.offsetWidth;
|
|
@@ -2024,10 +2016,9 @@
|
|
|
2024
2016
|
// Note: This is also contained in the core Options.ts file
|
|
2025
2017
|
const defaultWidth = '100%';
|
|
2026
2018
|
const getPixelForcedWidth = (editor) => {
|
|
2027
|
-
var _a;
|
|
2028
2019
|
// Determine the inner size of the parent block element where the table will be inserted
|
|
2029
2020
|
const dom = editor.dom;
|
|
2030
|
-
const parentBlock =
|
|
2021
|
+
const parentBlock = dom.getParent(editor.selection.getStart(), dom.isBlock) ?? editor.getBody();
|
|
2031
2022
|
return getInner(SugarElement.fromDom(parentBlock)) + 'px';
|
|
2032
2023
|
};
|
|
2033
2024
|
// Note: This is also contained in the core Options.ts file
|
|
@@ -2277,7 +2268,6 @@
|
|
|
2277
2268
|
return hexColour(value);
|
|
2278
2269
|
};
|
|
2279
2270
|
|
|
2280
|
-
/* eslint-disable no-console */
|
|
2281
2271
|
const rgbRegex = /^\s*rgb\s*\(\s*(\d+)\s*[,\s]\s*(\d+)\s*[,\s]\s*(\d+)\s*\)\s*$/i;
|
|
2282
2272
|
// This regex will match rgba(0, 0, 0, 0.5) or rgba(0, 0, 0, 50%) , or without commas
|
|
2283
2273
|
const rgbaRegex = /^\s*rgba\s*\(\s*(\d+)\s*[,\s]\s*(\d+)\s*[,\s]\s*(\d+)\s*[,\s]\s*((?:\d?\.\d+|\d+)%?)\s*\)\s*$/i;
|
|
@@ -2660,8 +2650,8 @@
|
|
|
2660
2650
|
return {
|
|
2661
2651
|
width: dom.getStyle(elm, 'width') || dom.getAttrib(elm, 'width'),
|
|
2662
2652
|
height: dom.getStyle(elm, 'height') || dom.getAttrib(elm, 'height'),
|
|
2663
|
-
cellspacing: cellspacing
|
|
2664
|
-
cellpadding: cellpadding
|
|
2653
|
+
cellspacing: cellspacing ?? '',
|
|
2654
|
+
cellpadding: cellpadding ?? '',
|
|
2665
2655
|
border: getBorder(dom, elm),
|
|
2666
2656
|
caption: !!dom.select('caption', elm)[0],
|
|
2667
2657
|
class: dom.getAttrib(elm, 'class', ''),
|
|
@@ -3442,8 +3432,7 @@
|
|
|
3442
3432
|
const tableTypeRow = tableTypeBase + 'rows';
|
|
3443
3433
|
const tableTypeColumn = tableTypeBase + 'columns';
|
|
3444
3434
|
const getData = (type) => {
|
|
3445
|
-
|
|
3446
|
-
const items = (_a = global.read()) !== null && _a !== void 0 ? _a : [];
|
|
3435
|
+
const items = global.read() ?? [];
|
|
3447
3436
|
return findMap(items, (item) => Optional.from(item.getType(type)));
|
|
3448
3437
|
};
|
|
3449
3438
|
const getRows = () => getData(tableTypeRow);
|