@ckeditor/ckeditor5-html-embed 0.0.0-internal-20241017.0
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/CHANGELOG.md +4 -0
- package/LICENSE.md +17 -0
- package/README.md +26 -0
- package/build/html-embed.js +5 -0
- package/build/translations/ar.js +1 -0
- package/build/translations/bg.js +1 -0
- package/build/translations/bn.js +1 -0
- package/build/translations/bs.js +1 -0
- package/build/translations/ca.js +1 -0
- package/build/translations/cs.js +1 -0
- package/build/translations/da.js +1 -0
- package/build/translations/de-ch.js +1 -0
- package/build/translations/de.js +1 -0
- package/build/translations/el.js +1 -0
- package/build/translations/en-au.js +1 -0
- package/build/translations/es.js +1 -0
- package/build/translations/et.js +1 -0
- package/build/translations/fa.js +1 -0
- package/build/translations/fi.js +1 -0
- package/build/translations/fr.js +1 -0
- package/build/translations/gl.js +1 -0
- package/build/translations/he.js +1 -0
- package/build/translations/hi.js +1 -0
- package/build/translations/hr.js +1 -0
- package/build/translations/hu.js +1 -0
- package/build/translations/id.js +1 -0
- package/build/translations/it.js +1 -0
- package/build/translations/ja.js +1 -0
- package/build/translations/jv.js +1 -0
- package/build/translations/ko.js +1 -0
- package/build/translations/lt.js +1 -0
- package/build/translations/lv.js +1 -0
- package/build/translations/ms.js +1 -0
- package/build/translations/nl.js +1 -0
- package/build/translations/no.js +1 -0
- package/build/translations/pl.js +1 -0
- package/build/translations/pt-br.js +1 -0
- package/build/translations/pt.js +1 -0
- package/build/translations/ro.js +1 -0
- package/build/translations/ru.js +1 -0
- package/build/translations/sk.js +1 -0
- package/build/translations/sl.js +1 -0
- package/build/translations/sr-latn.js +1 -0
- package/build/translations/sr.js +1 -0
- package/build/translations/sv.js +1 -0
- package/build/translations/th.js +1 -0
- package/build/translations/tr.js +1 -0
- package/build/translations/uk.js +1 -0
- package/build/translations/ur.js +1 -0
- package/build/translations/uz.js +1 -0
- package/build/translations/vi.js +1 -0
- package/build/translations/zh-cn.js +1 -0
- package/build/translations/zh.js +1 -0
- package/ckeditor5-metadata.json +31 -0
- package/dist/augmentation.d.ts +28 -0
- package/dist/htmlembed.d.ts +36 -0
- package/dist/htmlembedcommand.d.ts +48 -0
- package/dist/htmlembedconfig.d.ts +90 -0
- package/dist/htmlembedediting.d.ts +48 -0
- package/dist/htmlembedui.d.ts +33 -0
- package/dist/index-content.css +4 -0
- package/dist/index-editor.css +44 -0
- package/dist/index.css +68 -0
- package/dist/index.css.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.js +530 -0
- package/dist/index.js.map +1 -0
- package/dist/translations/ar.d.ts +8 -0
- package/dist/translations/ar.js +5 -0
- package/dist/translations/ar.umd.js +11 -0
- package/dist/translations/bg.d.ts +8 -0
- package/dist/translations/bg.js +5 -0
- package/dist/translations/bg.umd.js +11 -0
- package/dist/translations/bn.d.ts +8 -0
- package/dist/translations/bn.js +5 -0
- package/dist/translations/bn.umd.js +11 -0
- package/dist/translations/bs.d.ts +8 -0
- package/dist/translations/bs.js +5 -0
- package/dist/translations/bs.umd.js +11 -0
- package/dist/translations/ca.d.ts +8 -0
- package/dist/translations/ca.js +5 -0
- package/dist/translations/ca.umd.js +11 -0
- package/dist/translations/cs.d.ts +8 -0
- package/dist/translations/cs.js +5 -0
- package/dist/translations/cs.umd.js +11 -0
- package/dist/translations/da.d.ts +8 -0
- package/dist/translations/da.js +5 -0
- package/dist/translations/da.umd.js +11 -0
- package/dist/translations/de-ch.d.ts +8 -0
- package/dist/translations/de-ch.js +5 -0
- package/dist/translations/de-ch.umd.js +11 -0
- package/dist/translations/de.d.ts +8 -0
- package/dist/translations/de.js +5 -0
- package/dist/translations/de.umd.js +11 -0
- package/dist/translations/el.d.ts +8 -0
- package/dist/translations/el.js +5 -0
- package/dist/translations/el.umd.js +11 -0
- package/dist/translations/en-au.d.ts +8 -0
- package/dist/translations/en-au.js +5 -0
- package/dist/translations/en-au.umd.js +11 -0
- package/dist/translations/en.d.ts +8 -0
- package/dist/translations/en.js +5 -0
- package/dist/translations/en.umd.js +11 -0
- package/dist/translations/es.d.ts +8 -0
- package/dist/translations/es.js +5 -0
- package/dist/translations/es.umd.js +11 -0
- package/dist/translations/et.d.ts +8 -0
- package/dist/translations/et.js +5 -0
- package/dist/translations/et.umd.js +11 -0
- package/dist/translations/fa.d.ts +8 -0
- package/dist/translations/fa.js +5 -0
- package/dist/translations/fa.umd.js +11 -0
- package/dist/translations/fi.d.ts +8 -0
- package/dist/translations/fi.js +5 -0
- package/dist/translations/fi.umd.js +11 -0
- package/dist/translations/fr.d.ts +8 -0
- package/dist/translations/fr.js +5 -0
- package/dist/translations/fr.umd.js +11 -0
- package/dist/translations/gl.d.ts +8 -0
- package/dist/translations/gl.js +5 -0
- package/dist/translations/gl.umd.js +11 -0
- package/dist/translations/he.d.ts +8 -0
- package/dist/translations/he.js +5 -0
- package/dist/translations/he.umd.js +11 -0
- package/dist/translations/hi.d.ts +8 -0
- package/dist/translations/hi.js +5 -0
- package/dist/translations/hi.umd.js +11 -0
- package/dist/translations/hr.d.ts +8 -0
- package/dist/translations/hr.js +5 -0
- package/dist/translations/hr.umd.js +11 -0
- package/dist/translations/hu.d.ts +8 -0
- package/dist/translations/hu.js +5 -0
- package/dist/translations/hu.umd.js +11 -0
- package/dist/translations/id.d.ts +8 -0
- package/dist/translations/id.js +5 -0
- package/dist/translations/id.umd.js +11 -0
- package/dist/translations/it.d.ts +8 -0
- package/dist/translations/it.js +5 -0
- package/dist/translations/it.umd.js +11 -0
- package/dist/translations/ja.d.ts +8 -0
- package/dist/translations/ja.js +5 -0
- package/dist/translations/ja.umd.js +11 -0
- package/dist/translations/jv.d.ts +8 -0
- package/dist/translations/jv.js +5 -0
- package/dist/translations/jv.umd.js +11 -0
- package/dist/translations/ko.d.ts +8 -0
- package/dist/translations/ko.js +5 -0
- package/dist/translations/ko.umd.js +11 -0
- package/dist/translations/lt.d.ts +8 -0
- package/dist/translations/lt.js +5 -0
- package/dist/translations/lt.umd.js +11 -0
- package/dist/translations/lv.d.ts +8 -0
- package/dist/translations/lv.js +5 -0
- package/dist/translations/lv.umd.js +11 -0
- package/dist/translations/ms.d.ts +8 -0
- package/dist/translations/ms.js +5 -0
- package/dist/translations/ms.umd.js +11 -0
- package/dist/translations/nl.d.ts +8 -0
- package/dist/translations/nl.js +5 -0
- package/dist/translations/nl.umd.js +11 -0
- package/dist/translations/no.d.ts +8 -0
- package/dist/translations/no.js +5 -0
- package/dist/translations/no.umd.js +11 -0
- package/dist/translations/pl.d.ts +8 -0
- package/dist/translations/pl.js +5 -0
- package/dist/translations/pl.umd.js +11 -0
- package/dist/translations/pt-br.d.ts +8 -0
- package/dist/translations/pt-br.js +5 -0
- package/dist/translations/pt-br.umd.js +11 -0
- package/dist/translations/pt.d.ts +8 -0
- package/dist/translations/pt.js +5 -0
- package/dist/translations/pt.umd.js +11 -0
- package/dist/translations/ro.d.ts +8 -0
- package/dist/translations/ro.js +5 -0
- package/dist/translations/ro.umd.js +11 -0
- package/dist/translations/ru.d.ts +8 -0
- package/dist/translations/ru.js +5 -0
- package/dist/translations/ru.umd.js +11 -0
- package/dist/translations/sk.d.ts +8 -0
- package/dist/translations/sk.js +5 -0
- package/dist/translations/sk.umd.js +11 -0
- package/dist/translations/sl.d.ts +8 -0
- package/dist/translations/sl.js +5 -0
- package/dist/translations/sl.umd.js +11 -0
- package/dist/translations/sr-latn.d.ts +8 -0
- package/dist/translations/sr-latn.js +5 -0
- package/dist/translations/sr-latn.umd.js +11 -0
- package/dist/translations/sr.d.ts +8 -0
- package/dist/translations/sr.js +5 -0
- package/dist/translations/sr.umd.js +11 -0
- package/dist/translations/sv.d.ts +8 -0
- package/dist/translations/sv.js +5 -0
- package/dist/translations/sv.umd.js +11 -0
- package/dist/translations/th.d.ts +8 -0
- package/dist/translations/th.js +5 -0
- package/dist/translations/th.umd.js +11 -0
- package/dist/translations/tr.d.ts +8 -0
- package/dist/translations/tr.js +5 -0
- package/dist/translations/tr.umd.js +11 -0
- package/dist/translations/uk.d.ts +8 -0
- package/dist/translations/uk.js +5 -0
- package/dist/translations/uk.umd.js +11 -0
- package/dist/translations/ur.d.ts +8 -0
- package/dist/translations/ur.js +5 -0
- package/dist/translations/ur.umd.js +11 -0
- package/dist/translations/uz.d.ts +8 -0
- package/dist/translations/uz.js +5 -0
- package/dist/translations/uz.umd.js +11 -0
- package/dist/translations/vi.d.ts +8 -0
- package/dist/translations/vi.js +5 -0
- package/dist/translations/vi.umd.js +11 -0
- package/dist/translations/zh-cn.d.ts +8 -0
- package/dist/translations/zh-cn.js +5 -0
- package/dist/translations/zh-cn.umd.js +11 -0
- package/dist/translations/zh.d.ts +8 -0
- package/dist/translations/zh.js +5 -0
- package/dist/translations/zh.umd.js +11 -0
- package/lang/contexts.json +9 -0
- package/lang/translations/ar.po +46 -0
- package/lang/translations/bg.po +46 -0
- package/lang/translations/bn.po +46 -0
- package/lang/translations/bs.po +46 -0
- package/lang/translations/ca.po +46 -0
- package/lang/translations/cs.po +46 -0
- package/lang/translations/da.po +46 -0
- package/lang/translations/de-ch.po +46 -0
- package/lang/translations/de.po +46 -0
- package/lang/translations/el.po +46 -0
- package/lang/translations/en-au.po +46 -0
- package/lang/translations/en.po +46 -0
- package/lang/translations/es.po +46 -0
- package/lang/translations/et.po +46 -0
- package/lang/translations/fa.po +46 -0
- package/lang/translations/fi.po +46 -0
- package/lang/translations/fr.po +46 -0
- package/lang/translations/gl.po +46 -0
- package/lang/translations/he.po +46 -0
- package/lang/translations/hi.po +46 -0
- package/lang/translations/hr.po +46 -0
- package/lang/translations/hu.po +46 -0
- package/lang/translations/id.po +46 -0
- package/lang/translations/it.po +46 -0
- package/lang/translations/ja.po +46 -0
- package/lang/translations/jv.po +46 -0
- package/lang/translations/ko.po +46 -0
- package/lang/translations/lt.po +46 -0
- package/lang/translations/lv.po +46 -0
- package/lang/translations/ms.po +46 -0
- package/lang/translations/nl.po +46 -0
- package/lang/translations/no.po +46 -0
- package/lang/translations/pl.po +46 -0
- package/lang/translations/pt-br.po +46 -0
- package/lang/translations/pt.po +46 -0
- package/lang/translations/ro.po +46 -0
- package/lang/translations/ru.po +46 -0
- package/lang/translations/sk.po +46 -0
- package/lang/translations/sl.po +46 -0
- package/lang/translations/sr-latn.po +46 -0
- package/lang/translations/sr.po +46 -0
- package/lang/translations/sv.po +46 -0
- package/lang/translations/th.po +46 -0
- package/lang/translations/tr.po +46 -0
- package/lang/translations/uk.po +46 -0
- package/lang/translations/ur.po +46 -0
- package/lang/translations/uz.po +46 -0
- package/lang/translations/vi.po +46 -0
- package/lang/translations/zh-cn.po +46 -0
- package/lang/translations/zh.po +46 -0
- package/package.json +42 -0
- package/src/augmentation.d.ts +24 -0
- package/src/augmentation.js +5 -0
- package/src/htmlembed.d.ts +32 -0
- package/src/htmlembed.js +38 -0
- package/src/htmlembedcommand.d.ts +44 -0
- package/src/htmlembedcommand.js +95 -0
- package/src/htmlembedconfig.d.ts +86 -0
- package/src/htmlembedconfig.js +5 -0
- package/src/htmlembedediting.d.ts +44 -0
- package/src/htmlembedediting.js +333 -0
- package/src/htmlembedui.d.ts +29 -0
- package/src/htmlembedui.js +72 -0
- package/src/index.d.ts +13 -0
- package/src/index.js +11 -0
- package/theme/htmlembed.css +68 -0
package/CHANGELOG.md
ADDED
package/LICENSE.md
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
Software License Agreement
|
|
2
|
+
==========================
|
|
3
|
+
|
|
4
|
+
**CKEditor 5 HTML embed feature** – https://github.com/ckeditor/ckeditor5-html-embed <br>
|
|
5
|
+
Copyright (c) 2003–2024, [CKSource Holding sp. z o.o.](https://cksource.com) All rights reserved.
|
|
6
|
+
|
|
7
|
+
Licensed under the terms of [GNU General Public License Version 2 or later](http://www.gnu.org/licenses/gpl.html).
|
|
8
|
+
|
|
9
|
+
Sources of Intellectual Property Included in CKEditor
|
|
10
|
+
-----------------------------------------------------
|
|
11
|
+
|
|
12
|
+
Where not otherwise indicated, all CKEditor content is authored by CKSource engineers and consists of CKSource-owned intellectual property. In some specific instances, CKEditor will incorporate work done by developers outside of CKSource with their express permission.
|
|
13
|
+
|
|
14
|
+
Trademarks
|
|
15
|
+
----------
|
|
16
|
+
|
|
17
|
+
**CKEditor** is a trademark of [CKSource Holding sp. z o.o.](https://cksource.com) All other brand and product names are trademarks, registered trademarks, or service marks of their respective holders.
|
package/README.md
ADDED
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
CKEditor 5 HTML embed feature
|
|
2
|
+
=============================
|
|
3
|
+
|
|
4
|
+
[](https://www.npmjs.com/package/@ckeditor/ckeditor5-html-embed)
|
|
5
|
+
[](https://coveralls.io/github/ckeditor/ckeditor5?branch=master)
|
|
6
|
+
[](https://app.travis-ci.com/github/ckeditor/ckeditor5)
|
|
7
|
+
|
|
8
|
+
This package implements the HTML embed feature for CKEditor 5. It allows embedding an arbitrary HTML snippet in the rich-text editor.
|
|
9
|
+
|
|
10
|
+
## Demo
|
|
11
|
+
|
|
12
|
+
Check out the demo in the [HTML embed feature guide](https://ckeditor.com/docs/ckeditor5/latest/features/html/html-embed.html#demo).
|
|
13
|
+
|
|
14
|
+
## Documentation
|
|
15
|
+
|
|
16
|
+
See the [`@ckeditor/ckeditor5-html-embed` package](https://ckeditor.com/docs/ckeditor5/latest/api/html-embed.html) page as well as the [HTML embed feature](https://ckeditor.com/docs/ckeditor5/latest/features/html/html-embed.html) guide in [CKEditor 5 documentation](https://ckeditor.com/docs/ckeditor5/latest/).
|
|
17
|
+
|
|
18
|
+
## Installation
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npm install ckeditor5
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## License
|
|
25
|
+
|
|
26
|
+
Licensed under the terms of [GNU General Public License Version 2 or later](http://www.gnu.org/licenses/gpl.html). For full details about the license, please check the `LICENSE.md` file or [https://ckeditor.com/legal/ckeditor-oss-license](https://ckeditor.com/legal/ckeditor-oss-license).
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
!function(e){const t=e.en=e.en||{};t.dictionary=Object.assign(t.dictionary||{},{"Edit source":"Edit source","Empty snippet content":"Empty snippet content","HTML snippet":"HTML snippet","Insert HTML":"Insert HTML","No preview available":"No preview available","Paste raw HTML here...":"Paste raw HTML here...","Save changes":"Save changes"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={})),
|
|
2
|
+
/*!
|
|
3
|
+
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
4
|
+
* For licensing, see LICENSE.md.
|
|
5
|
+
*/(()=>{var e={199:(e,t,r)=>{"use strict";r.d(t,{A:()=>c});var n=r(758),a=r.n(n),i=r(935),o=r.n(i)()(a());o.push([e.id,".ck-widget.raw-html-embed{display:flow-root;font-style:normal;margin:.9em auto;min-width:15em;position:relative}.ck-widget.raw-html-embed:before{position:absolute;z-index:1}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper{display:flex;flex-direction:column;position:absolute}.ck-widget.raw-html-embed .raw-html-embed__preview{display:flex;overflow:hidden;position:relative}.ck-widget.raw-html-embed .raw-html-embed__preview-content{border-collapse:separate;border-spacing:7px;display:table;margin:auto;position:relative;width:100%}.ck-widget.raw-html-embed .raw-html-embed__preview-placeholder{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}:root{--ck-html-embed-content-width:calc(100% - var(--ck-icon-size)*1.5);--ck-html-embed-source-height:10em;--ck-html-embed-unfocused-outline-width:1px;--ck-html-embed-content-min-height:calc(var(--ck-icon-size) + var(--ck-spacing-standard));--ck-html-embed-source-disabled-background:var(--ck-color-base-foreground);--ck-html-embed-source-disabled-color:#737373}.ck-widget.raw-html-embed{background-color:var(--ck-color-base-foreground);font-size:var(--ck-font-size-base)}.ck-widget.raw-html-embed:not(.ck-widget_selected):not(:hover){outline:var(--ck-html-embed-unfocused-outline-width) dashed var(--ck-color-widget-blurred-border)}.ck-widget.raw-html-embed[dir=ltr]{text-align:left}.ck-widget.raw-html-embed[dir=rtl]{text-align:right}.ck-widget.raw-html-embed:before{background:#999;border-radius:0 0 var(--ck-border-radius) var(--ck-border-radius);color:var(--ck-color-base-background);content:attr(data-html-embed-label);font-family:var(--ck-font-face);font-size:var(--ck-font-size-tiny);left:var(--ck-spacing-standard);padding:calc(var(--ck-spacing-tiny) + var(--ck-html-embed-unfocused-outline-width)) var(--ck-spacing-small) var(--ck-spacing-tiny);top:calc(var(--ck-html-embed-unfocused-outline-width)*-1);transition:background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}.ck-widget.raw-html-embed[dir=rtl]:before{left:auto;right:var(--ck-spacing-standard)}.ck-widget.raw-html-embed[dir=ltr] .ck-widget__type-around .ck-widget__type-around__button.ck-widget__type-around__button_before{margin-left:50px}.ck.ck-editor__editable.ck-blurred .ck-widget.raw-html-embed.ck-widget_selected:before{padding:var(--ck-spacing-tiny) var(--ck-spacing-small);top:0}.ck.ck-editor__editable:not(.ck-blurred) .ck-widget.raw-html-embed.ck-widget_selected:before{background:var(--ck-color-focus-border);padding:var(--ck-spacing-tiny) var(--ck-spacing-small);top:0}.ck.ck-editor__editable .ck-widget.raw-html-embed:not(.ck-widget_selected):hover:before{padding:var(--ck-spacing-tiny) var(--ck-spacing-small);top:0}.ck-widget.raw-html-embed .raw-html-embed__content-wrapper{padding:var(--ck-spacing-standard)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper{right:var(--ck-spacing-standard);top:var(--ck-spacing-standard)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper .ck-button.raw-html-embed__save-button{color:var(--ck-color-button-save)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper .ck-button.raw-html-embed__cancel-button{color:var(--ck-color-button-cancel)}.ck-widget.raw-html-embed .raw-html-embed__buttons-wrapper .ck-button:not(:first-child){margin-top:var(--ck-spacing-small)}.ck-widget.raw-html-embed[dir=rtl] .raw-html-embed__buttons-wrapper{left:var(--ck-spacing-standard);right:auto}.ck-widget.raw-html-embed .raw-html-embed__source{box-sizing:border-box;direction:ltr;font-family:monospace;font-size:var(--ck-font-size-base);height:var(--ck-html-embed-source-height);min-width:0;padding:var(--ck-spacing-standard);resize:none;tab-size:4;text-align:left;white-space:pre-wrap;width:var(--ck-html-embed-content-width)}.ck-widget.raw-html-embed .raw-html-embed__source[disabled]{background:var(--ck-html-embed-source-disabled-background);color:var(--ck-html-embed-source-disabled-color);-webkit-text-fill-color:var(--ck-html-embed-source-disabled-color);opacity:1}.ck-widget.raw-html-embed .raw-html-embed__preview{min-height:var(--ck-html-embed-content-min-height);width:var(--ck-html-embed-content-width)}.ck-editor__editable:not(.ck-read-only) .ck-widget.raw-html-embed .raw-html-embed__preview{pointer-events:none}.ck-widget.raw-html-embed .raw-html-embed__preview-content{background-color:var(--ck-color-base-foreground);box-sizing:border-box}.ck-widget.raw-html-embed .raw-html-embed__preview-content>*{margin-left:auto;margin-right:auto}.ck-widget.raw-html-embed .raw-html-embed__preview-placeholder{color:var(--ck-html-embed-source-disabled-color)}",""]);const c=o},935:e=>{"use strict";e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var r="",n=void 0!==t[5];return t[4]&&(r+="@supports (".concat(t[4],") {")),t[2]&&(r+="@media ".concat(t[2]," {")),n&&(r+="@layer".concat(t[5].length>0?" ".concat(t[5]):""," {")),r+=e(t),n&&(r+="}"),t[2]&&(r+="}"),t[4]&&(r+="}"),r})).join("")},t.i=function(e,r,n,a,i){"string"==typeof e&&(e=[[null,e,void 0]]);var o={};if(n)for(var c=0;c<this.length;c++){var l=this[c][0];null!=l&&(o[l]=!0)}for(var s=0;s<e.length;s++){var d=[].concat(e[s]);n&&o[d[0]]||(void 0!==i&&(void 0===d[5]||(d[1]="@layer".concat(d[5].length>0?" ".concat(d[5]):""," {").concat(d[1],"}")),d[5]=i),r&&(d[2]?(d[1]="@media ".concat(d[2]," {").concat(d[1],"}"),d[2]=r):d[2]=r),a&&(d[4]?(d[1]="@supports (".concat(d[4],") {").concat(d[1],"}"),d[4]=a):d[4]="".concat(a)),t.push(d))}},t}},758:e=>{"use strict";e.exports=function(e){return e[1]}},591:e=>{"use strict";var t=[];function r(e){for(var r=-1,n=0;n<t.length;n++)if(t[n].identifier===e){r=n;break}return r}function n(e,n){for(var i={},o=[],c=0;c<e.length;c++){var l=e[c],s=n.base?l[0]+n.base:l[0],d=i[s]||0,m="".concat(s," ").concat(d);i[s]=d+1;var u=r(m),p={css:l[1],media:l[2],sourceMap:l[3],supports:l[4],layer:l[5]};if(-1!==u)t[u].references++,t[u].updater(p);else{var b=a(p,n);n.byIndex=c,t.splice(c,0,{identifier:m,updater:b,references:1})}o.push(m)}return o}function a(e,t){var r=t.domAPI(t);r.update(e);return function(t){if(t){if(t.css===e.css&&t.media===e.media&&t.sourceMap===e.sourceMap&&t.supports===e.supports&&t.layer===e.layer)return;r.update(e=t)}else r.remove()}}e.exports=function(e,a){var i=n(e=e||[],a=a||{});return function(e){e=e||[];for(var o=0;o<i.length;o++){var c=r(i[o]);t[c].references--}for(var l=n(e,a),s=0;s<i.length;s++){var d=r(i[s]);0===t[d].references&&(t[d].updater(),t.splice(d,1))}i=l}}},128:e=>{"use strict";var t={};e.exports=function(e,r){var n=function(e){if(void 0===t[e]){var r=document.querySelector(e);if(window.HTMLIFrameElement&&r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(e){r=null}t[e]=r}return t[e]}(e);if(!n)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");n.appendChild(r)}},51:e=>{"use strict";e.exports=function(e){var t=document.createElement("style");return e.setAttributes(t,e.attributes),e.insert(t,e.options),t}},21:e=>{"use strict";e.exports=function(e,t){Object.keys(t).forEach((function(r){e.setAttribute(r,t[r])}))}},639:e=>{"use strict";var t,r=(t=[],function(e,r){return t[e]=r,t.filter(Boolean).join("\n")});function n(e,t,n,a){var i;if(n)i="";else{i="",a.supports&&(i+="@supports (".concat(a.supports,") {")),a.media&&(i+="@media ".concat(a.media," {"));var o=void 0!==a.layer;o&&(i+="@layer".concat(a.layer.length>0?" ".concat(a.layer):""," {")),i+=a.css,o&&(i+="}"),a.media&&(i+="}"),a.supports&&(i+="}")}if(e.styleSheet)e.styleSheet.cssText=r(t,i);else{var c=document.createTextNode(i),l=e.childNodes;l[t]&&e.removeChild(l[t]),l.length?e.insertBefore(c,l[t]):e.appendChild(c)}}var a={singleton:null,singletonCounter:0};e.exports=function(e){if("undefined"==typeof document)return{update:function(){},remove:function(){}};var t=a.singletonCounter++,r=a.singleton||(a.singleton=e.insertStyleElement(e));return{update:function(e){n(r,t,!1,e)},remove:function(e){n(r,t,!0,e)}}}},782:(e,t,r)=>{e.exports=r(237)("./src/core.js")},311:(e,t,r)=>{e.exports=r(237)("./src/ui.js")},584:(e,t,r)=>{e.exports=r(237)("./src/utils.js")},901:(e,t,r)=>{e.exports=r(237)("./src/widget.js")},237:e=>{"use strict";e.exports=CKEditor5.dll}},t={};function r(n){var a=t[n];if(void 0!==a)return a.exports;var i=t[n]={id:n,exports:{}};return e[n](i,i.exports,r),i.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};(()=>{"use strict";r.r(n),r.d(n,{HtmlEmbed:()=>y,HtmlEmbedEditing:()=>k,HtmlEmbedUI:()=>E});var e=r(782),t=r(901),a=r(311),i=r(584);class o extends e.Command{refresh(){const e=this.editor.model,r=e.schema,n=e.document.selection,a=c(n);this.isEnabled=function(e,r,n){const a=function(e,r){const n=(0,t.findOptimalInsertionRange)(e,r),a=n.start.parent;if(a.isEmpty&&!a.is("rootElement"))return a.parent;return a}(e,n);return r.checkChild(a,"rawHtml")}(n,r,e),this.value=a?a.getAttribute("value")||"":null}execute(e){const t=this.editor.model,r=t.document.selection;t.change((n=>{let a;null!==this.value?a=c(r):(a=n.createElement("rawHtml"),t.insertObject(a,null,null,{setSelection:"on"})),n.setAttribute("value",e,a)}))}}function c(e){const t=e.getSelectedElement();return t&&t.is("element","rawHtml")?t:null}var l=r(591),s=r.n(l),d=r(639),m=r.n(d),u=r(128),p=r.n(u),b=r(21),h=r.n(b),w=r(51),g=r.n(w),v=r(199),f={attributes:{"data-cke":!0}};f.setAttributes=h(),f.insert=p().bind(null,"head"),f.domAPI=m(),f.insertStyleElement=g();s()(v.A,f);v.A&&v.A.locals&&v.A.locals;class k extends e.Plugin{static get pluginName(){return"HtmlEmbedEditing"}static get isOfficialPlugin(){return!0}constructor(e){super(e),this._widgetButtonViewReferences=new Set,e.config.define("htmlEmbed",{showPreviews:!1,sanitizeHtml:e=>((0,i.logWarning)("html-embed-provide-sanitize-function"),{html:e,hasChanged:!1})})}init(){const e=this.editor;e.model.schema.register("rawHtml",{inheritAllFrom:"$blockObject",allowAttributes:["value"]}),e.commands.add("htmlEmbed",new o(e)),this._setupConversion()}_setupConversion(){const e=this.editor,r=e.t,n=e.editing.view,a=this._widgetButtonViewReferences,o=e.config.get("htmlEmbed");function c({editor:e,domElement:t,state:n,props:o}){t.textContent="";const c=t.ownerDocument;let s;if(n.isEditable){const e={isDisabled:!1,placeholder:o.textareaPlaceholder};s=l({domDocument:c,state:n,props:e}),t.append(s)}else if(n.showPreviews){const a={sanitizeHtml:o.sanitizeHtml};t.append(function({editor:e,domDocument:t,state:n,props:a}){const o=a.sanitizeHtml(n.getRawHtmlValue()),c=n.getRawHtmlValue().length>0?r("No preview available"):r("Empty snippet content"),l=(0,i.createElement)(t,"div",{class:"ck ck-reset_all raw-html-embed__preview-placeholder"},c),s=(0,i.createElement)(t,"div",{class:"raw-html-embed__preview-content",dir:e.locale.contentLanguageDirection}),d=t.createRange(),m=d.createContextualFragment(o.html);s.appendChild(m);const u=(0,i.createElement)(t,"div",{class:"raw-html-embed__preview"},[l,s]);return u}({domDocument:c,state:n,props:a,editor:e}))}else{const e={isDisabled:!0,placeholder:o.textareaPlaceholder};t.append(l({domDocument:c,state:n,props:e}))}const d={onEditClick:o.onEditClick,onSaveClick:()=>{o.onSaveClick(s.value)},onCancelClick:o.onCancelClick};t.prepend(function({editor:e,domDocument:t,state:r,props:n}){const o=(0,i.createElement)(t,"div",{class:"raw-html-embed__buttons-wrapper"});if(r.isEditable){const t=_(e,"save",n.onSaveClick),r=_(e,"cancel",n.onCancelClick);o.append(t.element,r.element),a.add(t).add(r)}else{const t=_(e,"edit",n.onEditClick);o.append(t.element),a.add(t)}return o}({editor:e,domDocument:c,state:n,props:d}))}function l({domDocument:e,state:t,props:r}){const n=(0,i.createElement)(e,"textarea",{placeholder:r.placeholder,class:"ck ck-reset ck-input ck-input-text raw-html-embed__source"});return n.disabled=r.isDisabled,n.value=t.getRawHtmlValue(),n}this.editor.editing.view.on("render",(()=>{for(const e of a){if(e.element&&e.element.isConnected)return;e.destroy(),a.delete(e)}}),{priority:"lowest"}),e.data.registerRawContentMatcher({name:"div",classes:"raw-html-embed"}),e.conversion.for("upcast").elementToElement({view:{name:"div",classes:"raw-html-embed"},model:(e,{writer:t})=>t.createElement("rawHtml",{value:e.getCustomProperty("$rawContent")})}),e.conversion.for("dataDowncast").elementToElement({model:"rawHtml",view:(e,{writer:t})=>t.createRawElement("div",{class:"raw-html-embed"},(function(t){t.innerHTML=e.getAttribute("value")||""}))}),e.conversion.for("editingDowncast").elementToStructure({model:{name:"rawHtml",attributes:["value"]},view:(a,{writer:i})=>{let l,s,d;const m=i.createRawElement("div",{class:"raw-html-embed__content-wrapper"},(function(t){l=t,c({editor:e,domElement:t,state:s,props:d}),l.addEventListener("mousedown",(()=>{if(s.isEditable){const t=e.model;t.document.selection.getSelectedElement()!==a&&t.change((e=>e.setSelection(a,"on")))}}),!0)})),u={makeEditable(){s=Object.assign({},s,{isEditable:!0}),c({domElement:l,editor:e,state:s,props:d}),n.change((e=>{e.setAttribute("data-cke-ignore-events","true",m)})),l.querySelector("textarea").focus()},save(t){t!==s.getRawHtmlValue()?(e.execute("htmlEmbed",t),e.editing.view.focus()):this.cancel()},cancel(){s=Object.assign({},s,{isEditable:!1}),c({domElement:l,editor:e,state:s,props:d}),e.editing.view.focus(),n.change((e=>{e.removeAttribute("data-cke-ignore-events",m)}))}};s={showPreviews:o.showPreviews,isEditable:!1,getRawHtmlValue:()=>a.getAttribute("value")||""},d={sanitizeHtml:o.sanitizeHtml,textareaPlaceholder:r("Paste raw HTML here..."),onEditClick(){u.makeEditable()},onSaveClick(e){u.save(e)},onCancelClick(){u.cancel()}};const p=i.createContainerElement("div",{class:"raw-html-embed","data-html-embed-label":r("HTML snippet"),dir:e.locale.uiLanguageDirection},m);return i.setCustomProperty("rawHtmlApi",u,p),i.setCustomProperty("rawHtml",!0,p),(0,t.toWidget)(p,i,{label:r("HTML snippet"),hasSelectionHandle:!0})}})}}function _(t,r,n){const{t:i}=t.locale,o=new a.ButtonView(t.locale),c=t.commands.get("htmlEmbed");return o.set({class:`raw-html-embed__${r}-button`,icon:e.icons.pencil,tooltip:!0,tooltipPosition:"rtl"===t.locale.uiLanguageDirection?"e":"w"}),o.render(),"edit"===r?(o.set({icon:e.icons.pencil,label:i("Edit source")}),o.bind("isEnabled").to(c)):"save"===r?(o.set({icon:e.icons.check,label:i("Save changes")}),o.bind("isEnabled").to(c)):o.set({icon:e.icons.cancel,label:i("Cancel")}),o.on("execute",n),o}class E extends e.Plugin{static get pluginName(){return"HtmlEmbedUI"}static get isOfficialPlugin(){return!0}init(){const e=this.editor,t=e.locale.t;e.ui.componentFactory.add("htmlEmbed",(()=>{const e=this._createButton(a.ButtonView);return e.set({tooltip:!0,label:t("Insert HTML")}),e})),e.ui.componentFactory.add("menuBar:htmlEmbed",(()=>{const e=this._createButton(a.MenuBarMenuListItemButtonView);return e.set({label:t("HTML snippet")}),e}))}_createButton(t){const r=this.editor,n=r.commands.get("htmlEmbed"),a=new t(r.locale);return a.set({icon:e.icons.html}),a.bind("isEnabled").to(n,"isEnabled"),this.listenTo(a,"execute",(()=>{r.execute("htmlEmbed"),r.editing.view.focus();r.editing.view.document.selection.getSelectedElement().getCustomProperty("rawHtmlApi").makeEditable()})),a}}class y extends e.Plugin{static get requires(){return[k,E,t.Widget]}static get pluginName(){return"HtmlEmbed"}static get isOfficialPlugin(){return!0}}})(),(window.CKEditor5=window.CKEditor5||{}).htmlEmbed=n})();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.ar=e.ar||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"تحرير المصدر","Empty snippet content":"محتوى القصاصة فارغ","HTML snippet":"قصاصة برمجية بلغة HTML","Insert HTML":"إدراج HTML","No preview available":"المعاينة غير متاحة","Paste raw HTML here...":"ألصق رمز HTML الأولي هنا...","Save changes":"حفظ التغييرات"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.bg=e.bg||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Редактирай източник","Empty snippet content":"Изпразни съдържанието на съкращението","HTML snippet":"съкратен HTML","Insert HTML":"Въведи HTML","No preview available":"Не е наличен преглед","Paste raw HTML here...":"Постави суров HTML тук...","Save changes":"Запази промените"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(n){const e=n.bn=n.bn||{};e.dictionary=Object.assign(e.dictionary||{},{"Edit source":"উৎস এডিট করুন","Empty snippet content":"খালি স্নিপেট বিষয়বস্তু","HTML snippet":"HTML স্নিপেট","Insert HTML":"HTML ঢোকান","No preview available":"কোনো প্রিভিউ উপলব্ধ নেই","Paste raw HTML here...":"এখানে সারি HTML পেস্ট করুন...","Save changes":"পরিবর্তনগুলো সংরক্ষন"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const a=e.bs=e.bs||{};a.dictionary=Object.assign(a.dictionary||{},{"Edit source":"Uredi izvor","Empty snippet content":"HTML odlomak nema sadžaj","HTML snippet":"HTML odlomak","Insert HTML":"Umetni HTML","No preview available":"Pregled nedostupan","Paste raw HTML here...":"Zalijepi HTML ovdje...","Save changes":"Sačuvaj izmjene"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(a){const n=a.ca=a.ca||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Editar la font","Empty snippet content":"Contingut del fragment buit","HTML snippet":"Fragment HTML","Insert HTML":"Insereix HTML","No preview available":"No hi ha cap vista prèvia disponible","Paste raw HTML here...":"Enganxa HTML en brut aquí...","Save changes":"Desar els canvis"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(i){const e=i.cs=i.cs||{};e.dictionary=Object.assign(e.dictionary||{},{"Edit source":"Upravit zdroj","Empty snippet content":"Prázdný obsah kódu","HTML snippet":"Kód HTML","Insert HTML":"Vložit kód HTML","No preview available":"Náhled není k dispozici","Paste raw HTML here...":"Sem vložte kód HTML ...","Save changes":"Uložit změny"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(n){const e=n.da=n.da||{};e.dictionary=Object.assign(e.dictionary||{},{"Edit source":"Rediger kilde","Empty snippet content":"Tøm uddragsindhold","HTML snippet":"HTML-uddrag","Insert HTML":"Indsæt HTML","No preview available":"Ingen forhåndsvisning tilgængelig","Paste raw HTML here...":"Indsæt rå HTML her...","Save changes":"Gem ændringer"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e["de-ch"]=e["de-ch"]||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Quelle bearbeiten","Empty snippet content":"Codeschnipsel ohne Inhalt","HTML snippet":"HTML-Codeschnipsel","Insert HTML":"HTML einfügen","No preview available":"Keine Vorschau verfügbar","Paste raw HTML here...":"HTML-Code hier einfügen…","Save changes":"Änderungen speichern"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.de=e.de||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Quelle bearbeiten","Empty snippet content":"Leerer Snippet-Inhalt","HTML snippet":"HTML-Snippet","Insert HTML":"HTML einfügen","No preview available":"Keine Vorschau verfügbar","Paste raw HTML here...":"Rohes HTML hier einfügen …","Save changes":"Änderungen speichern"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.el=e.el||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Επεξεργασία κώδικα","Empty snippet content":"Άδειο περιεχόμενο αποσπάσματος","HTML snippet":"Απόσπασμα HTML","Insert HTML":"Εισαγωγή HTML","No preview available":"Η προεπισκόπηση δεν είναι διαθέσιμη","Paste raw HTML here...":"Επικολλήστε κώδικα HTML εδώ...","Save changes":"Αποθήκευση αλλαγών"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e["en-au"]=e["en-au"]||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Edit source","Empty snippet content":"Empty snippet content","HTML snippet":"HTML snippet","Insert HTML":"Insert HTML","No preview available":"No preview available","Paste raw HTML here...":"Paste raw HTML here...","Save changes":"Save changes"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const a=e.es=e.es||{};a.dictionary=Object.assign(a.dictionary||{},{"Edit source":"Editar fuente","Empty snippet content":"Fragmento vacío","HTML snippet":"Fragmento HTML","Insert HTML":"Insertar HTML","No preview available":"No hay ninguna previsualización","Paste raw HTML here...":"Pegue el código HTML aquí…","Save changes":"Guardar cambios"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const a=e.et=e.et||{};a.dictionary=Object.assign(a.dictionary||{},{"Edit source":"Muuda allikat","Empty snippet content":"Tühi jupi sisu","HTML snippet":"HTML jupp","Insert HTML":"Sisesta HTML","No preview available":"Eelvaade pole saadaval","Paste raw HTML here...":"Kleebi toores HTML siia...","Save changes":"Salvesta muudatused"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.fa=e.fa||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"ویرایش سورس","Empty snippet content":"","HTML snippet":"","Insert HTML":"وارد کردن html","No preview available":"پیش نمایشی موجود نیست","Paste raw HTML here...":"","Save changes":"ذخیره تغییرات"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(t){const i=t.fi=t.fi||{};i.dictionary=Object.assign(i.dictionary||{},{"Edit source":"Muokkaa lähdettä","Empty snippet content":"Tyhjä pätkäsisältö","HTML snippet":"HTML-pätkä","Insert HTML":"Liitä HTML","No preview available":"Esikatseluversiota ei ole saatavilla","Paste raw HTML here...":"Liitä raaka-HTML tähän...","Save changes":"Tallenna muutokset"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.fr=e.fr||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Modifier la source","Empty snippet content":"Aucun contenu pour ce fragment de code","HTML snippet":"Code HTML","Insert HTML":"Insérer du code HTML","No preview available":"Aucun aperçu disponible","Paste raw HTML here...":"Collez le code HTML brut ici...","Save changes":"Enregistrer les changements"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const i=e.gl=e.gl||{};i.dictionary=Object.assign(i.dictionary||{},{"Edit source":"Editar a orixe","Empty snippet content":"Contido de fragmento de código baleiro","HTML snippet":"Fragmento HTML","Insert HTML":"Inserir HTML","No preview available":"Non hai vista previa dispoñíbel","Paste raw HTML here...":"Pegar HTML en bruto aquí…","Save changes":"Gardar cambios"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.he=e.he||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"ערוך מקור","Empty snippet content":"תוכן קטע ריק","HTML snippet":"קטע HTML","Insert HTML":"הכנס HTML","No preview available":"אין תצוגה מקדימה זמינה","Paste raw HTML here...":"הדביקו כאן HTML גולמי...","Save changes":"שמור שינויים"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(i){const e=i.hi=i.hi||{};e.dictionary=Object.assign(e.dictionary||{},{"Edit source":"सोर्स एडिट करें","Empty snippet content":"खाली स्निपेट कंटेंट","HTML snippet":"एचटीएमएल स्निपेट","Insert HTML":"एचटीएमएल इन्सर्ट करें","No preview available":"कोई प्रीव्यू उपलब्ध नहीं","Paste raw HTML here...":"रॉ एचटीएमएल यहां पेस्ट करें...","Save changes":"चेंजेज़ को सेव करें"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(i){const e=i.hr=i.hr||{};e.dictionary=Object.assign(e.dictionary||{},{"Edit source":"Uredi izvorni kod","Empty snippet content":"Ukloni sadržaj isječka","HTML snippet":"HTML isječak","Insert HTML":"Ubaci HTML","No preview available":"Pregled nije dostupan","Paste raw HTML here...":"Zalijepi ovdje čisti HTML...","Save changes":"Snimi promjene"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const s=e.hu=e.hu||{};s.dictionary=Object.assign(s.dictionary||{},{"Edit source":"Forrás szerkesztése","Empty snippet content":"Üres kódrészleti tartalom","HTML snippet":"HTML kódrészlet","Insert HTML":"HTML beillesztése","No preview available":"Nincs elérhető előnézet","Paste raw HTML here...":"Másolja ide a HTML forrás szövegét...","Save changes":"Módosítások mentése"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(n){const a=n.id=n.id||{};a.dictionary=Object.assign(a.dictionary||{},{"Edit source":"Sunting sumber","Empty snippet content":"Konten potongan kosong","HTML snippet":"Potongan HTML","Insert HTML":"Sisipkan HTML","No preview available":"Pratinjau tidak tersedia","Paste raw HTML here...":"Tempelkan HTML apa adanya di sini...","Save changes":"Simpan perubahan"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(i){const e=i.it=i.it||{};e.dictionary=Object.assign(e.dictionary||{},{"Edit source":"Modifica sorgente","Empty snippet content":"Contenuto frammento di codice vuoto","HTML snippet":"Frammento HTML","Insert HTML":"Inserisci HTML","No preview available":"Nessuna anteprima disponibile","Paste raw HTML here...":"Incolla qui HTML non elaborato...","Save changes":"Salva modifiche"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.ja=e.ja||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"ソースを編集","Empty snippet content":"スニペットのコンテンツを空にする","HTML snippet":"HTMLスニペット","Insert HTML":"HTMLを挿入","No preview available":"プレビューは使用できません","Paste raw HTML here...":"ここにRaw HTMLを貼り付ける...","Save changes":"変更を保存"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.jv=e.jv||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"","Empty snippet content":"","HTML snippet":"","Insert HTML":"Tambahaken HTML","No preview available":"","Paste raw HTML here...":"","Save changes":""})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.ko=e.ko||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"소스 편집","Empty snippet content":"빈 코드 조각 내용","HTML snippet":"HTML 코드 조각","Insert HTML":"HTML 삽입","No preview available":"미리보기를 이용할 수 없습니다","Paste raw HTML here...":"원시 HTML을 여기에 붙여넣으세요...","Save changes":"변경사항 저장"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(i){const t=i.lt=i.lt||{};t.dictionary=Object.assign(t.dictionary||{},{"Edit source":"Redaguoti šaltinį","Empty snippet content":"Tuščias iškarpos turinys","HTML snippet":"HTML iškarpa","Insert HTML":"Įkelti HTML","No preview available":"Nėra galimų peržiūrų","Paste raw HTML here...":"Įklijuokite neapdorotą HTML čia...","Save changes":"Išsaugoti pakeitimus"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const t=e.lv=e.lv||{};t.dictionary=Object.assign(t.dictionary||{},{"Edit source":"Labot pirmavotu","Empty snippet content":"Tukšs fragments","HTML snippet":"HTML fragments","Insert HTML":"Ievietot HTML","No preview available":"Priekšskatījums nav pieejams","Paste raw HTML here...":"Ievietojiet HTML šeit...","Save changes":"Saglabāt izmaiņas"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(n){const a=n.ms=n.ms||{};a.dictionary=Object.assign(a.dictionary||{},{"Edit source":"Sunting sumber","Empty snippet content":"Kosongkan kandungan potongan","HTML snippet":"Potongan HTML","Insert HTML":"Masukkan HTML","No preview available":"Tiada pratonton disediakan","Paste raw HTML here...":"Tampal HTML mentah disini...","Save changes":"Simpan perubahan"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.nl=e.nl||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Bron bewerken","Empty snippet content":"Geen content in snippet","HTML snippet":"HTML-snippet","Insert HTML":"HTML invoegen","No preview available":"Geen voorbeeld beschikbaar","Paste raw HTML here...":"Plak de ruwe HTML-code hier...","Save changes":"Aanpassingen bewaren"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(n){const e=n.no=n.no||{};e.dictionary=Object.assign(e.dictionary||{},{"Edit source":"Rediger kilde","Empty snippet content":"Tomt snuttinnhold","HTML snippet":"HTML-snutt","Insert HTML":"Legg inn HTML","No preview available":"Ingen forhåndsvisning tilgjengelig","Paste raw HTML here...":"Lim inn rå HTML her …","Save changes":"Lagre endringer"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(t){const n=t.pl=t.pl||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Edytuj źródło","Empty snippet content":"Brak kodu","HTML snippet":"Kod HTML","Insert HTML":"Wstaw kod HTML","No preview available":"Podgląd nie jest dostępny","Paste raw HTML here...":"Wstaw tutaj czysty kod HTML...","Save changes":"Zapisz zmiany"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const i=e["pt-br"]=e["pt-br"]||{};i.dictionary=Object.assign(i.dictionary||{},{"Edit source":"Editar código","Empty snippet content":"Trecho sem conteúdo","HTML snippet":"Trecho HTML","Insert HTML":"Inserir HTML","No preview available":"Nenhuma visualização disponível","Paste raw HTML here...":"Cole o HTML puro aqui","Save changes":"Salvar alterações"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const a=e.pt=e.pt||{};a.dictionary=Object.assign(a.dictionary||{},{"Edit source":"Editar fonte","Empty snippet content":"Conteúdo de fragmento vazio","HTML snippet":"Fragmento de HTML","Insert HTML":"Inserir HTML","No preview available":"Pré-visualização indisponível","Paste raw HTML here...":"Colar aqui HTML em bruto...","Save changes":"Guardar alterações"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(i){const e=i.ro=i.ro||{};e.dictionary=Object.assign(e.dictionary||{},{"Edit source":"Editează sursa","Empty snippet content":"Golește conținutul fragmentului","HTML snippet":"Fragment HTML","Insert HTML":"Inserează HTML","No preview available":"Previzualizare indisponibilă","Paste raw HTML here...":"Inserați aici HTML brut... ","Save changes":"Salvează schimbările"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.ru=e.ru||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Изменить код","Empty snippet content":"Нет контента","HTML snippet":"HTML сниппет","Insert HTML":"Вставить HTML","No preview available":"Предпросмотр недоступен","Paste raw HTML here...":"Вставьте HTML код сюда...","Save changes":"Сохранить изменения"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(i){const e=i.sk=i.sk||{};e.dictionary=Object.assign(e.dictionary||{},{"Edit source":"Upraviť zdroj","Empty snippet content":"Prázdny obsah kódu","HTML snippet":"Kód HTML","Insert HTML":"Vložiť kód HTML","No preview available":"Náhľad nie je k dispozícii","Paste raw HTML here...":"Sem vložte kód HTML...","Save changes":"Uložiť zmeny"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const i=e.sl=e.sl||{};i.dictionary=Object.assign(i.dictionary||{},{"Edit source":"Uredi izvorno kodo","Empty snippet content":"","HTML snippet":"HTML izsek","Insert HTML":"Vstavi HTML","No preview available":"","Paste raw HTML here...":"Prilepi HTML kodo ...","Save changes":"Shrani spremembe"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e["sr-latn"]=e["sr-latn"]||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Uredi izvor","Empty snippet content":"Sadržaj praznog isečka","HTML snippet":"HTML deo","Insert HTML":"Umetni HTML","No preview available":"Prikaz nije dostupan","Paste raw HTML here...":"Ovde nalepite HTML ...","Save changes":"Sačuvaj promene"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.sr=e.sr||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Уреди извор","Empty snippet content":"Садрћај празног исечка","HTML snippet":"ХТМЛ део","Insert HTML":"Уметни ХТМЛ","No preview available":"Приказ није доступан","Paste raw HTML here...":"Овде налепите ХТМЛ","Save changes":"Сачувај измене"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(n){const i=n.sv=n.sv||{};i.dictionary=Object.assign(i.dictionary||{},{"Edit source":"Redigera källa","Empty snippet content":"Töm snuttinnehåll","HTML snippet":"HTML-kodsnutt","Insert HTML":"Infoga HTML","No preview available":"Ingen förhandsvisning tillgänglig","Paste raw HTML here...":"Klistra in rå HTML här ...","Save changes":"Spara ändringar"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(t){const e=t.th=t.th||{};e.dictionary=Object.assign(e.dictionary||{},{"Edit source":"แก้ไขซอร์ส","Empty snippet content":"เนื้อหาส่วนย่อยว่างเปล่า","HTML snippet":"ส่วนย่อยของ HTML","Insert HTML":"แทรก HTML","No preview available":"ไม่มีภาพตัวอย่างให้ใช้งาน","Paste raw HTML here...":"วาง HTML ดิบที่นี่...","Save changes":"บันทึกการเปลี่ยนแปลง"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const i=e.tr=e.tr||{};i.dictionary=Object.assign(i.dictionary||{},{"Edit source":"Kaynağı düzenle","Empty snippet content":"Snippet içeriği boş","HTML snippet":"HTML snippet'i","Insert HTML":"HTML ekle","No preview available":"Önizleme yok","Paste raw HTML here...":"Ham HTML'yi buraya yapıştırın...","Save changes":"Değişiklikleri kaydet"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.uk=e.uk||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Редагувати джерело","Empty snippet content":"Порожній вміст","HTML snippet":"Фрагмент HTML","Insert HTML":"Вставити HTML","No preview available":"Попередній перегляд недоступний","Paste raw HTML here...":"Вставте сюди необроблений HTML...","Save changes":"Зберегти зміни"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.ur=e.ur||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"ماخذ کی تدوین","Empty snippet content":"مندرجاتِ تراشہ خالی ہیں","HTML snippet":"ایچ ٹی ایم ایل تراشہ","Insert HTML":"ایچ ٹی ایم ایل نصب کریں","No preview available":"نمائش دستیاب نہیں","Paste raw HTML here...":"خام ایچ ٹی ایم ایل یہاں چسپاں کریں۔۔۔","Save changes":"تبدیلیاں محفوظ کریں"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(i){const n=i.uz=i.uz||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"Kodni o'zgartirish","Empty snippet content":"","HTML snippet":"HTML snippet","Insert HTML":"HTML kiritish","No preview available":"","Paste raw HTML here...":"HTML kodini shu yerga joylashtiring...","Save changes":"O'zgarishlarni saqlash"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(n){const i=n.vi=n.vi||{};i.dictionary=Object.assign(i.dictionary||{},{"Edit source":"Sửa nguồn","Empty snippet content":"Nội dung đoạn mã trống","HTML snippet":"Mẫu HTML","Insert HTML":"Chèn HTML","No preview available":"Không có sẵn bản xem trước","Paste raw HTML here...":"Dán mã HTML nguyên bản tại đây...","Save changes":"Lưu thay đổi"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(n){const e=n["zh-cn"]=n["zh-cn"]||{};e.dictionary=Object.assign(e.dictionary||{},{"Edit source":"编辑源代码","Empty snippet content":"空片段内容","HTML snippet":"HTML 代码片段","Insert HTML":"插入 HTML","No preview available":"预览不可用","Paste raw HTML here...":"在这里粘贴 HTML 源代码","Save changes":"保存更改"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e){const n=e.zh=e.zh||{};n.dictionary=Object.assign(n.dictionary||{},{"Edit source":"編輯HTML","Empty snippet content":"HTML標籤中無內容","HTML snippet":"HTML標籤","Insert HTML":"輸入HTML","No preview available":"無法顯示預覽","Paste raw HTML here...":"在此貼上純HTML","Save changes":"儲存變更"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
{
|
|
2
|
+
"plugins": [
|
|
3
|
+
{
|
|
4
|
+
"name": "HTML embed",
|
|
5
|
+
"className": "HtmlEmbed",
|
|
6
|
+
"description": "Allows for embedding an arbitrary HTML snippet in the editor.",
|
|
7
|
+
"docs": "features/html/html-embed.html",
|
|
8
|
+
"path": "src/htmlembed.js",
|
|
9
|
+
"uiComponents": [
|
|
10
|
+
{
|
|
11
|
+
"type": "Button",
|
|
12
|
+
"name": "htmlEmbed",
|
|
13
|
+
"iconPath": "@ckeditor/ckeditor5-core/theme/icons/html.svg"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"htmlOutput": [
|
|
17
|
+
{
|
|
18
|
+
"elements": "div",
|
|
19
|
+
"classes": "raw-html-embed"
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"elements": "*",
|
|
23
|
+
"classes": "*",
|
|
24
|
+
"styles": "*",
|
|
25
|
+
"isAlternative": true,
|
|
26
|
+
"_comment": "The plugin can output any arbitrary HTML provided by the user. That HTML is always wrapped with a `<div class=\"raw-html-embed\">` element."
|
|
27
|
+
}
|
|
28
|
+
]
|
|
29
|
+
}
|
|
30
|
+
]
|
|
31
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
7
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
8
|
+
*/
|
|
9
|
+
import type { HtmlEmbed, HtmlEmbedCommand, HtmlEmbedConfig, HtmlEmbedEditing, HtmlEmbedUI } from './index.js';
|
|
10
|
+
declare module '@ckeditor/ckeditor5-core' {
|
|
11
|
+
interface EditorConfig {
|
|
12
|
+
/**
|
|
13
|
+
* The configuration of the HTML embed feature. Introduced by the {@link module:html-embed/htmlembedediting~HtmlEmbedEditing}
|
|
14
|
+
* feature.
|
|
15
|
+
*
|
|
16
|
+
* Read more in {@link module:core/editor/editorconfig~EditorConfig all editor options}.
|
|
17
|
+
*/
|
|
18
|
+
htmlEmbed?: HtmlEmbedConfig;
|
|
19
|
+
}
|
|
20
|
+
interface PluginsMap {
|
|
21
|
+
[HtmlEmbed.pluginName]: HtmlEmbed;
|
|
22
|
+
[HtmlEmbedEditing.pluginName]: HtmlEmbedEditing;
|
|
23
|
+
[HtmlEmbedUI.pluginName]: HtmlEmbedUI;
|
|
24
|
+
}
|
|
25
|
+
interface CommandsMap {
|
|
26
|
+
htmlEmbed: HtmlEmbedCommand;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
7
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* @module html-embed/htmlembed
|
|
11
|
+
*/
|
|
12
|
+
import { Plugin } from 'ckeditor5/src/core.js';
|
|
13
|
+
import { Widget } from 'ckeditor5/src/widget.js';
|
|
14
|
+
import HtmlEmbedEditing from './htmlembedediting.js';
|
|
15
|
+
import HtmlEmbedUI from './htmlembedui.js';
|
|
16
|
+
/**
|
|
17
|
+
* The HTML embed feature.
|
|
18
|
+
*
|
|
19
|
+
* It allows inserting HTML snippets directly into the editor.
|
|
20
|
+
*
|
|
21
|
+
* For a detailed overview, check the {@glink features/html/html-embed HTML embed feature} documentation.
|
|
22
|
+
*/
|
|
23
|
+
export default class HtmlEmbed extends Plugin {
|
|
24
|
+
/**
|
|
25
|
+
* @inheritDoc
|
|
26
|
+
*/
|
|
27
|
+
static get requires(): readonly [typeof HtmlEmbedEditing, typeof HtmlEmbedUI, typeof Widget];
|
|
28
|
+
/**
|
|
29
|
+
* @inheritDoc
|
|
30
|
+
*/
|
|
31
|
+
static get pluginName(): "HtmlEmbed";
|
|
32
|
+
/**
|
|
33
|
+
* @inheritDoc
|
|
34
|
+
*/
|
|
35
|
+
static get isOfficialPlugin(): true;
|
|
36
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
7
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
8
|
+
*/
|
|
9
|
+
import { Command } from 'ckeditor5/src/core.js';
|
|
10
|
+
/**
|
|
11
|
+
* The insert HTML embed element command.
|
|
12
|
+
*
|
|
13
|
+
* The command is registered by {@link module:html-embed/htmlembedediting~HtmlEmbedEditing} as `'htmlEmbed'`.
|
|
14
|
+
*
|
|
15
|
+
* To insert an empty HTML embed element at the current selection, execute the command:
|
|
16
|
+
*
|
|
17
|
+
* ```ts
|
|
18
|
+
* editor.execute( 'htmlEmbed' );
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* You can specify the initial content of a new HTML embed in the argument:
|
|
22
|
+
*
|
|
23
|
+
* ```ts
|
|
24
|
+
* editor.execute( 'htmlEmbed', '<b>Initial content.</b>' );
|
|
25
|
+
* ```
|
|
26
|
+
*
|
|
27
|
+
* To update the content of the HTML embed, select it in the model and pass the content in the argument:
|
|
28
|
+
*
|
|
29
|
+
* ```ts
|
|
30
|
+
* editor.execute( 'htmlEmbed', '<b>New content of an existing embed.</b>' );
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
export default class HtmlEmbedCommand extends Command {
|
|
34
|
+
/**
|
|
35
|
+
* @inheritDoc
|
|
36
|
+
*/
|
|
37
|
+
refresh(): void;
|
|
38
|
+
/**
|
|
39
|
+
* Executes the command, which either:
|
|
40
|
+
*
|
|
41
|
+
* * creates and inserts a new HTML embed element if none was selected,
|
|
42
|
+
* * updates the content of the HTML embed if one was selected.
|
|
43
|
+
*
|
|
44
|
+
* @fires execute
|
|
45
|
+
* @param value When passed, the value (content) will be set on a new embed or a selected one.
|
|
46
|
+
*/
|
|
47
|
+
execute(value?: string): void;
|
|
48
|
+
}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
7
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* @module html-embed/htmlembedconfig
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* The configuration of the HTML embed feature.
|
|
14
|
+
*
|
|
15
|
+
* ```ts
|
|
16
|
+
* ClassicEditor
|
|
17
|
+
* .create( editorElement, {
|
|
18
|
+
* htmlEmbed: ... // HTML embed feature options.
|
|
19
|
+
* } )
|
|
20
|
+
* .then( ... )
|
|
21
|
+
* .catch( ... );
|
|
22
|
+
* ```
|
|
23
|
+
*
|
|
24
|
+
* See {@link module:core/editor/editorconfig~EditorConfig all editor options}.
|
|
25
|
+
*/
|
|
26
|
+
export interface HtmlEmbedConfig {
|
|
27
|
+
/**
|
|
28
|
+
* Whether the feature should render previews of the embedded HTML.
|
|
29
|
+
*
|
|
30
|
+
* When set to `true`, the feature will produce a preview of the inserted HTML based on a sanitized
|
|
31
|
+
* version of the HTML provided by the user.
|
|
32
|
+
*
|
|
33
|
+
* The function responsible for sanitizing the HTML needs to be specified in
|
|
34
|
+
* {@link module:html-embed/htmlembedconfig~HtmlEmbedConfig#sanitizeHtml `config.htmlEmbed.sanitizeHtml()`}.
|
|
35
|
+
*
|
|
36
|
+
* Read more about the security aspect of this feature in the {@glink features/html/html-embed#security "Security"} section of
|
|
37
|
+
* the {@glink features/html/html-embed HTML embed} feature guide.
|
|
38
|
+
*/
|
|
39
|
+
showPreviews?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Callback used to sanitize the HTML provided by the user in HTML embed widget when it is previewed inside the editor.
|
|
42
|
+
*
|
|
43
|
+
* We strongly recommend overwriting the default function to avoid XSS vulnerabilities.
|
|
44
|
+
*
|
|
45
|
+
* Read more about the security aspect of this feature in the {@glink features/html/html-embed#security "Security"} section of
|
|
46
|
+
* the {@glink features/html/html-embed HTML embed} feature guide.
|
|
47
|
+
*
|
|
48
|
+
* The function receives the input HTML (as a string), and should return an object
|
|
49
|
+
* that matches the {@link module:html-embed/htmlembedconfig~HtmlEmbedSanitizeOutput} interface.
|
|
50
|
+
*
|
|
51
|
+
* ```ts
|
|
52
|
+
* ClassicEditor
|
|
53
|
+
* .create( editorElement, {
|
|
54
|
+
* htmlEmbed: {
|
|
55
|
+
* showPreviews: true,
|
|
56
|
+
* sanitizeHtml( inputHtml ) {
|
|
57
|
+
* // Strip unsafe elements and attributes, e.g.:
|
|
58
|
+
* // the `<script>` elements and `on*` attributes.
|
|
59
|
+
* const outputHtml = sanitize( inputHtml );
|
|
60
|
+
*
|
|
61
|
+
* return {
|
|
62
|
+
* html: outputHtml,
|
|
63
|
+
* // true or false depending on whether the sanitizer stripped anything.
|
|
64
|
+
* hasChanged: ...
|
|
65
|
+
* };
|
|
66
|
+
* },
|
|
67
|
+
* }
|
|
68
|
+
* } )
|
|
69
|
+
* .then( ... )
|
|
70
|
+
* .catch( ... );
|
|
71
|
+
* ```
|
|
72
|
+
*
|
|
73
|
+
* **Note:** The function is used only when the feature
|
|
74
|
+
* {@link module:html-embed/htmlembedconfig~HtmlEmbedConfig#showPreviews is configured to render previews}.
|
|
75
|
+
*/
|
|
76
|
+
sanitizeHtml?: (html: string) => HtmlEmbedSanitizeOutput;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* An object returned by the {@link module:html-embed/htmlembedconfig~HtmlEmbedConfig#sanitizeHtml} function.
|
|
80
|
+
*/
|
|
81
|
+
export interface HtmlEmbedSanitizeOutput {
|
|
82
|
+
/**
|
|
83
|
+
* An output (safe) HTML that will be inserted into the {@glink framework/architecture/editing-engine editing view}.
|
|
84
|
+
*/
|
|
85
|
+
html: string;
|
|
86
|
+
/**
|
|
87
|
+
* A flag that indicates whether the output HTML is different than the input value.
|
|
88
|
+
*/
|
|
89
|
+
hasChanged: boolean;
|
|
90
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @license Copyright (c) 2003-2024, CKSource Holding sp. z o.o. All rights reserved.
|
|
7
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* @module html-embed/htmlembedediting
|
|
11
|
+
*/
|
|
12
|
+
import { Plugin, type Editor } from 'ckeditor5/src/core.js';
|
|
13
|
+
import '../theme/htmlembed.css';
|
|
14
|
+
/**
|
|
15
|
+
* The HTML embed editing feature.
|
|
16
|
+
*/
|
|
17
|
+
export default class HtmlEmbedEditing extends Plugin {
|
|
18
|
+
/**
|
|
19
|
+
* Keeps references to {@link module:ui/button/buttonview~ButtonView edit, save, and cancel} button instances created for
|
|
20
|
+
* each widget so they can be destroyed if they are no longer in DOM after the editing view was re-rendered.
|
|
21
|
+
*/
|
|
22
|
+
private _widgetButtonViewReferences;
|
|
23
|
+
/**
|
|
24
|
+
* @inheritDoc
|
|
25
|
+
*/
|
|
26
|
+
static get pluginName(): "HtmlEmbedEditing";
|
|
27
|
+
/**
|
|
28
|
+
* @inheritDoc
|
|
29
|
+
*/
|
|
30
|
+
static get isOfficialPlugin(): true;
|
|
31
|
+
/**
|
|
32
|
+
* @inheritDoc
|
|
33
|
+
*/
|
|
34
|
+
constructor(editor: Editor);
|
|
35
|
+
/**
|
|
36
|
+
* @inheritDoc
|
|
37
|
+
*/
|
|
38
|
+
init(): void;
|
|
39
|
+
/**
|
|
40
|
+
* Prepares converters for the feature.
|
|
41
|
+
*/
|
|
42
|
+
private _setupConversion;
|
|
43
|
+
}
|
|
44
|
+
export interface RawHtmlApi {
|
|
45
|
+
makeEditable(): void;
|
|
46
|
+
save(newValue: string): void;
|
|
47
|
+
cancel(): void;
|
|
48
|
+
}
|