@ckeditor/ckeditor5-template 40.0.0 → 40.1.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/src/template.d.ts CHANGED
@@ -1,115 +1,115 @@
1
- /**
2
- * @license Copyright (c) 2003-2023, 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
- * @module template/template
7
- * @publicApi
8
- */
9
- import { Plugin } from 'ckeditor5/src/core';
10
- import TemplateEditing from './templateediting';
11
- import TemplateUI from './templateui';
12
- /**
13
- * The template feature.
14
- *
15
- * For a detailed overview, check the {@glink features/template Content templates} feature guide.
16
- */
17
- export default class Template extends Plugin {
18
- /**
19
- * @inheritDoc
20
- */
21
- static get requires(): readonly [typeof TemplateEditing, typeof TemplateUI];
22
- /**
23
- * @inheritDoc
24
- */
25
- static get pluginName(): "Template";
26
- }
27
- /**
28
- * The configuration of the template feature.
29
- *
30
- * ```ts
31
- * ClassicEditor
32
- * .create( {
33
- * template: ... // Template feature configuration.
34
- * } )
35
- * .then( ... )
36
- * .catch( ... );
37
- *```
38
- * See {@link module:core/editor/editorconfig~EditorConfig all editor options}.
39
- */
40
- export interface TemplateConfig {
41
- /**
42
- * A list of all template definitions to be displayed in the `'insertTemplate'` UI dropdown.
43
- *
44
- * An example configuration:
45
- *
46
- * ```json
47
- * {
48
- * template: {
49
- * definitions: [
50
- * {
51
- * title: 'Issue acknowledgement (plain text)',
52
- * data: 'Dear customer, thank you for your report! The issue is currently being worked on by our development team.'
53
- * },
54
- * {
55
- * title: 'Signature (multi-line)',
56
- * data: '<p><b>Jane Doe</b></p><p>Marketing Specialist at <a href="https://example.com>Example.com</a></p>',
57
- * description: 'Author signature with the link to the website.'
58
- * },
59
- * {
60
- * title: 'Example table',
61
- * data: '<table><tr><td>Cell #1</td><td></td></tr><tr><td></td><td>Cell #2</td></tr></table>',
62
- * icon: '<svg viewBox="0 0 45 45" xmlns="http://www.w3.org/2000/svg">...</svg>',
63
- * description: 'This template inserts a table.'
64
- * },
65
- * {
66
- * title: 'Insert userAgent data',
67
- * data: navigator.userAgent
68
- * },
69
- * {
70
- * title: 'Insert translate to English link (function)',
71
- * data: () => '<a href="' + location.href + '/en" title="Translate to English">Translate to English</a>'
72
- * },
73
- * // ...
74
- * ]
75
- * }
76
- * }
77
- * ```
78
- */
79
- definitions?: Array<TemplateDefinition>;
80
- }
81
- /**
82
- * An object describing a single template definition.
83
- *
84
- * ```json
85
- * {
86
- * // Mandatory fields:
87
- * title: 'Example template',
88
- * data: '<table><tr><td>Cell #1</td><td></td></tr><tr><td></td><td>Cell #2</td></tr></table>',
89
- *
90
- * // Optional configuration:
91
- * icon: '<svg viewBox="0 0 45 45" xmlns="http://www.w3.org/2000/svg">...</svg>',
92
- * description: 'This template inserts a table.'
93
- * }
94
- * ```
95
- */
96
- export type TemplateDefinition = {
97
- /**
98
- * The title of the template.
99
- */
100
- title: string;
101
- /**
102
- * An HTML string to be inserted into the document or a callback function that returns an HTML string
103
- * to be inserted into the document when the template is selected.
104
- */
105
- data: () => string | string;
106
- /**
107
- * An optional SVG string representing the icon of the template. The default size of the icon is 45x45 pixels.
108
- * Be sure to set the correct `viewBox` attribute in the icon source. If not provided, a generic icon will be used instead.
109
- */
110
- icon?: string;
111
- /**
112
- * An optional long description of the template presented to the users.
113
- */
114
- description?: string;
115
- };
1
+ /**
2
+ * @license Copyright (c) 2003-2023, 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
+ * @module template/template
7
+ * @publicApi
8
+ */
9
+ import { Plugin } from 'ckeditor5/src/core';
10
+ import TemplateEditing from './templateediting';
11
+ import TemplateUI from './templateui';
12
+ /**
13
+ * The template feature.
14
+ *
15
+ * For a detailed overview, check the {@glink features/template Content templates} feature guide.
16
+ */
17
+ export default class Template extends Plugin {
18
+ /**
19
+ * @inheritDoc
20
+ */
21
+ static get requires(): readonly [typeof TemplateEditing, typeof TemplateUI];
22
+ /**
23
+ * @inheritDoc
24
+ */
25
+ static get pluginName(): "Template";
26
+ }
27
+ /**
28
+ * The configuration of the template feature.
29
+ *
30
+ * ```ts
31
+ * ClassicEditor
32
+ * .create( {
33
+ * template: ... // Template feature configuration.
34
+ * } )
35
+ * .then( ... )
36
+ * .catch( ... );
37
+ *```
38
+ * See {@link module:core/editor/editorconfig~EditorConfig all editor options}.
39
+ */
40
+ export interface TemplateConfig {
41
+ /**
42
+ * A list of all template definitions to be displayed in the `'insertTemplate'` UI dropdown.
43
+ *
44
+ * An example configuration:
45
+ *
46
+ * ```json
47
+ * {
48
+ * template: {
49
+ * definitions: [
50
+ * {
51
+ * title: 'Issue acknowledgement (plain text)',
52
+ * data: 'Dear customer, thank you for your report! The issue is currently being worked on by our development team.'
53
+ * },
54
+ * {
55
+ * title: 'Signature (multi-line)',
56
+ * data: '<p><b>Jane Doe</b></p><p>Marketing Specialist at <a href="https://example.com>Example.com</a></p>',
57
+ * description: 'Author signature with the link to the website.'
58
+ * },
59
+ * {
60
+ * title: 'Example table',
61
+ * data: '<table><tr><td>Cell #1</td><td></td></tr><tr><td></td><td>Cell #2</td></tr></table>',
62
+ * icon: '<svg viewBox="0 0 45 45" xmlns="http://www.w3.org/2000/svg">...</svg>',
63
+ * description: 'This template inserts a table.'
64
+ * },
65
+ * {
66
+ * title: 'Insert userAgent data',
67
+ * data: navigator.userAgent
68
+ * },
69
+ * {
70
+ * title: 'Insert translate to English link (function)',
71
+ * data: () => '<a href="' + location.href + '/en" title="Translate to English">Translate to English</a>'
72
+ * },
73
+ * // ...
74
+ * ]
75
+ * }
76
+ * }
77
+ * ```
78
+ */
79
+ definitions?: Array<TemplateDefinition>;
80
+ }
81
+ /**
82
+ * An object describing a single template definition.
83
+ *
84
+ * ```json
85
+ * {
86
+ * // Mandatory fields:
87
+ * title: 'Example template',
88
+ * data: '<table><tr><td>Cell #1</td><td></td></tr><tr><td></td><td>Cell #2</td></tr></table>',
89
+ *
90
+ * // Optional configuration:
91
+ * icon: '<svg viewBox="0 0 45 45" xmlns="http://www.w3.org/2000/svg">...</svg>',
92
+ * description: 'This template inserts a table.'
93
+ * }
94
+ * ```
95
+ */
96
+ export type TemplateDefinition = {
97
+ /**
98
+ * The title of the template.
99
+ */
100
+ title: string;
101
+ /**
102
+ * An HTML string to be inserted into the document or a callback function that returns an HTML string
103
+ * to be inserted into the document when the template is selected.
104
+ */
105
+ data: () => string | string;
106
+ /**
107
+ * An optional SVG string representing the icon of the template. The default size of the icon is 45x45 pixels.
108
+ * Be sure to set the correct `viewBox` attribute in the icon source. If not provided, a generic icon will be used instead.
109
+ */
110
+ icon?: string;
111
+ /**
112
+ * An optional long description of the template presented to the users.
113
+ */
114
+ description?: string;
115
+ };
package/src/template.js CHANGED
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- var _0x4a65=['requires'];(function(_0xe4c03b,_0x4a6589){var _0x34132f=function(_0x29b786){while(--_0x29b786){_0xe4c03b['push'](_0xe4c03b['shift']());}};_0x34132f(++_0x4a6589);}(_0x4a65,0xa0));var _0x3413=function(_0xe4c03b,_0x4a6589){_0xe4c03b=_0xe4c03b-0x0;var _0x34132f=_0x4a65[_0xe4c03b];return _0x34132f;};import{Plugin as _0x293c35}from'ckeditor5/src/core';import _0x5d5ad1 from'./templateediting';import _0x12c507 from'./templateui';export default class o extends _0x293c35{static get[_0x3413('0x0')](){return[_0x5d5ad1,_0x12c507];}static get['pluginName'](){return'Template';}}
23
+ var _0x5cab=['requires'];(function(_0xd8b35d,_0x5cabb0){var _0x3885be=function(_0x501db0){while(--_0x501db0){_0xd8b35d['push'](_0xd8b35d['shift']());}};_0x3885be(++_0x5cabb0);}(_0x5cab,0x9c));var _0x3885=function(_0xd8b35d,_0x5cabb0){_0xd8b35d=_0xd8b35d-0x0;var _0x3885be=_0x5cab[_0xd8b35d];return _0x3885be;};import{Plugin as _0x401790}from'ckeditor5/src/core';import _0x7eba53 from'./templateediting';import _0x4b44b5 from'./templateui';export default class o extends _0x401790{static get[_0x3885('0x0')](){return[_0x7eba53,_0x4b44b5];}static get['pluginName'](){return'Template';}}
@@ -1,23 +1,23 @@
1
- /**
2
- * @license Copyright (c) 2003-2023, 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
- * @module template/templatecommand
7
- * @publicApi
8
- */
9
- import { Command } from 'ckeditor5/src/core';
10
- /**
11
- * The template command.
12
- *
13
- * Inserts a template into the editor content.
14
- */
15
- export default class TemplateCommand extends Command {
16
- /**
17
- * Inserts the template data at the position of the selection.
18
- *
19
- * @fires execute
20
- * @param templateData Template data should be a raw HTML string or a function that returns one.
21
- */
22
- execute(templateData: string | Function): void;
23
- }
1
+ /**
2
+ * @license Copyright (c) 2003-2023, 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
+ * @module template/templatecommand
7
+ * @publicApi
8
+ */
9
+ import { Command } from 'ckeditor5/src/core';
10
+ /**
11
+ * The template command.
12
+ *
13
+ * Inserts a template into the editor content.
14
+ */
15
+ export default class TemplateCommand extends Command {
16
+ /**
17
+ * Inserts the template data at the position of the selection.
18
+ *
19
+ * @fires execute
20
+ * @param templateData Template data should be a raw HTML string or a function that returns one.
21
+ */
22
+ execute(templateData: string | Function): void;
23
+ }
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- const _0x5abc=['htmlProcessor','toModel','function','insertContent','editor','string','change','data','toView'];(function(_0x38e5ef,_0x5abcea){const _0x19d4d3=function(_0x45fabb){while(--_0x45fabb){_0x38e5ef['push'](_0x38e5ef['shift']());}};_0x19d4d3(++_0x5abcea);}(_0x5abc,0x153));const _0x19d4=function(_0x38e5ef,_0x5abcea){_0x38e5ef=_0x38e5ef-0x0;let _0x19d4d3=_0x5abc[_0x38e5ef];return _0x19d4d3;};import{Command as _0x11ce19}from'ckeditor5/src/core';export default class c extends _0x11ce19{['execute'](_0x44e6e7){const {model:_0x2c19e0}=this['editor'];let _0x468ad;switch(typeof _0x44e6e7){case _0x19d4('0x8'):_0x468ad=_0x44e6e7;break;case _0x19d4('0x5'):_0x468ad=_0x44e6e7();}_0x19d4('0x8')==typeof _0x468ad&&_0x2c19e0[_0x19d4('0x0')](()=>{const _0x3dc5ab=this[_0x19d4('0x7')][_0x19d4('0x1')][_0x19d4('0x3')][_0x19d4('0x2')](_0x468ad),_0x305cd1=this[_0x19d4('0x7')][_0x19d4('0x1')][_0x19d4('0x4')](_0x3dc5ab);_0x2c19e0[_0x19d4('0x6')](_0x305cd1);});}}
23
+ const _0x3449=['string','data','insertContent','htmlProcessor','editor','toModel','execute','function'];(function(_0x667df9,_0x3449d0){const _0xd40871=function(_0x5634ab){while(--_0x5634ab){_0x667df9['push'](_0x667df9['shift']());}};_0xd40871(++_0x3449d0);}(_0x3449,0x7e));const _0xd408=function(_0x667df9,_0x3449d0){_0x667df9=_0x667df9-0x0;let _0xd40871=_0x3449[_0x667df9];return _0xd40871;};import{Command as _0x4bad7a}from'ckeditor5/src/core';export default class c extends _0x4bad7a{[_0xd408('0x0')](_0x297457){const {model:_0x4ee629}=this[_0xd408('0x6')];let _0xd8faf9;switch(typeof _0x297457){case _0xd408('0x2'):_0xd8faf9=_0x297457;break;case _0xd408('0x1'):_0xd8faf9=_0x297457();}'string'==typeof _0xd8faf9&&_0x4ee629['change'](()=>{const _0x455152=this[_0xd408('0x6')][_0xd408('0x3')][_0xd408('0x5')]['toView'](_0xd8faf9),_0xa983ef=this[_0xd408('0x6')]['data'][_0xd408('0x7')](_0x455152);_0x4ee629[_0xd408('0x4')](_0xa983ef);});}}
@@ -1,30 +1,30 @@
1
- /**
2
- * @license Copyright (c) 2003-2023, 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
- * @module template/templateediting
7
- */
8
- import { Plugin, type Editor } from 'ckeditor5/src/core';
9
- /**
10
- * The template editing plugin.
11
- */
12
- export default class TemplateEditing extends Plugin {
13
- licenseKey: string;
14
- /**
15
- * @inheritDoc
16
- */
17
- static get pluginName(): "TemplateEditing";
18
- /**
19
- * @inheritDoc
20
- */
21
- constructor(editor: Editor);
22
- /**
23
- * @inheritDoc
24
- */
25
- init(): void;
26
- /**
27
- * @inheritDoc
28
- */
29
- destroy(): void;
30
- }
1
+ /**
2
+ * @license Copyright (c) 2003-2023, 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
+ * @module template/templateediting
7
+ */
8
+ import { Plugin, type Editor } from 'ckeditor5/src/core';
9
+ /**
10
+ * The template editing plugin.
11
+ */
12
+ export default class TemplateEditing extends Plugin {
13
+ licenseKey: string;
14
+ /**
15
+ * @inheritDoc
16
+ */
17
+ static get pluginName(): "TemplateEditing";
18
+ /**
19
+ * @inheritDoc
20
+ */
21
+ constructor(editor: Editor);
22
+ /**
23
+ * @inheritDoc
24
+ */
25
+ init(): void;
26
+ /**
27
+ * @inheritDoc
28
+ */
29
+ destroy(): void;
30
+ }
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- const _0x220a=['licenseKey','You\x20are\x20using\x20the\x20trial\x20version\x20of\x20CKEditor\x205\x20template\x20plugin\x20with\x20limited\x20usage.\x20Make\x20sure\x20you\x20will\x20not\x20use\x20it\x20in\x20the\x20production\x20environment.','get','template-invalid-license-key','add','init','templateLicenseKeyTrial','commands','templateLicenseKeyValid','TemplateEditing','destroy','info','insertTemplate','_licenseKeyCheckInterval','templateLicenseKeyTrialLimit:operations','editor'];(function(_0x56efe1,_0x220a07){const _0x53c3f9=function(_0xf21d09){while(--_0xf21d09){_0x56efe1['push'](_0x56efe1['shift']());}};_0x53c3f9(++_0x220a07);}(_0x220a,0x1d1));const _0x53c3=function(_0x56efe1,_0x220a07){_0x56efe1=_0x56efe1-0x0;let _0x53c3f9=_0x220a[_0x56efe1];return _0x53c3f9;};import{Plugin as _0xce8308}from'ckeditor5/src/core';import{CKEditorError as _0x985e1b}from'ckeditor5/src/utils';import _0x44b47a from'./templatecommand';export default class i extends _0xce8308{static get['pluginName'](){return _0x53c3('0x8');}constructor(_0x34ce13){super(_0x34ce13),this[_0x53c3('0xc')]=null;}[_0x53c3('0x4')](){const {editor:_0x5b8c76}=this;_0x5b8c76[_0x53c3('0x6')][_0x53c3('0x3')](_0x53c3('0xb'),new _0x44b47a(_0x5b8c76)),this[_0x53c3('0xf')]=_0x5b8c76['config'][_0x53c3('0x1')](_0x53c3('0xf'));const _0x3e50c7=this[_0x53c3('0xe')];this[_0x53c3('0xc')]=setInterval(()=>{let _0x5d2a74;for(const _0x20b8ff in _0x3e50c7){const _0x32d5f7=_0x20b8ff,_0x542ca3=_0x3e50c7[_0x32d5f7];if(_0x53c3('0x5')===_0x542ca3||'templateLicenseKeyInvalid'===_0x542ca3||_0x53c3('0x7')===_0x542ca3||'templateLicenseKeyTrialLimit:operations'===_0x542ca3){delete _0x3e50c7[_0x32d5f7],_0x5d2a74=_0x542ca3;break;}}if('templateLicenseKeyInvalid'===_0x5d2a74)throw clearInterval(this[_0x53c3('0xc')]),new _0x985e1b(_0x53c3('0x2'),null);if(_0x53c3('0x5')===_0x5d2a74&&console[_0x53c3('0xa')](_0x53c3('0x0')),_0x53c3('0xd')===_0x5d2a74)throw clearInterval(this[_0x53c3('0xc')]),new _0x985e1b('template-trial-license-key-reached-limit-changes',null);_0x53c3('0x7')===_0x5d2a74&&clearInterval(this[_0x53c3('0xc')]);},0x3e8);}[_0x53c3('0x9')](){this[_0x53c3('0xc')]&&clearInterval(this['_licenseKeyCheckInterval']);}}
23
+ const _0x1454=['destroy','init','get','info','template-trial-license-key-reached-limit-changes','editor','templateLicenseKeyTrialLimit:operations','template-invalid-license-key','_licenseKeyCheckInterval','add','templateLicenseKeyTrial','commands','templateLicenseKeyValid','pluginName','templateLicenseKeyInvalid','You\x20are\x20using\x20the\x20trial\x20version\x20of\x20CKEditor\x205\x20template\x20plugin\x20with\x20limited\x20usage.\x20Make\x20sure\x20you\x20will\x20not\x20use\x20it\x20in\x20the\x20production\x20environment.'];(function(_0x160df5,_0x1454ed){const _0x34077a=function(_0xeb8b72){while(--_0xeb8b72){_0x160df5['push'](_0x160df5['shift']());}};_0x34077a(++_0x1454ed);}(_0x1454,0xc0));const _0x3407=function(_0x160df5,_0x1454ed){_0x160df5=_0x160df5-0x0;let _0x34077a=_0x1454[_0x160df5];return _0x34077a;};import{Plugin as _0x5ea20a}from'ckeditor5/src/core';import{CKEditorError as _0x4c674a}from'ckeditor5/src/utils';import _0x242fca from'./templatecommand';export default class i extends _0x5ea20a{static get[_0x3407('0xd')](){return'TemplateEditing';}constructor(_0x43a119){super(_0x43a119),this[_0x3407('0x8')]=null;}[_0x3407('0x1')](){const {editor:_0x2ba4fa}=this;_0x2ba4fa[_0x3407('0xb')][_0x3407('0x9')]('insertTemplate',new _0x242fca(_0x2ba4fa)),this['licenseKey']=_0x2ba4fa['config'][_0x3407('0x2')]('licenseKey');const _0x140fb7=this[_0x3407('0x5')];this['_licenseKeyCheckInterval']=setInterval(()=>{let _0x2e570c;for(const _0x2df951 in _0x140fb7){const _0x1fcc9e=_0x2df951,_0x1c309b=_0x140fb7[_0x1fcc9e];if(_0x3407('0xa')===_0x1c309b||'templateLicenseKeyInvalid'===_0x1c309b||'templateLicenseKeyValid'===_0x1c309b||_0x3407('0x6')===_0x1c309b){delete _0x140fb7[_0x1fcc9e],_0x2e570c=_0x1c309b;break;}}if(_0x3407('0xe')===_0x2e570c)throw clearInterval(this[_0x3407('0x8')]),new _0x4c674a(_0x3407('0x7'),null);if('templateLicenseKeyTrial'===_0x2e570c&&console[_0x3407('0x3')](_0x3407('0xf')),_0x3407('0x6')===_0x2e570c)throw clearInterval(this[_0x3407('0x8')]),new _0x4c674a(_0x3407('0x4'),null);_0x3407('0xc')===_0x2e570c&&clearInterval(this[_0x3407('0x8')]);},0x3e8);}[_0x3407('0x0')](){this[_0x3407('0x8')]&&clearInterval(this['_licenseKeyCheckInterval']);}}
@@ -1,29 +1,29 @@
1
- /**
2
- * @license Copyright (c) 2003-2023, 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
- * @module template/templateui
7
- */
8
- import { Plugin } from 'ckeditor5/src/core';
9
- import '../theme/template.css';
10
- /**
11
- * The UI plugin of the template feature.
12
- *
13
- * It registers the `'insertTemplate'` UI dropdown in the editor's {@link module:ui/componentfactory~ComponentFactory component factory}
14
- * that displays a list of templates and allows to insert them into the editor content.
15
- */
16
- export default class TemplateUI extends Plugin {
17
- /**
18
- * @inheritDoc
19
- */
20
- static get pluginName(): "TemplateUI";
21
- /**
22
- * @inheritDoc
23
- */
24
- init(): void;
25
- /**
26
- * @inheritDoc
27
- */
28
- afterInit(): void;
29
- }
1
+ /**
2
+ * @license Copyright (c) 2003-2023, 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
+ * @module template/templateui
7
+ */
8
+ import { Plugin } from 'ckeditor5/src/core';
9
+ import '../theme/template.css';
10
+ /**
11
+ * The UI plugin of the template feature.
12
+ *
13
+ * It registers the `'insertTemplate'` UI dropdown in the editor's {@link module:ui/componentfactory~ComponentFactory component factory}
14
+ * that displays a list of templates and allows to insert them into the editor content.
15
+ */
16
+ export default class TemplateUI extends Plugin {
17
+ /**
18
+ * @inheritDoc
19
+ */
20
+ static get pluginName(): "TemplateUI";
21
+ /**
22
+ * @inheritDoc
23
+ */
24
+ init(): void;
25
+ /**
26
+ * @inheritDoc
27
+ */
28
+ afterInit(): void;
29
+ }