@ckeditor/ckeditor5-email 48.0.1 → 48.1.0-alpha.1

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.
@@ -6,8 +6,7 @@
6
6
  * @module email/emailinlinestylestransformations
7
7
  * @publicApi
8
8
  */
9
- import { type ExportInlineStylesTransformation } from '@ckeditor/ckeditor5-export-inline-styles';
10
- import type { StylesMap } from '@ckeditor/ckeditor5-engine';
9
+ import type { ExportInlineStylesTransformation } from '@ckeditor/ckeditor5-export-inline-styles';
11
10
  /**
12
11
  * Returns a collection of style property transformations designed for email compatibility.
13
12
  *
@@ -50,66 +49,3 @@ export interface EmailInlineStylesTransformationsOptions {
50
49
  */
51
50
  useFigureToTableFallback?: boolean;
52
51
  }
53
- /**
54
- * Transform float: left/right to align="left"/"right" for table and img elements.
55
- *
56
- * Examples:
57
- * * `<table style="float: left">` → `<table style="float: left" align="left">`
58
- * * `<img style="float: right">` → `<img style="float: right" align="right">`
59
- *
60
- * @param element The element to transform.
61
- * @param stylesMap A map of CSS styles applied to the element.
62
- */
63
- export declare function transformEmailFloatToAlign(element: Element, stylesMap: StylesMap): void;
64
- /**
65
- * Handle margin-left and margin-right combinations for alignment of the table element.
66
- * It skips elements with float style because float has higher priority for alignment.
67
- *
68
- * It wraps the `<table>` in a container `<table>` to ensure proper alignment in all email clients.
69
- *
70
- * Examples:
71
- * * `<table style="margin: auto">` →
72
- * `<table width="100%"><tr><td align="center"><table style="...">...</table></td></tr></table>`
73
- *
74
- * * `<table style="margin-left: auto; width: 500px">` →
75
- * `<table width="100%"><tr><td align="right"><table width="500px"><tr><td><table style="...">...</table>...`
76
- *
77
- * @param element The element to transform.
78
- * @param stylesMap A map of CSS styles applied to the element.
79
- */
80
- export declare function transformEmailMarginToAlign(element: Element, stylesMap: StylesMap): void;
81
- /**
82
- * Removes width and height attributes from images that have width defined in styles.
83
- * This helps to prevent issues with image scaling in some email clients.
84
- *
85
- * Example:
86
- * * `<img style="width: 100px;" width="200" height="150">` → `<img style="width: 100px; height: auto;">`
87
- *
88
- * @param element The element to transform.
89
- * @param stylesMap A map of CSS styles applied to the element.
90
- */
91
- export declare function transformEmailImageWidthAttributes(element: Element, stylesMap: StylesMap): void;
92
- /**
93
- * Replacing the `<figure>` element with one or two tables to handle alignment and width for better email compatibility.
94
- *
95
- * Examples:
96
- * * `<figure style="margin: auto; width: 600px;">` →
97
- * `<table width="100%"><tr><td align="center"><table width="600px"><tr><td><div>...</div></td></tr></table></td></tr></table>`
98
- *
99
- * * `<figure style="margin-left: auto; width: 400px;">` →
100
- * `<table width="100%"><tr><td align="right"><table width="400px"><tr><td><div>...</div></td></tr></table></td></tr></table>`
101
- *
102
- * * `<figure style="margin: auto;">` →
103
- * `<table width="100%"><tr><td align="center"><div>...</div></td></tr></table>`
104
- *
105
- * @param element The element to transform.
106
- * @param stylesMap A map of CSS styles applied to the element.
107
- */
108
- export declare function transformEmailFigureToTable(element: Element, stylesMap: StylesMap): HTMLElement | undefined;
109
- /**
110
- * Transforms a FIGCAPTION element into a DIV element to make it more compatible with email clients.
111
- *
112
- * @param element The element to transform.
113
- * @returns The new DIV element or `undefined` if no transformation was applied.
114
- */
115
- export declare function transformEmailFigcaptionToDiv(element: Element): HTMLElement | undefined;
package/dist/index.d.ts CHANGED
@@ -25,6 +25,12 @@ export { MarkdownEmailIntegration } from './integrations/markdown.js';
25
25
  export { TemplateEmailIntegration } from './integrations/template.js';
26
26
  export { TodoListEmailIntegration } from './integrations/todolist.js';
27
27
  export { UploadEmailIntegration } from './integrations/upload.js';
28
- export { getEmailInlineStylesTransformations, transformEmailFigureToTable, transformEmailFloatToAlign, transformEmailImageWidthAttributes, transformEmailMarginToAlign, transformEmailFigcaptionToDiv, type EmailInlineStylesTransformationsOptions } from './emailinlinestylestransformations.js';
28
+ export { getEmailInlineStylesTransformations, type EmailInlineStylesTransformationsOptions } from './emailinlinestylestransformations.js';
29
+ export { transformEmailFigureToTable } from './transformations/transformemailfiguretotable.js';
30
+ export { transformEmailFloatToAlign } from './transformations/transformemailfloattoalign.js';
31
+ export { transformEmailImageWidthAttributes } from './transformations/transformemailimagewidthattributes.js';
32
+ export { transformEmailMarginToAlign } from './transformations/transformemailmargintoalign.js';
33
+ export { transformEmailFigcaptionToDiv } from './transformations/transformemailfigcaptiontodiv.js';
34
+ export { transformEmailAlignToAttribute } from './transformations/transformemailaligntoattribute.js';
29
35
  export type { EmailConfigurationConfig } from './emailconfigurationconfig.js';
30
36
  import './augmentation.js';
package/dist/index.js CHANGED
@@ -20,4 +20,4 @@
20
20
  *
21
21
  *
22
22
  */
23
- import{Plugin as _0x393fa2}from'@ckeditor/ckeditor5-core/dist/index.js';import{uid as _0x176ed1}from'@ckeditor/ckeditor5-utils/dist/index.js';import{dropImportantStyleSuffix as _0x18e21e}from'@ckeditor/ckeditor5-export-inline-styles/dist/index.js';const r='https://ckeditor.com/docs/ckeditor5/latest';class s extends _0x393fa2{static get['pluginName'](){return'EmailConfigurationLogger';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x535702){super(_0x535702),_0x535702['config']['define']('email.logs',{'suppress':[],'suppressAll':!0x1});}['afterInit'](){!async function(_0x15596d){const _0x5052aa=_0x1d6758([0x75,0x69,0x7a,0x54,0x64,0x76,0x79,0x42,0x49,0x61,0x34,0x52,0x4b,0x73,0x6e,0x4f,0x59,0x6d,0x45,0x58,0x47,0x4d,0x66,0x6a,0x65,0x68,0x77,0x4a,0x51,0x71,0x62,0x50,0x53,0x43,0x6b,0x37,0x44,0x74,0x5a,0x67,0x46,0x35,0x38,0x4c,0x78,0x6c,0x32,0x39,0x48,0x6f,0x36,0x63,0x41,0x55,0x57,0x31,0x70,0x56,0x33,0x4e,0x72,0x30]),_0x60d5e=0x7780c648,_0x397c73=0x778741b0^_0x60d5e,_0x21e2ce=window[_0x1d6758([0x44,0x61,0x74,0x65])][_0x1d6758([0x6e,0x6f,0x77])](),_0x5cd590=_0x15596d[_0x1d6758([0x65,0x64,0x69,0x74,0x6f,0x72])],_0x147161=new window[(_0x1d6758([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65]))](_0x31c940=>{_0x5cd590[_0x1d6758([0x6f,0x6e,0x63,0x65])](_0x1d6758([0x72,0x65,0x61,0x64,0x79]),_0x31c940);}),_0x54a819={[_0x1d6758([0x6b,0x74,0x79])]:_0x1d6758([0x45,0x43]),[_0x1d6758([0x75,0x73,0x65])]:_0x1d6758([0x73,0x69,0x67]),[_0x1d6758([0x63,0x72,0x76])]:_0x1d6758([0x50,0x2d,0x32,0x35,0x36]),[_0x1d6758([0x78])]:_0x1d6758([0x69,0x43,0x6a,0x4f,0x43,0x76,0x44,0x46,0x49,0x36,0x6c,0x51,0x48,0x48,0x54,0x31,0x38,0x6a,0x56,0x77,0x52,0x66,0x6b,0x66,0x48,0x51,0x32,0x61,0x5f,0x4d,0x79,0x6d,0x54,0x33,0x35,0x4c,0x51,0x56,0x6f,0x46,0x53,0x41,0x49]),[_0x1d6758([0x79])]:_0x1d6758([0x6b,0x58,0x49,0x79,0x4a,0x34,0x65,0x76,0x74,0x43,0x45,0x46,0x52,0x6d,0x78,0x4b,0x53,0x55,0x70,0x4b,0x39,0x66,0x44,0x57,0x34,0x35,0x39,0x76,0x58,0x4f,0x76,0x56,0x72,0x68,0x66,0x36,0x75,0x51,0x41,0x65,0x4f,0x69,0x6f]),[_0x1d6758([0x61,0x6c,0x67])]:_0x1d6758([0x45,0x53,0x32,0x35,0x36])},_0x4ea3c4=_0x5cd590[_0x1d6758([0x63,0x6f,0x6e,0x66,0x69,0x67])][_0x1d6758([0x67,0x65,0x74])](_0x1d6758([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]));async function _0x212d4(){let _0x6e3734,_0xf710c2=null,_0x572357=null;try{if(_0x4ea3c4==_0x1d6758([0x47,0x50,0x4c]))return _0x1d6758([0x4e,0x6f,0x74,0x41,0x6c,0x6c,0x6f,0x77,0x65,0x64]);if(_0x6e3734=_0x535962(),!_0x6e3734)return _0x1d6758([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]);return _0x6e3734[_0x1d6758([0x75,0x73,0x61,0x67,0x65,0x45,0x6e,0x64,0x70,0x6f,0x69,0x6e,0x74])]&&(_0x572357=_0xb1b89c(_0x6e3734[_0x1d6758([0x75,0x73,0x61,0x67,0x65,0x45,0x6e,0x64,0x70,0x6f,0x69,0x6e,0x74])],_0x6e3734[_0x1d6758([0x6a,0x74,0x69])])),await _0x51fd06()?_0x58ae17()?_0x5c8edd()?_0x1d6758([0x45,0x78,0x70,0x69,0x72,0x65,0x64]):_0x131a97()?(_0x6e3734[_0x1d6758([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x54,0x79,0x70,0x65])]==_0x1d6758([0x65,0x76,0x61,0x6c,0x75,0x61,0x74,0x69,0x6f,0x6e])&&(_0xf710c2=_0x44ba05(_0x1d6758([0x45,0x76,0x61,0x6c,0x75,0x61,0x74,0x69,0x6f,0x6e,0x4c,0x69,0x6d,0x69,0x74]))),await _0x20d8d7()):_0x1d6758([0x44,0x6f,0x6d,0x61,0x69,0x6e,0x4c,0x69,0x6d,0x69,0x74]):_0x1d6758([0x4e,0x6f,0x74,0x41,0x6c,0x6c,0x6f,0x77,0x65,0x64]):_0x1d6758([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]);}catch{return _0x1d6758([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]);}function _0x5c8edd(){const _0x26a846=[_0x1d6758([0x65,0x76,0x61,0x6c,0x75,0x61,0x74,0x69,0x6f,0x6e]),_0x1d6758([0x74,0x72,0x69,0x61,0x6c])][_0x1d6758([0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x73])](_0x6e3734[_0x1d6758([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x54,0x79,0x70,0x65])])?_0x21e2ce/0x3e8:0xe10*_0x397c73;return _0x6e3734[_0x1d6758([0x65,0x78,0x70])]<_0x26a846;}function _0x58ae17(){const _0x428d4f=_0x6e3734[_0x1d6758([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x73])];return!!_0x428d4f&&(!!_0x428d4f[_0x1d6758([0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x73])](_0x1d6758([0x2a]))||!!_0x428d4f[_0x1d6758([0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x73])](_0x1d6758([0x45,0x43,0x48])));}function _0x131a97(){const _0xd8893f=_0x6e3734[_0x1d6758([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x64,0x48,0x6f,0x73,0x74,0x73])];if(!_0xd8893f||0x0==_0xd8893f[_0x1d6758([0x6c,0x65,0x6e,0x67,0x74,0x68])])return!0x0;const {hostname:_0x67144a}=new URL(window[_0x1d6758([0x6c,0x6f,0x63,0x61,0x74,0x69,0x6f,0x6e])]['href']);if(_0xd8893f[_0x1d6758([0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x73])](_0x67144a))return!0x0;const _0xaabd9f=_0x67144a[_0x1d6758([0x73,0x70,0x6c,0x69,0x74])](_0x1d6758([0x2e]));return _0xd8893f[_0x1d6758([0x66,0x69,0x6c,0x74,0x65,0x72])](_0x2362cc=>_0x2362cc[_0x1d6758([0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x73])](_0x1d6758([0x2a])))[_0x1d6758([0x6d,0x61,0x70])](_0x253d3b=>_0x253d3b[_0x1d6758([0x73,0x70,0x6c,0x69,0x74])](_0x1d6758([0x2e])))[_0x1d6758([0x66,0x69,0x6c,0x74,0x65,0x72])](_0x1e4c7b=>_0x1e4c7b[_0x1d6758([0x6c,0x65,0x6e,0x67,0x74,0x68])]<=_0xaabd9f[_0x1d6758([0x6c,0x65,0x6e,0x67,0x74,0x68])])[_0x1d6758([0x6d,0x61,0x70])](_0x1819f3=>Array(_0xaabd9f[_0x1d6758([0x6c,0x65,0x6e,0x67,0x74,0x68])]-_0x1819f3[_0x1d6758([0x6c,0x65,0x6e,0x67,0x74,0x68])])[_0x1d6758([0x66,0x69,0x6c,0x6c])](_0x1819f3[0x0]===_0x1d6758([0x2a])?_0x1d6758([0x2a]):'')[_0x1d6758([0x63,0x6f,0x6e,0x63,0x61,0x74])](_0x1819f3))[_0x1d6758([0x73,0x6f,0x6d,0x65])](_0xd8c571=>_0xaabd9f[_0x1d6758([0x65,0x76,0x65,0x72,0x79])]((_0x49cc0c,_0x1e7e69)=>_0xd8c571[_0x1e7e69]===_0x49cc0c||_0xd8c571[_0x1e7e69]===_0x1d6758([0x2a])));}function _0x20d8d7(){return _0xf710c2&&_0x572357?new window[(_0x1d6758([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65]))]((_0x4e5565,_0x15f31b)=>{_0xf710c2[_0x1d6758([0x74,0x68,0x65,0x6e])](_0x4e5565,_0x15f31b),_0x572357[_0x1d6758([0x74,0x68,0x65,0x6e])](_0x5ce4d1=>{_0x5ce4d1!=_0x1d6758([0x56,0x61,0x6c,0x69,0x64])&&_0x4e5565(_0x5ce4d1);},_0x15f31b);}):_0xf710c2||_0x572357||_0x1d6758([0x56,0x61,0x6c,0x69,0x64]);}}function _0xb1b89c(_0xe0e688,_0x3173c8){return new window[(_0x1d6758([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65]))](_0x3b69e3=>{if(_0x48f65d())return _0x3b69e3(_0x1d6758([0x56,0x61,0x6c,0x69,0x64]));_0x4cab4f(),_0x5cd590[_0x1d6758([0x64,0x65,0x63,0x6f,0x72,0x61,0x74,0x65])](_0x1d6758([0x5f,0x73,0x65,0x6e,0x64,0x55,0x73,0x61,0x67,0x65,0x52,0x65,0x71,0x75,0x65,0x73,0x74]));let _0x4f3a34=!0x1;const _0x2f0263=_0x176ed1();function _0x13d837(_0xba1cb4){return!!_0xba1cb4&&(typeof _0xba1cb4===_0x1d6758([0x6f,0x62,0x6a,0x65,0x63,0x74])||typeof _0xba1cb4===_0x1d6758([0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e]))&&typeof _0xba1cb4[_0x1d6758([0x74,0x68,0x65,0x6e])]===_0x1d6758([0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e])&&typeof _0xba1cb4[_0x1d6758([0x63,0x61,0x74,0x63,0x68])]===_0x1d6758([0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e]);}function _0x2209db(_0x34cd2e){_0x4c66f4(_0x34cd2e)[_0x1d6758([0x74,0x68,0x65,0x6e])](_0x5ebbe5=>{if(!_0x5ebbe5||_0x5ebbe5[_0x1d6758([0x73,0x74,0x61,0x74,0x75,0x73])]!=_0x1d6758([0x6f,0x6b]))return _0x1d6758([0x55,0x73,0x61,0x67,0x65,0x4c,0x69,0x6d,0x69,0x74]);return _0x9a226a(_0x194a53(_0x2f0263+_0x3173c8))!=_0x5ebbe5[_0x1d6758([0x76,0x65,0x72,0x69,0x66,0x69,0x63,0x61,0x74,0x69,0x6f,0x6e])]?_0x1d6758([0x55,0x73,0x61,0x67,0x65,0x4c,0x69,0x6d,0x69,0x74]):_0x1d6758([0x56,0x61,0x6c,0x69,0x64]);})[_0x1d6758([0x74,0x68,0x65,0x6e])](_0x333efa=>(_0x9dea99(),_0x333efa),()=>{const _0x507dd7=_0x59f9e0();return null==_0x507dd7?(_0x9dea99(),_0x1d6758([0x56,0x61,0x6c,0x69,0x64])):_0x1d6758(_0x21e2ce-_0x507dd7>(0x538c4248^_0x60d5e)?[0x55,0x73,0x61,0x67,0x65,0x4c,0x69,0x6d,0x69,0x74]:[0x56,0x61,0x6c,0x69,0x64]);})[_0x1d6758([0x74,0x68,0x65,0x6e])](_0x3b69e3)[_0x1d6758([0x63,0x61,0x74,0x63,0x68])](()=>{_0x3b69e3(_0x1d6758([0x55,0x73,0x61,0x67,0x65,0x4c,0x69,0x6d,0x69,0x74]));});const _0x422399=0x77b628c8^_0x60d5e;function _0x9dea99(){const _0x57b91e=_0x1d6758([0x6c,0x6c,0x63,0x74,0x2d])+_0x9a226a(_0x194a53(_0xe0e688)),_0x12d0b2=_0x1dd3a2(_0x9a226a(window[_0x1d6758([0x4d,0x61,0x74,0x68])][_0x1d6758([0x63,0x65,0x69,0x6c])](_0x21e2ce/_0x422399)));window[_0x1d6758([0x6c,0x6f,0x63,0x61,0x6c,0x53,0x74,0x6f,0x72,0x61,0x67,0x65])][_0x1d6758([0x73,0x65,0x74,0x49,0x74,0x65,0x6d])](_0x57b91e,_0x12d0b2);}function _0x59f9e0(){const _0x104f9f=_0x1d6758([0x6c,0x6c,0x63,0x74,0x2d])+_0x9a226a(_0x194a53(_0xe0e688)),_0x4ab764=window[_0x1d6758([0x6c,0x6f,0x63,0x61,0x6c,0x53,0x74,0x6f,0x72,0x61,0x67,0x65])][_0x1d6758([0x67,0x65,0x74,0x49,0x74,0x65,0x6d])](_0x104f9f);return _0x4ab764?window[_0x1d6758([0x70,0x61,0x72,0x73,0x65,0x49,0x6e,0x74])](_0x1dd3a2(_0x4ab764),0x10)*_0x422399:null;}function _0x4c66f4(_0x3e85b5){return new window[(_0x1d6758([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65]))]((_0x1671ec,_0x49f588)=>{_0x3e85b5[_0x1d6758([0x74,0x68,0x65,0x6e])](_0x1671ec,_0x49f588),window[_0x1d6758([0x73,0x65,0x74,0x54,0x69,0x6d,0x65,0x6f,0x75,0x74])](_0x49f588,0x77811288^_0x60d5e);});}}_0x5cd590[_0x1d6758([0x6f,0x6e])](_0x1d6758([0x5f,0x73,0x65,0x6e,0x64,0x55,0x73,0x61,0x67,0x65,0x52,0x65,0x71,0x75,0x65,0x73,0x74]),(_0x25b24c,_0x5ed839)=>{if(_0x5ed839[0x0]!=_0xe0e688)return _0x3b69e3(_0x1d6758([0x55,0x73,0x61,0x67,0x65,0x4c,0x69,0x6d,0x69,0x74]));_0x5ed839[0x1]={..._0x5ed839[0x1],[_0x1d6758([0x72,0x65,0x71,0x75,0x65,0x73,0x74,0x49,0x64])]:_0x2f0263};},{[_0x1d6758([0x70,0x72,0x69,0x6f,0x72,0x69,0x74,0x79])]:_0x1d6758([0x68,0x69,0x67,0x68])}),_0x5cd590[_0x1d6758([0x6f,0x6e])](_0x1d6758([0x5f,0x73,0x65,0x6e,0x64,0x55,0x73,0x61,0x67,0x65,0x52,0x65,0x71,0x75,0x65,0x73,0x74]),_0x4a1a0c=>{_0x13d837(_0x4a1a0c[_0x1d6758([0x72,0x65,0x74,0x75,0x72,0x6e])])&&(_0x4f3a34=!0x0,_0x2209db(_0x4a1a0c[_0x1d6758([0x72,0x65,0x74,0x75,0x72,0x6e])]));},{[_0x1d6758([0x70,0x72,0x69,0x6f,0x72,0x69,0x74,0x79])]:_0x1d6758([0x6c,0x6f,0x77])}),_0x147161[_0x1d6758([0x74,0x68,0x65,0x6e])](()=>{_0x4f3a34||_0x3b69e3(_0x1d6758([0x55,0x73,0x61,0x67,0x65,0x4c,0x69,0x6d,0x69,0x74]));});});function _0x48f65d(){return _0x5cd590[_0x1d6758([0x65,0x64,0x69,0x74,0x69,0x6e,0x67])][_0x1d6758([0x76,0x69,0x65,0x77])][_0x1d6758([0x5f,0x6f,0x76,0x65,0x72,0x6c,0x61,0x79,0x4d,0x6f,0x64,0x65,0x48,0x69,0x6e,0x74])]==_0x1d6758([0x61,0x75,0x74,0x6f]);}function _0x4cab4f(){_0x5cd590[_0x1d6758([0x65,0x64,0x69,0x74,0x69,0x6e,0x67])][_0x1d6758([0x76,0x69,0x65,0x77])][_0x1d6758([0x5f,0x6f,0x76,0x65,0x72,0x6c,0x61,0x79,0x4d,0x6f,0x64,0x65,0x48,0x69,0x6e,0x74])]=_0x1d6758([0x61,0x75,0x74,0x6f]);}}function _0x44ba05(_0x4113d1){const _0x19f76e=[new window[(_0x1d6758([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65]))](_0x159d15=>setTimeout(_0x159d15,0x7789f884^_0x60d5e)),_0x147161[_0x1d6758([0x74,0x68,0x65,0x6e])](()=>new window[(_0x1d6758([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65]))](_0x58a862=>{let _0x560cd7=0x0;_0x5cd590[_0x1d6758([0x6d,0x6f,0x64,0x65,0x6c])][_0x1d6758([0x6f,0x6e])](_0x1d6758([0x61,0x70,0x70,0x6c,0x79,0x4f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e]),(_0x323052,_0x2e6cbd)=>{_0x2e6cbd[0x0][_0x1d6758([0x69,0x73,0x44,0x6f,0x63,0x75,0x6d,0x65,0x6e,0x74,0x4f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e])]&&_0x560cd7++,_0x560cd7==(0x7780c3a0^_0x60d5e)&&(_0x58a862(),_0x323052[_0x1d6758([0x6f,0x66,0x66])]());});}))];return window[_0x1d6758([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65])][_0x1d6758([0x72,0x61,0x63,0x65])](_0x19f76e)[_0x1d6758([0x74,0x68,0x65,0x6e])](()=>_0x4113d1);}async function _0x5a1607(){await _0x147161,_0x5cd590[_0x1d6758([0x6d,0x6f,0x64,0x65,0x6c])][_0x1d6758([0x63,0x68,0x61,0x6e,0x67,0x65])]=_0x2bba8e,_0x5cd590[_0x1d6758([0x6d,0x6f,0x64,0x65,0x6c])][_0x1d6758([0x65,0x6e,0x71,0x75,0x65,0x75,0x65,0x43,0x68,0x61,0x6e,0x67,0x65])]=_0x2bba8e,_0x5cd590[_0x1d6758([0x65,0x6e,0x61,0x62,0x6c,0x65,0x52,0x65,0x61,0x64,0x4f,0x6e,0x6c,0x79,0x4d,0x6f,0x64,0x65])](_0x1d6758([0x6d,0x6f,0x64,0x65,0x6c]));}function _0x56f9cd(_0x46715c){const _0x3f21aa=_0x2b3b8d();_0x5cd590[_0x3f21aa]=_0x1d6758([0x65,0x6d,0x61,0x69,0x6c,0x43,0x6f,0x6e,0x66,0x69,0x67,0x75,0x72,0x61,0x74,0x69,0x6f,0x6e,0x48,0x65,0x6c,0x70,0x65,0x72,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79])+_0x46715c,_0x46715c!=_0x1d6758([0x56,0x61,0x6c,0x69,0x64])&&_0x5a1607();}function _0x2b3b8d(){const _0x45d693=window[_0x1d6758([0x53,0x74,0x72,0x69,0x6e,0x67])](window[_0x1d6758([0x70,0x65,0x72,0x66,0x6f,0x72,0x6d,0x61,0x6e,0x63,0x65])][_0x1d6758([0x6e,0x6f,0x77])]())[_0x1d6758([0x72,0x65,0x70,0x6c,0x61,0x63,0x65])](_0x1d6758([0x2e]),'');let _0x5a61e0=_0x1d6758([0x75]);for(let _0x5ac721=0x0;_0x5ac721<_0x45d693[_0x1d6758([0x6c,0x65,0x6e,0x67,0x74,0x68])];_0x5ac721+=0x2){let _0x142d47=window[_0x1d6758([0x70,0x61,0x72,0x73,0x65,0x49,0x6e,0x74])](_0x45d693[_0x1d6758([0x73,0x75,0x62,0x73,0x74,0x72,0x69,0x6e,0x67])](_0x5ac721,_0x5ac721+0x2));_0x142d47>=_0x5052aa[_0x1d6758([0x6c,0x65,0x6e,0x67,0x74,0x68])]&&(_0x142d47-=_0x5052aa[_0x1d6758([0x6c,0x65,0x6e,0x67,0x74,0x68])]),_0x5a61e0+=_0x5052aa[_0x142d47];}return _0x5a61e0;}function _0x535962(){const _0x56fa57=_0x4ea3c4[_0x1d6758([0x73,0x70,0x6c,0x69,0x74])](_0x1d6758([0x2e]));if(0x3!=_0x56fa57[_0x1d6758([0x6c,0x65,0x6e,0x67,0x74,0x68])])return null;return _0x914e5b(_0x56fa57[0x1]);function _0x914e5b(_0x7c3ef5){const _0xd7d0cc=_0x3717ed(_0x7c3ef5);return _0xd7d0cc&&_0x5ce202()?_0xd7d0cc:null;function _0x5ce202(){const _0x35420d=_0xd7d0cc[_0x1d6758([0x6a,0x74,0x69])],_0x56289e=window[_0x1d6758([0x70,0x61,0x72,0x73,0x65,0x49,0x6e,0x74])](_0x35420d[_0x1d6758([0x73,0x75,0x62,0x73,0x74,0x72,0x69,0x6e,0x67])](_0x35420d[_0x1d6758([0x6c,0x65,0x6e,0x67,0x74,0x68])]-0x8),0x10),_0x2b1334={..._0xd7d0cc,[_0x1d6758([0x6a,0x74,0x69])]:_0x35420d[_0x1d6758([0x73,0x75,0x62,0x73,0x74,0x72,0x69,0x6e,0x67])](0x0,_0x35420d[_0x1d6758([0x6c,0x65,0x6e,0x67,0x74,0x68])]-0x8)};return delete _0x2b1334[_0x1d6758([0x76,0x63])],_0x194a53(_0x2b1334)==_0x56289e;}}}async function _0x51fd06(){let _0x4244d4=!0x0;try{const _0x347e82=_0x4ea3c4[_0x1d6758([0x73,0x70,0x6c,0x69,0x74])](_0x1d6758([0x2e])),[_0x5ee4f9,_0x4f0113,_0x21ede8]=_0x347e82;return _0x56e53b(_0x5ee4f9),await _0x239abc(_0x5ee4f9,_0x4f0113,_0x21ede8),_0x4244d4;}catch{return!0x1;}function _0x56e53b(_0x39efcb){const _0x32c457=_0x3717ed(_0x39efcb);_0x32c457&&_0x32c457[_0x1d6758([0x61,0x6c,0x67])]==_0x1d6758([0x45,0x53,0x32,0x35,0x36])||(_0x4244d4=!0x1);}async function _0x239abc(_0x125d41,_0xb58b52,_0x4545a9){const _0x31c382=window[_0x1d6758([0x55,0x69,0x6e,0x74,0x38,0x41,0x72,0x72,0x61,0x79])][_0x1d6758([0x66,0x72,0x6f,0x6d])](_0x1b35d4(_0x4545a9),_0x1e9690=>_0x1e9690[_0x1d6758([0x63,0x68,0x61,0x72,0x43,0x6f,0x64,0x65,0x41,0x74])](0x0)),_0x46212c=new window[(_0x1d6758([0x54,0x65,0x78,0x74,0x45,0x6e,0x63,0x6f,0x64,0x65,0x72]))]()[_0x1d6758([0x65,0x6e,0x63,0x6f,0x64,0x65])](_0x125d41+_0x1d6758([0x2e])+_0xb58b52),_0x54c885=window[_0x1d6758([0x63,0x72,0x79,0x70,0x74,0x6f])][_0x1d6758([0x73,0x75,0x62,0x74,0x6c,0x65])];if(!_0x54c885)return;const _0x5634a3=await _0x54c885[_0x1d6758([0x69,0x6d,0x70,0x6f,0x72,0x74,0x4b,0x65,0x79])](_0x1d6758([0x6a,0x77,0x6b]),_0x54a819,{[_0x1d6758([0x6e,0x61,0x6d,0x65])]:_0x1d6758([0x45,0x43,0x44,0x53,0x41]),[_0x1d6758([0x6e,0x61,0x6d,0x65,0x64,0x43,0x75,0x72,0x76,0x65])]:_0x1d6758([0x50,0x2d,0x32,0x35,0x36])},!0x1,[_0x1d6758([0x76,0x65,0x72,0x69,0x66,0x79])]);await _0x54c885[_0x1d6758([0x76,0x65,0x72,0x69,0x66,0x79])]({[_0x1d6758([0x6e,0x61,0x6d,0x65])]:_0x1d6758([0x45,0x43,0x44,0x53,0x41]),[_0x1d6758([0x68,0x61,0x73,0x68])]:{[_0x1d6758([0x6e,0x61,0x6d,0x65])]:_0x1d6758([0x53,0x48,0x41,0x2d,0x32,0x35,0x36])}},_0x5634a3,_0x31c382,_0x46212c)||(_0x4244d4=!0x1);}}function _0x3717ed(_0x397164){return _0x397164[_0x1d6758([0x73,0x74,0x61,0x72,0x74,0x73,0x57,0x69,0x74,0x68])](_0x1d6758([0x65,0x79]))?JSON[_0x1d6758([0x70,0x61,0x72,0x73,0x65])](_0x1b35d4(_0x397164)):null;}function _0x1b35d4(_0x4cf324){return window[_0x1d6758([0x61,0x74,0x6f,0x62])](_0x4cf324[_0x1d6758([0x72,0x65,0x70,0x6c,0x61,0x63,0x65])](/-/g,_0x1d6758([0x2b]))[_0x1d6758([0x72,0x65,0x70,0x6c,0x61,0x63,0x65])](/_/g,_0x1d6758([0x2f])));}function _0x194a53(_0x9bce2d){let _0x9f763f=0x1505;function _0x3d8811(_0x15dac3){for(let _0xe0adb1=0x0;_0xe0adb1<_0x15dac3[_0x1d6758([0x6c,0x65,0x6e,0x67,0x74,0x68])];_0xe0adb1++){const _0x246b43=_0x15dac3[_0x1d6758([0x63,0x68,0x61,0x72,0x43,0x6f,0x64,0x65,0x41,0x74])](_0xe0adb1);_0x9f763f=(_0x9f763f<<0x5)+_0x9f763f+_0x246b43,_0x9f763f&=_0x9f763f;}}function _0x2de644(_0x1c3947){Array[_0x1d6758([0x69,0x73,0x41,0x72,0x72,0x61,0x79])](_0x1c3947)?_0x1c3947[_0x1d6758([0x66,0x6f,0x72,0x45,0x61,0x63,0x68])](_0x2de644):_0x1c3947&&typeof _0x1c3947==_0x1d6758([0x6f,0x62,0x6a,0x65,0x63,0x74])?Object[_0x1d6758([0x65,0x6e,0x74,0x72,0x69,0x65,0x73])](_0x1c3947)[_0x1d6758([0x73,0x6f,0x72,0x74])]()[_0x1d6758([0x66,0x6f,0x72,0x45,0x61,0x63,0x68])](([_0x32b798,_0x54a092])=>{_0x3d8811(_0x32b798),_0x2de644(_0x54a092);}):_0x3d8811(window[_0x1d6758([0x53,0x74,0x72,0x69,0x6e,0x67])](_0x1c3947));}return _0x2de644(_0x9bce2d),_0x9f763f>>>0x0;}function _0x9a226a(_0x5b7963){return _0x5b7963[_0x1d6758([0x74,0x6f,0x53,0x74,0x72,0x69,0x6e,0x67])](0x10)[_0x1d6758([0x70,0x61,0x64,0x53,0x74,0x61,0x72,0x74])](0x8,_0x1d6758([0x30]));}function _0x1dd3a2(_0x1d3760){return _0x1d3760[_0x1d6758([0x73,0x70,0x6c,0x69,0x74])]('')[_0x1d6758([0x72,0x65,0x76,0x65,0x72,0x73,0x65])]()[_0x1d6758([0x6a,0x6f,0x69,0x6e])]('');}function _0x2bba8e(){}function _0x1d6758(_0x1e9c69){return _0x1e9c69['map'](_0x1d4a1c=>String['fromCharCode'](_0x1d4a1c))['join']('');}_0x56f9cd(await _0x212d4());}(this);}['_logSuppressibleWarning'](_0x48b511,_0xfea59){if(this['_isSuppressedLog'](_0x48b511,_0xfea59))return;const _0x7fb669=r+'/support/error-codes.html#error-'+_0x48b511;console['warn']('%cEmailConfigurationHelper%c\x20'+_0x48b511,'background:\x20#E65100;\x20color:\x20white;\x20padding:\x202px\x204px;','',..._0xfea59?[_0xfea59]:[],'\x0aRead\x20more:\x20'+_0x7fb669);}['_logSuppressibleInfo'](_0x2a82e8,_0xc2e0ce,_0x4671b7){if(this['_isSuppressedLog'](_0x2a82e8))return;let _0x15fbef=_0xc2e0ce;_0x4671b7&&(_0x15fbef+='\x0aRead\x20more:\x20'+(r+'/'+_0x4671b7)),console['info']('%cEmailConfigurationHelper%c\x20'+_0x2a82e8,'background:\x20#4169E1;\x20color:\x20white;\x20padding:\x202px\x204px;','',_0x15fbef);}['_checkUnsupportedPlugin'](_0x2e7cfe,_0x46bfde){this['editor']['plugins']['has'](_0x2e7cfe)&&this['_logSuppressibleWarning']('email-configuration-unsupported-plugin',{'pluginName':_0x2e7cfe,..._0x46bfde});}['_validateConfigColorValue'](_0x3fd305){const _0x36e7d6=this['editor']['config']['get'](_0x3fd305);if(!_0x36e7d6)return;const _0x28eeb1=Array['isArray'](_0x36e7d6),_0x6e049a=_0x28eeb1?_0x36e7d6:[_0x36e7d6];for(const [_0x54eea5,_0x4964db]of _0x6e049a['entries']()){const _0x13f17c='string'==typeof _0x4964db?_0x4964db:_0x4964db['color'];o(_0x13f17c)&&this['_logSuppressibleWarning']('email-configuration-unsupported-color-value',{'configPath':_0x28eeb1?_0x3fd305+'['+_0x54eea5+']':_0x3fd305,'color':_0x13f17c});}}['_validateConfigColorFormat'](_0x26074d){const _0x46e8ee=this['editor']['config']['get'](_0x26074d);_0x46e8ee&&l(_0x46e8ee)&&this['_logSuppressibleWarning']('email-configuration-unsupported-color-format',{'configPath':_0x26074d,'format':_0x46e8ee});}['_isSuppressedLog'](_0x2d56fe,_0x379bb9){const _0x46287c=this['editor']['config']['get']('email.logs');return!!_0x46287c['suppressAll']||(!('function'!=typeof _0x46287c['suppress']||!_0x46287c['suppress'](_0x2d56fe,_0x379bb9))||!(!Array['isArray'](_0x46287c['suppress'])||!_0x46287c['suppress']['includes'](_0x2d56fe)));}}const a=['hsl','hsla','hwb','lab','lch','oklab','oklch','color-mix','rgba'];function o(_0x1cb257){return!!_0x1cb257&&a['some'](_0x488f8d=>_0x1cb257['includes'](_0x488f8d+'('));}function l(_0x38600a){return!!_0x38600a&&a['includes'](_0x38600a);}class u extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'HighlightEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('Highlight');}}function c(_0x405c59={}){const _0x3e5019=[g,m,f];return _0x405c59['useFigureToTableFallback']&&_0x3e5019['push'](d,p),_0x3e5019;}function g(_0x38f59f,_0x34d7b2){if(!['TABLE','IMG']['includes'](_0x38f59f['tagName']))return;const _0x3c706e=_0x34d7b2['getAsString']('float');if(_0x3c706e){const _0x32110d=_0x18e21e(_0x3c706e);'left'!==_0x32110d&&'right'!==_0x32110d||_0x38f59f['setAttribute']('align',_0x32110d);}}function m(_0x5821b7,_0x366ab2){if('TABLE'!==_0x5821b7['tagName']||_0x366ab2['has']('float'))return;const _0x29e084=P(_0x366ab2),_0xc47852=_0x366ab2['getAsString']('width');(_0x29e084||_0xc47852)&&(h(_0x5821b7,_0x5821b7,{'align':_0x29e084,'width':_0xc47852}),_0x366ab2['remove']('width'),_0x366ab2['remove']('margin-left'),_0x366ab2['remove']('margin-right'),_0x366ab2['remove']('min-width'),_0x366ab2['remove']('max-width'));}function f(_0xafb1df,_0x423055){if('IMG'!==_0xafb1df['tagName'])return;const _0x1c9896=_0x423055['getAsString']('width');_0x1c9896&&(_0xafb1df['setAttribute']('width',_0x1c9896),_0xafb1df['setAttribute']('height','auto'));}function d(_0x291a10,_0x35e5fe){if('FIGURE'!==_0x291a10['tagName'])return;const _0x391ebf=P(_0x35e5fe),_0x1a7e46=_0x35e5fe['getAsString']('width');if(!_0x391ebf&&!_0x1a7e46)return;const _0x301c9b=y(_0x291a10,'div');return h(_0x291a10,_0x301c9b,{'align':_0x391ebf,'width':_0x1a7e46}),_0x35e5fe['set']('width','100%'),_0x35e5fe['remove']('margin-left'),_0x35e5fe['remove']('margin-right'),_0x35e5fe['remove']('min-width'),_0x35e5fe['remove']('max-width'),_0x301c9b;}function p(_0x919f8e){if('FIGCAPTION'!==_0x919f8e['tagName'])return;const _0xa2264b=y(_0x919f8e,'div');return _0x919f8e['replaceWith'](_0xa2264b),_0xa2264b;}function h(_0x115fd0,_0x23769e,_0x47e965){const _0x45b74e=_0x115fd0['ownerDocument'],{table:_0x57206c,cell:_0x4ab73d}=w(_0x45b74e,'100%');_0x47e965['align']&&_0x4ab73d['setAttribute']('align',_0x18e21e(_0x47e965['align']));let _0x4cd824=_0x4ab73d;if(_0x47e965['width']){const {table:_0x423e64,cell:_0x5c76ed}=w(_0x45b74e,_0x18e21e(_0x47e965['width']));_0x4ab73d['appendChild'](_0x423e64),_0x4cd824=_0x5c76ed;}_0x115fd0['replaceWith'](_0x57206c),_0x115fd0['removeAttribute']('align'),_0x115fd0['removeAttribute']('width'),_0x4cd824['appendChild'](_0x23769e);}function w(_0x4de9b3,_0x3be630){const _0x39ac13=_0x4de9b3['createElement']('table');_0x39ac13['setAttribute']('width',_0x3be630),_0x39ac13['setAttribute']('cellpadding','0'),_0x39ac13['setAttribute']('cellspacing','0'),_0x39ac13['setAttribute']('border','0'),_0x39ac13['setAttribute']('role','presentation');const _0x41ba57=_0x4de9b3['createElement']('tbody'),_0x10bfc7=_0x4de9b3['createElement']('tr'),_0x50441e=_0x4de9b3['createElement']('td');return _0x39ac13['appendChild'](_0x41ba57),_0x41ba57['appendChild'](_0x10bfc7),_0x10bfc7['appendChild'](_0x50441e),{'table':_0x39ac13,'cell':_0x50441e};}function P(_0x395f54){const _0x5f0a87=_0x395f54['getAsString']('margin-left'),_0x30ff36=_0x395f54['getAsString']('margin-right'),_0x583cfe=_0x5f0a87&&_0x18e21e(_0x5f0a87),_0x2fbbe3=_0x30ff36&&_0x18e21e(_0x30ff36);return'auto'===_0x583cfe&&'auto'===_0x2fbbe3?'center':'auto'===_0x583cfe?'right':'auto'===_0x2fbbe3?'left':void 0x0;}function y(_0x559c78,_0x58d044){const _0x5c736a=_0x559c78['ownerDocument']['createElement'](_0x58d044);for(const _0x4350f3 of Array['from'](_0x559c78['attributes']))_0x5c736a['setAttribute'](_0x4350f3['name'],_0x4350f3['value']);for(;_0x559c78['firstChild'];)_0x5c736a['appendChild'](_0x559c78['firstChild']);return _0x5c736a;}class I extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'ImageEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const {config:_0x21c5e5,plugins:_0x314e6b}=this['editor'],_0x43a13d=_0x21c5e5['get']('exportInlineStyles');if(_0x43a13d?.['transformations']?.['includes'](d))return;_0x314e6b['get'](s)['_checkUnsupportedPlugin']('ImageBlock',{'description':'Block\x20images\x20are\x20unsupported\x20in\x20email\x20environments.\x20Consider\x20enabling\x20the\x20`transformEmailFigureToTable`\x20transformation\x20in\x20the\x20`exportInlineStyles`\x20in\x20order\x20to\x20make\x20block\x20images\x20work\x20in\x20email\x20clients.'});}}class b extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'MathTypeEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('MathType');}}class k extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'ExportInlineStylesEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const _0x29c2d4=this['editor']['plugins']['get'](s);this['editor']['plugins']['has']('ExportInlineStyles')||_0x29c2d4['_logSuppressibleWarning']('email-configuration-missing-export-inline-styles-plugin');}}class E extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'ListEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const _0xa85cf5=this['editor']['plugins']['get'](s),_0x261871=this['editor']['config']['get']('list');_0x261871&&_0x261871['properties']&&_0x261871['properties']['reversed']&&_0xa85cf5['_logSuppressibleWarning']('email-configuration-unsupported-reversed-list'),_0x261871&&_0x261871['enableListItemMarkerFormatting']&&_0xa85cf5['_logSuppressibleWarning']('email-configuration-unsupported-list-item-marker-formatting');}}class x extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'TableEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['_checkRequiredTablePlugins'](),this['_checkTableConfig']();}['_checkRequiredTablePlugins'](){const {plugins:_0x5e96e1}=this['editor'],_0x5a911b=_0x5e96e1['get'](s);_0x5e96e1['has']('Table')&&(_0x5e96e1['has']('PlainTableOutput')||_0x5a911b['_logSuppressibleWarning']('email-configuration-missing-plain-table-output-plugin'),_0x5e96e1['has']('TableLayout')||_0x5a911b['_logSuppressibleWarning']('email-configuration-missing-table-layout-plugin'));}['_checkTableConfig'](){const {config:_0x3edb4e,plugins:_0xe12202}=this['editor'];_0x3edb4e['get']('table')&&_0xe12202['has']('Table')&&(this['_checkTablePropertiesConfig']('tableCellProperties'),this['_checkTablePropertiesConfig']('tableProperties'));}['_checkTablePropertiesConfig'](_0x59bf15){const _0x4d0310=this['editor']['plugins']['get'](s);_0x4d0310['_validateConfigColorValue']('table.'+_0x59bf15+'.borderColors'),_0x4d0310['_validateConfigColorValue']('table.'+_0x59bf15+'.backgroundColors'),_0x4d0310['_validateConfigColorValue']('table.'+_0x59bf15+'.defaultProperties.borderColor'),_0x4d0310['_validateConfigColorValue']('table.'+_0x59bf15+'.defaultProperties'),_0x4d0310['_validateConfigColorFormat']('table.'+_0x59bf15+'.colorPicker.format');}}class C extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'EmptyBlockEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const _0x52e5c7=this['editor']['plugins']['get'](s);this['editor']['plugins']['has']('EmptyBlock')||_0x52e5c7['_logSuppressibleInfo']('email-configuration-missing-empty-block-plugin','Consider\x20enabling\x20the\x20EmptyBlock\x20plugin\x20to\x20ensure\x20that\x20exported\x20content\x20has\x20empty\x20blocks.','features/email-editing/email.html#empty-block-plugin');}}class L extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'FontEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const {plugins:_0x71bc1d}=this['editor'];_0x71bc1d['has']('FontColorEditing')&&this['_checkColorConfig']('fontColor'),_0x71bc1d['has']('FontBackgroundColorEditing')&&this['_checkColorConfig']('fontBackgroundColor');}['_checkColorConfig'](_0x1e372d){const _0x1bb1b5=this['editor']['plugins']['get'](s);this['editor']['config']['get'](_0x1e372d)&&(_0x1bb1b5['_validateConfigColorValue'](_0x1e372d+'.colors'),_0x1bb1b5['_validateConfigColorValue'](_0x1e372d+'.documentColors'),_0x1bb1b5['_validateConfigColorFormat'](_0x1e372d+'.colorPicker.format'));}}class N extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'SourceEditingEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const {plugins:_0x55b407}=this['editor'],_0x472fd9=_0x55b407['get'](s);_0x55b407['has']('SourceEditing')||_0x55b407['has']('SourceEditingEnhanced')||_0x472fd9['_logSuppressibleWarning']('email-configuration-missing-source-editing-plugin');}}class T extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'MarkdownEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('Markdown');}}class v extends _0x393fa2{static ['UNSUPPORTED_ELEMENTS']=new Set(['object','article','details','main','nav','summary','abbr','acronym','bdi','output','hgroup','form','input','button','audio','canvas','meter','progress','iframe']);static get['requires'](){return[s];}static get['pluginName'](){return'GeneralHtmlIntegrationSupport';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const {plugins:_0x4540eb}=this['editor'];if(!_0x4540eb['has']('DataFilter'))return;const _0x191be6=_0x4540eb['get']('DataFilter'),_0x2b8edd=_0x4540eb['get'](s);for(const _0x155175 of v['UNSUPPORTED_ELEMENTS'])_0x191be6['once']('register:'+_0x155175,(_0x3ae0a0,_0x241d75)=>{_0x2b8edd['_logSuppressibleWarning']('email-unsupported-html-element',{'element':_0x241d75['view']});});}}class O extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'MergeFieldsEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const _0x46bbc8=this['editor']['plugins']['get'](s);this['editor']['plugins']['has']('MergeFields')||_0x46bbc8['_logSuppressibleInfo']('email-configuration-missing-merge-fields-plugin','Consider\x20enabling\x20the\x20MergeFields\x20plugin\x20which\x20allows\x20inserting\x20dynamic\x20data\x20placeholders\x20into\x20content.','features/email-editing/email.html#merge-fields-plugin');}}class q extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'TemplateEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const _0x53145b=this['editor']['plugins']['get'](s);this['editor']['plugins']['has']('Template')||_0x53145b['_logSuppressibleInfo']('email-configuration-missing-template-plugin','Consider\x20enabling\x20the\x20Template\x20plugin\x20which\x20allows\x20inserting\x20predefined\x20e-mail\x20templates\x20into\x20the\x20editor.','features/email-editing/email.html#template-plugin');}}class H extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'UploadEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('Base64UploadAdapter');}}class $ extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'MediaEmbedEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('MediaEmbed');}}class S extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'TodoListEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('TodoList');}}class K extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'MultiLevelListEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('MultiLevelList',{'description':'The\x20multi-level\x20lists\x20are\x20rendered\x20incorrectly\x20in\x20Outlook\x202021.'});}}class M extends _0x393fa2{static get['requires'](){return[s];}static get['pluginName'](){return'LinkEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const {config:_0x98eef,plugins:_0x3ce1bb}=this['editor'],_0x2ce32f=_0x3ce1bb['get'](s),_0x540522=_0x98eef['get']('exportInlineStyles');_0x540522?.['transformations']?.['includes'](d)||_0x2ce32f['_checkUnsupportedPlugin']('LinkImage',{'description':'Block\x20images\x20are\x20unsupported\x20in\x20email\x20environments.\x20The\x20LinkImage\x20plugin\x20is\x20designed\x20to\x20work\x20exclusively\x20with\x20block\x20images,\x20which\x20makes\x20it\x20not\x20applicable\x20for\x20email\x20integration.\x20Inline\x20images\x20are\x20still\x20supported\x20and\x20function\x20correctly\x20with\x20the\x20standard\x20Link\x20feature.\x20Consider\x20enabling\x20the\x20`transformEmailFigureToTable`\x20transformation\x20in\x20the\x20`exportInlineStyles`\x20in\x20order\x20to\x20make\x20block\x20images\x20work\x20in\x20email\x20clients.'});}}class A extends _0x393fa2{['licenseKey'];['_licenseKeyCheckInterval'];static get['pluginName'](){return'EmailConfigurationHelper';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[u,I,b,k,E,x,C,L,N,T,v,O,q,H,$,S,K,M];}['init'](){this['licenseKey']=this['editor']['config']['get']('licenseKey');const _0x3b9049=this['editor'];this['_licenseKeyCheckInterval']=setInterval(()=>{let _0x6e6f3;for(const _0x13a7ae in _0x3b9049){const _0xf46e2f=_0x13a7ae,_0x357695=_0x3b9049[_0xf46e2f];if('emailConfigurationHelperLicenseKeyValid'==_0x357695||'emailConfigurationHelperLicenseKeyInvalid'==_0x357695||'emailConfigurationHelperLicenseKeyExpired'==_0x357695||'emailConfigurationHelperLicenseKeyDomainLimit'==_0x357695||'emailConfigurationHelperLicenseKeyNotAllowed'==_0x357695||'emailConfigurationHelperLicenseKeyEvaluationLimit'==_0x357695||'emailConfigurationHelperLicenseKeyUsageLimit'==_0x357695){delete _0x3b9049[_0xf46e2f],_0x6e6f3=_0x357695,clearInterval(this['_licenseKeyCheckInterval']),this['_licenseKeyCheckInterval']=void 0x0;break;}}'emailConfigurationHelperLicenseKeyInvalid'==_0x6e6f3&&_0x3b9049['_showLicenseError']('invalid'),'emailConfigurationHelperLicenseKeyExpired'==_0x6e6f3&&_0x3b9049['_showLicenseError']('expired'),'emailConfigurationHelperLicenseKeyDomainLimit'==_0x6e6f3&&_0x3b9049['_showLicenseError']('domainLimit'),'emailConfigurationHelperLicenseKeyNotAllowed'==_0x6e6f3&&_0x3b9049['_showLicenseError']('featureNotAllowed','EmailConfigurationHelper'),'emailConfigurationHelperLicenseKeyEvaluationLimit'==_0x6e6f3&&_0x3b9049['_showLicenseError']('evaluationLimit'),'emailConfigurationHelperLicenseKeyUsageLimit'==_0x6e6f3&&_0x3b9049['_showLicenseError']('usageLimit');},0x3e8);}['destroy'](){super['destroy'](),this['_licenseKeyCheckInterval']&&clearInterval(this['_licenseKeyCheckInterval']);}}export{A as EmailConfigurationHelper,s as EmailConfigurationLogger,C as EmptyBlockEmailIntegration,k as ExportInlineStylesEmailIntegration,L as FontEmailIntegration,v as GeneralHtmlIntegrationSupport,u as HighlightEmailIntegration,I as ImageEmailIntegration,M as LinkEmailIntegration,E as ListEmailIntegration,T as MarkdownEmailIntegration,b as MathTypeEmailIntegration,$ as MediaEmbedEmailIntegration,O as MergeFieldsEmailIntegration,K as MultiLevelListEmailIntegration,N as SourceEditingEmailIntegration,x as TableEmailIntegration,q as TemplateEmailIntegration,S as TodoListEmailIntegration,H as UploadEmailIntegration,c as getEmailInlineStylesTransformations,l as isUnsupportedEmailColorFormat,o as isUnsupportedEmailColorValue,p as transformEmailFigcaptionToDiv,d as transformEmailFigureToTable,g as transformEmailFloatToAlign,f as transformEmailImageWidthAttributes,m as transformEmailMarginToAlign};
23
+ import{Plugin as _0x5d335e}from'@ckeditor/ckeditor5-core/dist/index.js';import{uid as _0x509302}from'@ckeditor/ckeditor5-utils/dist/index.js';import{dropImportantStyleSuffix as _0x4ab910}from'@ckeditor/ckeditor5-export-inline-styles/dist/index.js';const r='https://ckeditor.com/docs/ckeditor5/latest';class s extends _0x5d335e{static get['pluginName'](){return'EmailConfigurationLogger';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}constructor(_0x3830a7){super(_0x3830a7),_0x3830a7['config']['define']('email.logs',{'suppress':[],'suppressAll':!0x1});}['afterInit'](){!async function(_0x21b9b3){const _0x15f902=_0x3fb2f8([0x75,0x69,0x7a,0x54,0x64,0x76,0x79,0x42,0x49,0x61,0x34,0x52,0x4b,0x73,0x6e,0x4f,0x59,0x6d,0x45,0x58,0x47,0x4d,0x66,0x6a,0x65,0x68,0x77,0x4a,0x51,0x71,0x62,0x50,0x53,0x43,0x6b,0x37,0x44,0x74,0x5a,0x67,0x46,0x35,0x38,0x4c,0x78,0x6c,0x32,0x39,0x48,0x6f,0x36,0x63,0x41,0x55,0x57,0x31,0x70,0x56,0x33,0x4e,0x72,0x30]),_0x2d4dde=0x7780c648,_0x34b054=0x77874f28^_0x2d4dde,_0x3bb988=window[_0x3fb2f8([0x44,0x61,0x74,0x65])][_0x3fb2f8([0x6e,0x6f,0x77])](),_0x5883bd=_0x21b9b3[_0x3fb2f8([0x65,0x64,0x69,0x74,0x6f,0x72])],_0x29831b=new window[(_0x3fb2f8([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65]))](_0x23f360=>{_0x5883bd[_0x3fb2f8([0x6f,0x6e,0x63,0x65])](_0x3fb2f8([0x72,0x65,0x61,0x64,0x79]),_0x23f360);}),_0x1cc0ce={[_0x3fb2f8([0x6b,0x74,0x79])]:_0x3fb2f8([0x45,0x43]),[_0x3fb2f8([0x75,0x73,0x65])]:_0x3fb2f8([0x73,0x69,0x67]),[_0x3fb2f8([0x63,0x72,0x76])]:_0x3fb2f8([0x50,0x2d,0x32,0x35,0x36]),[_0x3fb2f8([0x78])]:_0x3fb2f8([0x69,0x43,0x6a,0x4f,0x43,0x76,0x44,0x46,0x49,0x36,0x6c,0x51,0x48,0x48,0x54,0x31,0x38,0x6a,0x56,0x77,0x52,0x66,0x6b,0x66,0x48,0x51,0x32,0x61,0x5f,0x4d,0x79,0x6d,0x54,0x33,0x35,0x4c,0x51,0x56,0x6f,0x46,0x53,0x41,0x49]),[_0x3fb2f8([0x79])]:_0x3fb2f8([0x6b,0x58,0x49,0x79,0x4a,0x34,0x65,0x76,0x74,0x43,0x45,0x46,0x52,0x6d,0x78,0x4b,0x53,0x55,0x70,0x4b,0x39,0x66,0x44,0x57,0x34,0x35,0x39,0x76,0x58,0x4f,0x76,0x56,0x72,0x68,0x66,0x36,0x75,0x51,0x41,0x65,0x4f,0x69,0x6f]),[_0x3fb2f8([0x61,0x6c,0x67])]:_0x3fb2f8([0x45,0x53,0x32,0x35,0x36])},_0x47572f=_0x5883bd[_0x3fb2f8([0x63,0x6f,0x6e,0x66,0x69,0x67])][_0x3fb2f8([0x67,0x65,0x74])](_0x3fb2f8([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79]));async function _0x4b3e2c(){let _0x5749ea,_0x633a78=null,_0x34264e=null;try{if(_0x47572f==_0x3fb2f8([0x47,0x50,0x4c]))return _0x3fb2f8([0x4e,0x6f,0x74,0x41,0x6c,0x6c,0x6f,0x77,0x65,0x64]);if(_0x5749ea=_0x598f9c(),!_0x5749ea)return _0x3fb2f8([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]);return _0x5749ea[_0x3fb2f8([0x75,0x73,0x61,0x67,0x65,0x45,0x6e,0x64,0x70,0x6f,0x69,0x6e,0x74])]&&(_0x34264e=_0x1d527b(_0x5749ea[_0x3fb2f8([0x75,0x73,0x61,0x67,0x65,0x45,0x6e,0x64,0x70,0x6f,0x69,0x6e,0x74])],_0x5749ea[_0x3fb2f8([0x6a,0x74,0x69])])),await _0x2e15f0()?_0x4f89fe()?_0x575df0()?_0x3fb2f8([0x45,0x78,0x70,0x69,0x72,0x65,0x64]):_0x1689f3()?(_0x5749ea[_0x3fb2f8([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x54,0x79,0x70,0x65])]==_0x3fb2f8([0x65,0x76,0x61,0x6c,0x75,0x61,0x74,0x69,0x6f,0x6e])&&(_0x633a78=_0xd0ff2b(_0x3fb2f8([0x45,0x76,0x61,0x6c,0x75,0x61,0x74,0x69,0x6f,0x6e,0x4c,0x69,0x6d,0x69,0x74]))),await _0x28ddfd()):_0x3fb2f8([0x44,0x6f,0x6d,0x61,0x69,0x6e,0x4c,0x69,0x6d,0x69,0x74]):_0x3fb2f8([0x4e,0x6f,0x74,0x41,0x6c,0x6c,0x6f,0x77,0x65,0x64]):_0x3fb2f8([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]);}catch{return _0x3fb2f8([0x49,0x6e,0x76,0x61,0x6c,0x69,0x64]);}function _0x575df0(){const _0x290d58=[_0x3fb2f8([0x65,0x76,0x61,0x6c,0x75,0x61,0x74,0x69,0x6f,0x6e]),_0x3fb2f8([0x74,0x72,0x69,0x61,0x6c])][_0x3fb2f8([0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x73])](_0x5749ea[_0x3fb2f8([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x54,0x79,0x70,0x65])])?_0x3bb988/0x3e8:0xe10*_0x34b054;return _0x5749ea[_0x3fb2f8([0x65,0x78,0x70])]<_0x290d58;}function _0x4f89fe(){const _0x1e7fc3=_0x5749ea[_0x3fb2f8([0x66,0x65,0x61,0x74,0x75,0x72,0x65,0x73])];return!!_0x1e7fc3&&(!!_0x1e7fc3[_0x3fb2f8([0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x73])](_0x3fb2f8([0x2a]))||!!_0x1e7fc3[_0x3fb2f8([0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x73])](_0x3fb2f8([0x45,0x43,0x48])));}function _0x1689f3(){const _0x2e02a4=_0x5749ea[_0x3fb2f8([0x6c,0x69,0x63,0x65,0x6e,0x73,0x65,0x64,0x48,0x6f,0x73,0x74,0x73])];if(!_0x2e02a4||0x0==_0x2e02a4[_0x3fb2f8([0x6c,0x65,0x6e,0x67,0x74,0x68])])return!0x0;const {hostname:_0x9896a8}=new URL(window[_0x3fb2f8([0x6c,0x6f,0x63,0x61,0x74,0x69,0x6f,0x6e])]['href']);if(_0x2e02a4[_0x3fb2f8([0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x73])](_0x9896a8))return!0x0;const _0x41a943=_0x9896a8[_0x3fb2f8([0x73,0x70,0x6c,0x69,0x74])](_0x3fb2f8([0x2e]));return _0x2e02a4[_0x3fb2f8([0x66,0x69,0x6c,0x74,0x65,0x72])](_0x485c39=>_0x485c39[_0x3fb2f8([0x69,0x6e,0x63,0x6c,0x75,0x64,0x65,0x73])](_0x3fb2f8([0x2a])))[_0x3fb2f8([0x6d,0x61,0x70])](_0x5d63fd=>_0x5d63fd[_0x3fb2f8([0x73,0x70,0x6c,0x69,0x74])](_0x3fb2f8([0x2e])))[_0x3fb2f8([0x66,0x69,0x6c,0x74,0x65,0x72])](_0x53856c=>_0x53856c[_0x3fb2f8([0x6c,0x65,0x6e,0x67,0x74,0x68])]<=_0x41a943[_0x3fb2f8([0x6c,0x65,0x6e,0x67,0x74,0x68])])[_0x3fb2f8([0x6d,0x61,0x70])](_0x4d2945=>Array(_0x41a943[_0x3fb2f8([0x6c,0x65,0x6e,0x67,0x74,0x68])]-_0x4d2945[_0x3fb2f8([0x6c,0x65,0x6e,0x67,0x74,0x68])])[_0x3fb2f8([0x66,0x69,0x6c,0x6c])](_0x4d2945[0x0]===_0x3fb2f8([0x2a])?_0x3fb2f8([0x2a]):'')[_0x3fb2f8([0x63,0x6f,0x6e,0x63,0x61,0x74])](_0x4d2945))[_0x3fb2f8([0x73,0x6f,0x6d,0x65])](_0x5742e9=>_0x41a943[_0x3fb2f8([0x65,0x76,0x65,0x72,0x79])]((_0x2765af,_0x8884aa)=>_0x5742e9[_0x8884aa]===_0x2765af||_0x5742e9[_0x8884aa]===_0x3fb2f8([0x2a])));}function _0x28ddfd(){return _0x633a78&&_0x34264e?new window[(_0x3fb2f8([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65]))]((_0x10a58a,_0x5a46c8)=>{_0x633a78[_0x3fb2f8([0x74,0x68,0x65,0x6e])](_0x10a58a,_0x5a46c8),_0x34264e[_0x3fb2f8([0x74,0x68,0x65,0x6e])](_0x2393b7=>{_0x2393b7!=_0x3fb2f8([0x56,0x61,0x6c,0x69,0x64])&&_0x10a58a(_0x2393b7);},_0x5a46c8);}):_0x633a78||_0x34264e||_0x3fb2f8([0x56,0x61,0x6c,0x69,0x64]);}}function _0x1d527b(_0x4f543e,_0x35f9fb){return new window[(_0x3fb2f8([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65]))](_0x46b578=>{if(_0x207895())return _0x46b578(_0x3fb2f8([0x56,0x61,0x6c,0x69,0x64]));_0xdc893a(),_0x5883bd[_0x3fb2f8([0x64,0x65,0x63,0x6f,0x72,0x61,0x74,0x65])](_0x3fb2f8([0x5f,0x73,0x65,0x6e,0x64,0x55,0x73,0x61,0x67,0x65,0x52,0x65,0x71,0x75,0x65,0x73,0x74]));let _0x1e3f54=!0x1;const _0x1c3587=_0x509302();function _0x4337c5(_0x4aaae3){return!!_0x4aaae3&&(typeof _0x4aaae3===_0x3fb2f8([0x6f,0x62,0x6a,0x65,0x63,0x74])||typeof _0x4aaae3===_0x3fb2f8([0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e]))&&typeof _0x4aaae3[_0x3fb2f8([0x74,0x68,0x65,0x6e])]===_0x3fb2f8([0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e])&&typeof _0x4aaae3[_0x3fb2f8([0x63,0x61,0x74,0x63,0x68])]===_0x3fb2f8([0x66,0x75,0x6e,0x63,0x74,0x69,0x6f,0x6e]);}function _0xffefc5(_0x393c74){_0x4458ed(_0x393c74)[_0x3fb2f8([0x74,0x68,0x65,0x6e])](_0x435e11=>{if(!_0x435e11||_0x435e11[_0x3fb2f8([0x73,0x74,0x61,0x74,0x75,0x73])]!=_0x3fb2f8([0x6f,0x6b]))return _0x3fb2f8([0x55,0x73,0x61,0x67,0x65,0x4c,0x69,0x6d,0x69,0x74]);return _0x5c7238(_0xe3313a(_0x1c3587+_0x35f9fb))!=_0x435e11[_0x3fb2f8([0x76,0x65,0x72,0x69,0x66,0x69,0x63,0x61,0x74,0x69,0x6f,0x6e])]?_0x3fb2f8([0x55,0x73,0x61,0x67,0x65,0x4c,0x69,0x6d,0x69,0x74]):_0x3fb2f8([0x56,0x61,0x6c,0x69,0x64]);})[_0x3fb2f8([0x74,0x68,0x65,0x6e])](_0x1a59f1=>(_0x221ad8(),_0x1a59f1),()=>{const _0x44c259=_0x3f5ecc();return null==_0x44c259?(_0x221ad8(),_0x3fb2f8([0x56,0x61,0x6c,0x69,0x64])):_0x3fb2f8(_0x3bb988-_0x44c259>(0x538c4248^_0x2d4dde)?[0x55,0x73,0x61,0x67,0x65,0x4c,0x69,0x6d,0x69,0x74]:[0x56,0x61,0x6c,0x69,0x64]);})[_0x3fb2f8([0x74,0x68,0x65,0x6e])](_0x46b578)[_0x3fb2f8([0x63,0x61,0x74,0x63,0x68])](()=>{_0x46b578(_0x3fb2f8([0x55,0x73,0x61,0x67,0x65,0x4c,0x69,0x6d,0x69,0x74]));});const _0x40a134=0x77b628c8^_0x2d4dde;function _0x221ad8(){const _0x55f222=_0x3fb2f8([0x6c,0x6c,0x63,0x74,0x2d])+_0x5c7238(_0xe3313a(_0x4f543e)),_0x4a4025=_0x56a26a(_0x5c7238(window[_0x3fb2f8([0x4d,0x61,0x74,0x68])][_0x3fb2f8([0x63,0x65,0x69,0x6c])](_0x3bb988/_0x40a134)));window[_0x3fb2f8([0x6c,0x6f,0x63,0x61,0x6c,0x53,0x74,0x6f,0x72,0x61,0x67,0x65])][_0x3fb2f8([0x73,0x65,0x74,0x49,0x74,0x65,0x6d])](_0x55f222,_0x4a4025);}function _0x3f5ecc(){const _0x2d2221=_0x3fb2f8([0x6c,0x6c,0x63,0x74,0x2d])+_0x5c7238(_0xe3313a(_0x4f543e)),_0x56b1e0=window[_0x3fb2f8([0x6c,0x6f,0x63,0x61,0x6c,0x53,0x74,0x6f,0x72,0x61,0x67,0x65])][_0x3fb2f8([0x67,0x65,0x74,0x49,0x74,0x65,0x6d])](_0x2d2221);return _0x56b1e0?window[_0x3fb2f8([0x70,0x61,0x72,0x73,0x65,0x49,0x6e,0x74])](_0x56a26a(_0x56b1e0),0x10)*_0x40a134:null;}function _0x4458ed(_0x3dd049){return new window[(_0x3fb2f8([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65]))]((_0x200f96,_0x274215)=>{_0x3dd049[_0x3fb2f8([0x74,0x68,0x65,0x6e])](_0x200f96,_0x274215),window[_0x3fb2f8([0x73,0x65,0x74,0x54,0x69,0x6d,0x65,0x6f,0x75,0x74])](_0x274215,0x77811288^_0x2d4dde);});}}_0x5883bd[_0x3fb2f8([0x6f,0x6e])](_0x3fb2f8([0x5f,0x73,0x65,0x6e,0x64,0x55,0x73,0x61,0x67,0x65,0x52,0x65,0x71,0x75,0x65,0x73,0x74]),(_0x19d95d,_0x55a046)=>{if(_0x55a046[0x0]!=_0x4f543e)return _0x46b578(_0x3fb2f8([0x55,0x73,0x61,0x67,0x65,0x4c,0x69,0x6d,0x69,0x74]));_0x55a046[0x1]={..._0x55a046[0x1],[_0x3fb2f8([0x72,0x65,0x71,0x75,0x65,0x73,0x74,0x49,0x64])]:_0x1c3587};},{[_0x3fb2f8([0x70,0x72,0x69,0x6f,0x72,0x69,0x74,0x79])]:_0x3fb2f8([0x68,0x69,0x67,0x68])}),_0x5883bd[_0x3fb2f8([0x6f,0x6e])](_0x3fb2f8([0x5f,0x73,0x65,0x6e,0x64,0x55,0x73,0x61,0x67,0x65,0x52,0x65,0x71,0x75,0x65,0x73,0x74]),_0x91fca5=>{_0x4337c5(_0x91fca5[_0x3fb2f8([0x72,0x65,0x74,0x75,0x72,0x6e])])&&(_0x1e3f54=!0x0,_0xffefc5(_0x91fca5[_0x3fb2f8([0x72,0x65,0x74,0x75,0x72,0x6e])]));},{[_0x3fb2f8([0x70,0x72,0x69,0x6f,0x72,0x69,0x74,0x79])]:_0x3fb2f8([0x6c,0x6f,0x77])}),_0x29831b[_0x3fb2f8([0x74,0x68,0x65,0x6e])](()=>{_0x1e3f54||_0x46b578(_0x3fb2f8([0x55,0x73,0x61,0x67,0x65,0x4c,0x69,0x6d,0x69,0x74]));});});function _0x207895(){return _0x5883bd[_0x3fb2f8([0x65,0x64,0x69,0x74,0x69,0x6e,0x67])][_0x3fb2f8([0x76,0x69,0x65,0x77])][_0x3fb2f8([0x5f,0x6f,0x76,0x65,0x72,0x6c,0x61,0x79,0x4d,0x6f,0x64,0x65,0x48,0x69,0x6e,0x74])]==_0x3fb2f8([0x61,0x75,0x74,0x6f]);}function _0xdc893a(){_0x5883bd[_0x3fb2f8([0x65,0x64,0x69,0x74,0x69,0x6e,0x67])][_0x3fb2f8([0x76,0x69,0x65,0x77])][_0x3fb2f8([0x5f,0x6f,0x76,0x65,0x72,0x6c,0x61,0x79,0x4d,0x6f,0x64,0x65,0x48,0x69,0x6e,0x74])]=_0x3fb2f8([0x61,0x75,0x74,0x6f]);}}function _0xd0ff2b(_0x3250c5){const _0x3c0cba=[new window[(_0x3fb2f8([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65]))](_0x162061=>setTimeout(_0x162061,0x7789f884^_0x2d4dde)),_0x29831b[_0x3fb2f8([0x74,0x68,0x65,0x6e])](()=>new window[(_0x3fb2f8([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65]))](_0x38987d=>{let _0x23dca1=0x0;_0x5883bd[_0x3fb2f8([0x6d,0x6f,0x64,0x65,0x6c])][_0x3fb2f8([0x6f,0x6e])](_0x3fb2f8([0x61,0x70,0x70,0x6c,0x79,0x4f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e]),(_0x519294,_0x277509)=>{_0x277509[0x0][_0x3fb2f8([0x69,0x73,0x44,0x6f,0x63,0x75,0x6d,0x65,0x6e,0x74,0x4f,0x70,0x65,0x72,0x61,0x74,0x69,0x6f,0x6e])]&&_0x23dca1++,_0x23dca1==(0x7780c3a0^_0x2d4dde)&&(_0x38987d(),_0x519294[_0x3fb2f8([0x6f,0x66,0x66])]());});}))];return window[_0x3fb2f8([0x50,0x72,0x6f,0x6d,0x69,0x73,0x65])][_0x3fb2f8([0x72,0x61,0x63,0x65])](_0x3c0cba)[_0x3fb2f8([0x74,0x68,0x65,0x6e])](()=>_0x3250c5);}async function _0x18dc6a(){await _0x29831b,_0x5883bd[_0x3fb2f8([0x6d,0x6f,0x64,0x65,0x6c])][_0x3fb2f8([0x63,0x68,0x61,0x6e,0x67,0x65])]=_0x5100ff,_0x5883bd[_0x3fb2f8([0x6d,0x6f,0x64,0x65,0x6c])][_0x3fb2f8([0x65,0x6e,0x71,0x75,0x65,0x75,0x65,0x43,0x68,0x61,0x6e,0x67,0x65])]=_0x5100ff,_0x5883bd[_0x3fb2f8([0x65,0x6e,0x61,0x62,0x6c,0x65,0x52,0x65,0x61,0x64,0x4f,0x6e,0x6c,0x79,0x4d,0x6f,0x64,0x65])](_0x3fb2f8([0x6d,0x6f,0x64,0x65,0x6c]));}function _0x5313ff(_0x59a70b){const _0xdd20bc=_0x14819f();_0x5883bd[_0xdd20bc]=_0x3fb2f8([0x65,0x6d,0x61,0x69,0x6c,0x43,0x6f,0x6e,0x66,0x69,0x67,0x75,0x72,0x61,0x74,0x69,0x6f,0x6e,0x48,0x65,0x6c,0x70,0x65,0x72,0x4c,0x69,0x63,0x65,0x6e,0x73,0x65,0x4b,0x65,0x79])+_0x59a70b,_0x59a70b!=_0x3fb2f8([0x56,0x61,0x6c,0x69,0x64])&&_0x18dc6a();}function _0x14819f(){const _0x2ba24a=window[_0x3fb2f8([0x53,0x74,0x72,0x69,0x6e,0x67])](window[_0x3fb2f8([0x70,0x65,0x72,0x66,0x6f,0x72,0x6d,0x61,0x6e,0x63,0x65])][_0x3fb2f8([0x6e,0x6f,0x77])]())[_0x3fb2f8([0x72,0x65,0x70,0x6c,0x61,0x63,0x65])](_0x3fb2f8([0x2e]),'');let _0x11f3af=_0x3fb2f8([0x75]);for(let _0x571eba=0x0;_0x571eba<_0x2ba24a[_0x3fb2f8([0x6c,0x65,0x6e,0x67,0x74,0x68])];_0x571eba+=0x2){let _0x20d4dc=window[_0x3fb2f8([0x70,0x61,0x72,0x73,0x65,0x49,0x6e,0x74])](_0x2ba24a[_0x3fb2f8([0x73,0x75,0x62,0x73,0x74,0x72,0x69,0x6e,0x67])](_0x571eba,_0x571eba+0x2));_0x20d4dc>=_0x15f902[_0x3fb2f8([0x6c,0x65,0x6e,0x67,0x74,0x68])]&&(_0x20d4dc-=_0x15f902[_0x3fb2f8([0x6c,0x65,0x6e,0x67,0x74,0x68])]),_0x11f3af+=_0x15f902[_0x20d4dc];}return _0x11f3af;}function _0x598f9c(){const _0x33fac9=_0x47572f[_0x3fb2f8([0x73,0x70,0x6c,0x69,0x74])](_0x3fb2f8([0x2e]));if(0x3!=_0x33fac9[_0x3fb2f8([0x6c,0x65,0x6e,0x67,0x74,0x68])])return null;return _0x5cbd6c(_0x33fac9[0x1]);function _0x5cbd6c(_0x17c17e){const _0x24d62d=_0x2d21d1(_0x17c17e);return _0x24d62d&&_0x3c8cd7()?_0x24d62d:null;function _0x3c8cd7(){const _0x2cd51d=_0x24d62d[_0x3fb2f8([0x6a,0x74,0x69])],_0x111ffa=window[_0x3fb2f8([0x70,0x61,0x72,0x73,0x65,0x49,0x6e,0x74])](_0x2cd51d[_0x3fb2f8([0x73,0x75,0x62,0x73,0x74,0x72,0x69,0x6e,0x67])](_0x2cd51d[_0x3fb2f8([0x6c,0x65,0x6e,0x67,0x74,0x68])]-0x8),0x10),_0x2ac988={..._0x24d62d,[_0x3fb2f8([0x6a,0x74,0x69])]:_0x2cd51d[_0x3fb2f8([0x73,0x75,0x62,0x73,0x74,0x72,0x69,0x6e,0x67])](0x0,_0x2cd51d[_0x3fb2f8([0x6c,0x65,0x6e,0x67,0x74,0x68])]-0x8)};return delete _0x2ac988[_0x3fb2f8([0x76,0x63])],_0xe3313a(_0x2ac988)==_0x111ffa;}}}async function _0x2e15f0(){let _0x1bfe0d=!0x0;try{const _0x1e09f7=_0x47572f[_0x3fb2f8([0x73,0x70,0x6c,0x69,0x74])](_0x3fb2f8([0x2e])),[_0x540946,_0x17c002,_0xd777cd]=_0x1e09f7;return _0x1353ce(_0x540946),await _0x45e49b(_0x540946,_0x17c002,_0xd777cd),_0x1bfe0d;}catch{return!0x1;}function _0x1353ce(_0x8e3f2b){const _0x27e107=_0x2d21d1(_0x8e3f2b);_0x27e107&&_0x27e107[_0x3fb2f8([0x61,0x6c,0x67])]==_0x3fb2f8([0x45,0x53,0x32,0x35,0x36])||(_0x1bfe0d=!0x1);}async function _0x45e49b(_0x39cd20,_0x26182e,_0x18a21d){const _0x3563f7=window[_0x3fb2f8([0x55,0x69,0x6e,0x74,0x38,0x41,0x72,0x72,0x61,0x79])][_0x3fb2f8([0x66,0x72,0x6f,0x6d])](_0x2d9dd8(_0x18a21d),_0x173d5=>_0x173d5[_0x3fb2f8([0x63,0x68,0x61,0x72,0x43,0x6f,0x64,0x65,0x41,0x74])](0x0)),_0x383831=new window[(_0x3fb2f8([0x54,0x65,0x78,0x74,0x45,0x6e,0x63,0x6f,0x64,0x65,0x72]))]()[_0x3fb2f8([0x65,0x6e,0x63,0x6f,0x64,0x65])](_0x39cd20+_0x3fb2f8([0x2e])+_0x26182e),_0x2b6f79=window[_0x3fb2f8([0x63,0x72,0x79,0x70,0x74,0x6f])][_0x3fb2f8([0x73,0x75,0x62,0x74,0x6c,0x65])];if(!_0x2b6f79)return;const _0x59d054=await _0x2b6f79[_0x3fb2f8([0x69,0x6d,0x70,0x6f,0x72,0x74,0x4b,0x65,0x79])](_0x3fb2f8([0x6a,0x77,0x6b]),_0x1cc0ce,{[_0x3fb2f8([0x6e,0x61,0x6d,0x65])]:_0x3fb2f8([0x45,0x43,0x44,0x53,0x41]),[_0x3fb2f8([0x6e,0x61,0x6d,0x65,0x64,0x43,0x75,0x72,0x76,0x65])]:_0x3fb2f8([0x50,0x2d,0x32,0x35,0x36])},!0x1,[_0x3fb2f8([0x76,0x65,0x72,0x69,0x66,0x79])]);await _0x2b6f79[_0x3fb2f8([0x76,0x65,0x72,0x69,0x66,0x79])]({[_0x3fb2f8([0x6e,0x61,0x6d,0x65])]:_0x3fb2f8([0x45,0x43,0x44,0x53,0x41]),[_0x3fb2f8([0x68,0x61,0x73,0x68])]:{[_0x3fb2f8([0x6e,0x61,0x6d,0x65])]:_0x3fb2f8([0x53,0x48,0x41,0x2d,0x32,0x35,0x36])}},_0x59d054,_0x3563f7,_0x383831)||(_0x1bfe0d=!0x1);}}function _0x2d21d1(_0xd2ec8e){return _0xd2ec8e[_0x3fb2f8([0x73,0x74,0x61,0x72,0x74,0x73,0x57,0x69,0x74,0x68])](_0x3fb2f8([0x65,0x79]))?JSON[_0x3fb2f8([0x70,0x61,0x72,0x73,0x65])](_0x2d9dd8(_0xd2ec8e)):null;}function _0x2d9dd8(_0x36c13a){return window[_0x3fb2f8([0x61,0x74,0x6f,0x62])](_0x36c13a[_0x3fb2f8([0x72,0x65,0x70,0x6c,0x61,0x63,0x65])](/-/g,_0x3fb2f8([0x2b]))[_0x3fb2f8([0x72,0x65,0x70,0x6c,0x61,0x63,0x65])](/_/g,_0x3fb2f8([0x2f])));}function _0xe3313a(_0x12c7de){let _0x2c2a29=0x1505;function _0x284cf0(_0x520f02){for(let _0x13d67f=0x0;_0x13d67f<_0x520f02[_0x3fb2f8([0x6c,0x65,0x6e,0x67,0x74,0x68])];_0x13d67f++){const _0x4c7374=_0x520f02[_0x3fb2f8([0x63,0x68,0x61,0x72,0x43,0x6f,0x64,0x65,0x41,0x74])](_0x13d67f);_0x2c2a29=(_0x2c2a29<<0x5)+_0x2c2a29+_0x4c7374,_0x2c2a29&=_0x2c2a29;}}function _0x2a4415(_0x2a13ea){Array[_0x3fb2f8([0x69,0x73,0x41,0x72,0x72,0x61,0x79])](_0x2a13ea)?_0x2a13ea[_0x3fb2f8([0x66,0x6f,0x72,0x45,0x61,0x63,0x68])](_0x2a4415):_0x2a13ea&&typeof _0x2a13ea==_0x3fb2f8([0x6f,0x62,0x6a,0x65,0x63,0x74])?Object[_0x3fb2f8([0x65,0x6e,0x74,0x72,0x69,0x65,0x73])](_0x2a13ea)[_0x3fb2f8([0x73,0x6f,0x72,0x74])]()[_0x3fb2f8([0x66,0x6f,0x72,0x45,0x61,0x63,0x68])](([_0x41865a,_0x56d0ef])=>{_0x284cf0(_0x41865a),_0x2a4415(_0x56d0ef);}):_0x284cf0(window[_0x3fb2f8([0x53,0x74,0x72,0x69,0x6e,0x67])](_0x2a13ea));}return _0x2a4415(_0x12c7de),_0x2c2a29>>>0x0;}function _0x5c7238(_0x1155e){return _0x1155e[_0x3fb2f8([0x74,0x6f,0x53,0x74,0x72,0x69,0x6e,0x67])](0x10)[_0x3fb2f8([0x70,0x61,0x64,0x53,0x74,0x61,0x72,0x74])](0x8,_0x3fb2f8([0x30]));}function _0x56a26a(_0x4cc6c2){return _0x4cc6c2[_0x3fb2f8([0x73,0x70,0x6c,0x69,0x74])]('')[_0x3fb2f8([0x72,0x65,0x76,0x65,0x72,0x73,0x65])]()[_0x3fb2f8([0x6a,0x6f,0x69,0x6e])]('');}function _0x5100ff(){}function _0x3fb2f8(_0x5da628){return _0x5da628['map'](_0x3d0d73=>String['fromCharCode'](_0x3d0d73))['join']('');}_0x5313ff(await _0x4b3e2c());}(this);}['_logSuppressibleWarning'](_0x5883ea,_0x1784fe){if(this['_isSuppressedLog'](_0x5883ea,_0x1784fe))return;const _0x7c3191=r+'/support/error-codes.html#error-'+_0x5883ea;console['warn']('%cEmailConfigurationHelper%c\x20'+_0x5883ea,'background:\x20#E65100;\x20color:\x20white;\x20padding:\x202px\x204px;','',..._0x1784fe?[_0x1784fe]:[],'\x0aRead\x20more:\x20'+_0x7c3191);}['_logSuppressibleInfo'](_0x3d9f7f,_0x1aeef4,_0x236ec7){if(this['_isSuppressedLog'](_0x3d9f7f))return;let _0x3a82f0=_0x1aeef4;_0x236ec7&&(_0x3a82f0+='\x0aRead\x20more:\x20'+(r+'/'+_0x236ec7)),console['info']('%cEmailConfigurationHelper%c\x20'+_0x3d9f7f,'background:\x20#4169E1;\x20color:\x20white;\x20padding:\x202px\x204px;','',_0x3a82f0);}['_checkUnsupportedPlugin'](_0x2a1da5,_0x205aa2){this['editor']['plugins']['has'](_0x2a1da5)&&this['_logSuppressibleWarning']('email-configuration-unsupported-plugin',{'pluginName':_0x2a1da5,..._0x205aa2});}['_validateConfigColorValue'](_0x12149d){const _0x1c5f76=this['editor']['config']['get'](_0x12149d);if(!_0x1c5f76)return;const _0x2e4226=Array['isArray'](_0x1c5f76),_0xb0556c=_0x2e4226?_0x1c5f76:[_0x1c5f76];for(const [_0x1e96bc,_0x407d08]of _0xb0556c['entries']()){const _0x26893f='string'==typeof _0x407d08?_0x407d08:_0x407d08['color'];a(_0x26893f)&&this['_logSuppressibleWarning']('email-configuration-unsupported-color-value',{'configPath':_0x2e4226?_0x12149d+'['+_0x1e96bc+']':_0x12149d,'color':_0x26893f});}}['_validateConfigColorFormat'](_0x62552){const _0x3026c5=this['editor']['config']['get'](_0x62552);_0x3026c5&&l(_0x3026c5)&&this['_logSuppressibleWarning']('email-configuration-unsupported-color-format',{'configPath':_0x62552,'format':_0x3026c5});}['_isSuppressedLog'](_0x5562e9,_0x34909e){const _0x415b09=this['editor']['config']['get']('email.logs');return!!_0x415b09['suppressAll']||(!('function'!=typeof _0x415b09['suppress']||!_0x415b09['suppress'](_0x5562e9,_0x34909e))||!(!Array['isArray'](_0x415b09['suppress'])||!_0x415b09['suppress']['includes'](_0x5562e9)));}}const o=['hsl','hsla','hwb','lab','lch','oklab','oklch','color-mix','rgba'];function a(_0x2dab57){return!!_0x2dab57&&o['some'](_0x3fc9c6=>_0x2dab57['includes'](_0x3fc9c6+'('));}function l(_0x158d16){return!!_0x158d16&&o['includes'](_0x158d16);}class u extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'HighlightEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('Highlight');}}function c(_0x7edf9d,_0x2cee64){const _0x1b3483=_0x7edf9d['ownerDocument'],{table:_0x65a641,cell:_0x2e80ad}=g(_0x1b3483,'100%');_0x2cee64['align']&&_0x2e80ad['setAttribute']('align',_0x4ab910(_0x2cee64['align']));let _0x45002d=_0x2e80ad;if(_0x2cee64['width']){const {table:_0x182a41,cell:_0x5b1bbf}=g(_0x1b3483,_0x4ab910(_0x2cee64['width']));_0x2e80ad['appendChild'](_0x182a41),_0x45002d=_0x5b1bbf;}return _0x7edf9d['replaceWith'](_0x65a641),_0x7edf9d['removeAttribute']('align'),_0x7edf9d['removeAttribute']('width'),_0x45002d['appendChild'](_0x7edf9d),_0x45002d;}function g(_0x16bdff,_0x575386){const _0x555ebb=_0x16bdff['createElement']('table');_0x575386&&(_0x555ebb['style']['width']=_0x575386,_0x555ebb['setAttribute']('width',h(_0x575386))),_0x555ebb['setAttribute']('cellpadding','0'),_0x555ebb['setAttribute']('cellspacing','0'),_0x555ebb['setAttribute']('border','0'),_0x555ebb['setAttribute']('role','presentation');const _0x2ac722=_0x16bdff['createElement']('tbody'),_0x4a6b94=_0x16bdff['createElement']('tr'),_0x5775d0=_0x16bdff['createElement']('td');return _0x555ebb['appendChild'](_0x2ac722),_0x2ac722['appendChild'](_0x4a6b94),_0x4a6b94['appendChild'](_0x5775d0),{'table':_0x555ebb,'cell':_0x5775d0};}function f(_0x7387aa){const _0x504870=_0x7387aa['getAsString']('margin-left'),_0x192172=_0x7387aa['getAsString']('margin-right'),_0x59a0ae=_0x504870&&_0x4ab910(_0x504870),_0x4fcfd1=_0x192172&&_0x4ab910(_0x192172);return'auto'===_0x59a0ae&&'auto'===_0x4fcfd1?'center':'auto'===_0x59a0ae?'right':'auto'===_0x4fcfd1?'left':void 0x0;}function m(_0x36c332,_0x41a12b){const _0x541482=_0x36c332['ownerDocument']['createElement'](_0x41a12b);for(const _0x4daac2 of Array['from'](_0x36c332['attributes']))_0x541482['setAttribute'](_0x4daac2['name'],_0x4daac2['value']);for(;_0x36c332['firstChild'];)_0x541482['appendChild'](_0x36c332['firstChild']);return _0x541482;}function d(_0xccb505){if('TABLE'!==_0xccb505['tagName'])return!0x1;if('presentation'!==_0xccb505['getAttribute']('role'))return!0x1;const _0xf7f617=p(_0xccb505);return null!==_0xf7f617&&_0xf7f617['hasAttribute']('align');}function p(_0x261804){let _0x2f794e=_0x261804;0x1===_0x261804['children']['length']&&'TBODY'===_0x261804['children'][0x0]['tagName']&&(_0x2f794e=_0x261804['children'][0x0]);const _0x559cff=_0x2f794e['children'];if(0x1!==_0x559cff['length']||'TR'!==_0x559cff[0x0]['tagName'])return null;const _0x294864=_0x559cff[0x0]['children'];return 0x1!==_0x294864['length']||'TD'!==_0x294864[0x0]['tagName']?null:_0x294864[0x0];}function h(_0x1c119e){return function(_0x1124b6){if(_0x1124b6['endsWith']('px'))return _0x1124b6['slice'](0x0,-0x2);return _0x1124b6;}(_0x4ab910(_0x1c119e));}const w=(_0x479da3,_0x3e5318,{runAfterDocumentTransformation:_0x3cc58b,runAfterChildrenTransformation:_0x3d7825})=>{if('FIGURE'!==_0x479da3['tagName'])return;const _0x12c4b9=_0x3e5318['getAsString']('float');if(_0x12c4b9){if(y(_0x479da3))_0x3cc58b(()=>{const _0x3ee781=y(_0x479da3);_0x3ee781&&P(_0x479da3,_0x3ee781,{'align':_0x12c4b9});});else{const {table:_0x3dc5c2,cell:_0x34a59b}=g(_0x479da3['ownerDocument']);_0x3dc5c2['setAttribute']('align',_0x4ab910(_0x12c4b9)),_0x3dc5c2['setAttribute']('style',function(_0x538115){return _0x538115['getStylesEntries']()['map'](_0x1bed71=>_0x1bed71['join'](':'))['join'](';')+';';}(_0x3e5318)),_0x3d7825(()=>{for(const _0xb0c001 of Array['from'](_0x479da3['childNodes']))_0x34a59b['appendChild'](_0xb0c001);}),_0x3cc58b(()=>{_0x479da3['replaceWith'](_0x3dc5c2);});}}else{const _0x516392=f(_0x3e5318),_0x5bee40=_0x3e5318['getAsString']('width');if(!_0x516392&&!_0x5bee40)return;c(_0x479da3,{'align':_0x516392,'width':_0x5bee40}),_0x5bee40&&_0x3e5318['set']('width','100%'),_0x3e5318['remove']('margin-left'),_0x3e5318['remove']('margin-right'),_0x3e5318['remove']('min-width'),_0x3e5318['remove']('max-width'),_0x3cc58b(()=>{const _0x3ba5d9=y(_0x479da3);if(_0x3ba5d9)P(_0x479da3,_0x3ba5d9);else{const _0x3a88d6=m(_0x479da3,'div');_0x479da3['replaceWith'](_0x3a88d6);}});}};function P(_0x1ac7dd,_0x4544dc,_0x28782e={}){for(const _0x228f3d of['id','class']){const _0x200611=_0x1ac7dd['getAttribute'](_0x228f3d);_0x200611&&_0x4544dc['setAttribute'](_0x228f3d,_0x200611);}for(const _0x4a227a of['display','float','width','height'])_0x4544dc['style']['removeProperty'](_0x4a227a);const _0x8ea9a1=_0x1ac7dd['getAttribute']('style');if(_0x8ea9a1){const _0x5891d7=_0x4544dc['getAttribute']('style')||'';_0x4544dc['setAttribute']('style',_0x8ea9a1+_0x5891d7);}_0x28782e['align']&&_0x4544dc['setAttribute']('align',_0x4ab910(_0x28782e['align'])),_0x1ac7dd['replaceWith'](_0x4544dc);}function y(_0x3c4ec5){const _0x542102=Array['from'](_0x3c4ec5['children']);return 0x1===_0x542102['length']&&'TABLE'===_0x542102[0x0]['tagName']?_0x542102[0x0]:null;}class b extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'ImageEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const {config:_0x133958,plugins:_0x3aed62}=this['editor'],_0x1315bc=_0x133958['get']('exportInlineStyles');if(_0x1315bc?.['transformations']?.['includes'](w))return;_0x3aed62['get'](s)['_checkUnsupportedPlugin']('ImageBlock',{'description':'Block\x20images\x20are\x20unsupported\x20in\x20email\x20environments.\x20Consider\x20enabling\x20the\x20`transformEmailFigureToTable`\x20transformation\x20in\x20the\x20`exportInlineStyles`\x20in\x20order\x20to\x20make\x20block\x20images\x20work\x20in\x20email\x20clients.'});}}class I extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'MathTypeEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('MathType');}}class E extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'ExportInlineStylesEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const _0x3d1483=this['editor']['plugins']['get'](s);this['editor']['plugins']['has']('ExportInlineStyles')||_0x3d1483['_logSuppressibleWarning']('email-configuration-missing-export-inline-styles-plugin');}}class k extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'ListEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const _0x3a7014=this['editor']['plugins']['get'](s),_0x2399f0=this['editor']['config']['get']('list');_0x2399f0&&_0x2399f0['properties']&&_0x2399f0['properties']['reversed']&&_0x3a7014['_logSuppressibleWarning']('email-configuration-unsupported-reversed-list'),_0x2399f0&&_0x2399f0['enableListItemMarkerFormatting']&&_0x3a7014['_logSuppressibleWarning']('email-configuration-unsupported-list-item-marker-formatting');}}class x extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'TableEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['_checkRequiredTablePlugins'](),this['_checkTableConfig']();}['_checkRequiredTablePlugins'](){const {plugins:_0x5cb674}=this['editor'],_0x5b6527=_0x5cb674['get'](s);_0x5cb674['has']('Table')&&(_0x5cb674['has']('PlainTableOutput')||_0x5b6527['_logSuppressibleWarning']('email-configuration-missing-plain-table-output-plugin'),_0x5cb674['has']('TableLayout')||_0x5b6527['_logSuppressibleWarning']('email-configuration-missing-table-layout-plugin'));}['_checkTableConfig'](){const {config:_0x1db579,plugins:_0x28b709}=this['editor'];_0x1db579['get']('table')&&_0x28b709['has']('Table')&&(this['_checkTablePropertiesConfig']('tableCellProperties'),this['_checkTablePropertiesConfig']('tableProperties'));}['_checkTablePropertiesConfig'](_0x420b00){const _0x4be862=this['editor']['plugins']['get'](s);_0x4be862['_validateConfigColorValue']('table.'+_0x420b00+'.borderColors'),_0x4be862['_validateConfigColorValue']('table.'+_0x420b00+'.backgroundColors'),_0x4be862['_validateConfigColorValue']('table.'+_0x420b00+'.defaultProperties.borderColor'),_0x4be862['_validateConfigColorValue']('table.'+_0x420b00+'.defaultProperties'),_0x4be862['_validateConfigColorFormat']('table.'+_0x420b00+'.colorPicker.format');}}class C extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'EmptyBlockEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const _0x4cddef=this['editor']['plugins']['get'](s);this['editor']['plugins']['has']('EmptyBlock')||_0x4cddef['_logSuppressibleInfo']('email-configuration-missing-empty-block-plugin','Consider\x20enabling\x20the\x20EmptyBlock\x20plugin\x20to\x20ensure\x20that\x20exported\x20content\x20has\x20empty\x20blocks.','features/email-editing/email.html#empty-block-plugin');}}class L extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'FontEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const {plugins:_0x16c433}=this['editor'];_0x16c433['has']('FontColorEditing')&&this['_checkColorConfig']('fontColor'),_0x16c433['has']('FontBackgroundColorEditing')&&this['_checkColorConfig']('fontBackgroundColor');}['_checkColorConfig'](_0x178e5a){const _0x444803=this['editor']['plugins']['get'](s);this['editor']['config']['get'](_0x178e5a)&&(_0x444803['_validateConfigColorValue'](_0x178e5a+'.colors'),_0x444803['_validateConfigColorValue'](_0x178e5a+'.documentColors'),_0x444803['_validateConfigColorFormat'](_0x178e5a+'.colorPicker.format'));}}class T extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'SourceEditingEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const {plugins:_0x4557ae}=this['editor'],_0x2db700=_0x4557ae['get'](s);_0x4557ae['has']('SourceEditing')||_0x4557ae['has']('SourceEditingEnhanced')||_0x2db700['_logSuppressibleWarning']('email-configuration-missing-source-editing-plugin');}}class N extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'MarkdownEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('Markdown');}}class v extends _0x5d335e{static ['UNSUPPORTED_ELEMENTS']=new Set(['object','article','details','main','nav','summary','abbr','acronym','bdi','output','hgroup','form','input','button','audio','canvas','meter','progress','iframe']);static get['requires'](){return[s];}static get['pluginName'](){return'GeneralHtmlIntegrationSupport';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['init'](){const {plugins:_0x2c4c6e}=this['editor'];if(!_0x2c4c6e['has']('DataFilter'))return;const _0x580baa=_0x2c4c6e['get']('DataFilter'),_0x4a19bb=_0x2c4c6e['get'](s);for(const _0x182d24 of v['UNSUPPORTED_ELEMENTS'])_0x580baa['once']('register:'+_0x182d24,(_0x463466,_0xadd38f)=>{_0x4a19bb['_logSuppressibleWarning']('email-unsupported-html-element',{'element':_0xadd38f['view']});});}}class O extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'MergeFieldsEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const _0x407a5e=this['editor']['plugins']['get'](s);this['editor']['plugins']['has']('MergeFields')||_0x407a5e['_logSuppressibleInfo']('email-configuration-missing-merge-fields-plugin','Consider\x20enabling\x20the\x20MergeFields\x20plugin\x20which\x20allows\x20inserting\x20dynamic\x20data\x20placeholders\x20into\x20content.','features/email-editing/email.html#merge-fields-plugin');}}class A extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'TemplateEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const _0x255a56=this['editor']['plugins']['get'](s);this['editor']['plugins']['has']('Template')||_0x255a56['_logSuppressibleInfo']('email-configuration-missing-template-plugin','Consider\x20enabling\x20the\x20Template\x20plugin\x20which\x20allows\x20inserting\x20predefined\x20e-mail\x20templates\x20into\x20the\x20editor.','features/email-editing/email.html#template-plugin');}}class q extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'UploadEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('Base64UploadAdapter');}}class H extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'MediaEmbedEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('MediaEmbed');}}class $ extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'TodoListEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('TodoList');}}class S extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'MultiLevelListEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){this['editor']['plugins']['get'](s)['_checkUnsupportedPlugin']('MultiLevelList',{'description':'The\x20multi-level\x20lists\x20are\x20rendered\x20incorrectly\x20in\x20Outlook\x202021.'});}}class K extends _0x5d335e{static get['requires'](){return[s];}static get['pluginName'](){return'LinkEmailIntegration';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}['afterInit'](){const {config:_0x588dad,plugins:_0x3eff7e}=this['editor'],_0x571482=_0x3eff7e['get'](s),_0x36f7dc=_0x588dad['get']('exportInlineStyles');_0x36f7dc?.['transformations']?.['includes'](w)||_0x571482['_checkUnsupportedPlugin']('LinkImage',{'description':'Block\x20images\x20are\x20unsupported\x20in\x20email\x20environments.\x20The\x20LinkImage\x20plugin\x20is\x20designed\x20to\x20work\x20exclusively\x20with\x20block\x20images,\x20which\x20makes\x20it\x20not\x20applicable\x20for\x20email\x20integration.\x20Inline\x20images\x20are\x20still\x20supported\x20and\x20function\x20correctly\x20with\x20the\x20standard\x20Link\x20feature.\x20Consider\x20enabling\x20the\x20`transformEmailFigureToTable`\x20transformation\x20in\x20the\x20`exportInlineStyles`\x20in\x20order\x20to\x20make\x20block\x20images\x20work\x20in\x20email\x20clients.'});}}class B extends _0x5d335e{['licenseKey'];['_licenseKeyCheckInterval'];static get['pluginName'](){return'EmailConfigurationHelper';}static get['isOfficialPlugin'](){return!0x0;}static get['isPremiumPlugin'](){return!0x0;}static get['requires'](){return[u,b,I,E,k,x,C,L,T,N,v,O,A,q,H,$,S,K];}['init'](){this['licenseKey']=this['editor']['config']['get']('licenseKey');const _0xb6e0ff=this['editor'];this['_licenseKeyCheckInterval']=setInterval(()=>{let _0xcfdd7c;for(const _0x30494e in _0xb6e0ff){const _0x1c8694=_0x30494e,_0x49fa6b=_0xb6e0ff[_0x1c8694];if('emailConfigurationHelperLicenseKeyValid'==_0x49fa6b||'emailConfigurationHelperLicenseKeyInvalid'==_0x49fa6b||'emailConfigurationHelperLicenseKeyExpired'==_0x49fa6b||'emailConfigurationHelperLicenseKeyDomainLimit'==_0x49fa6b||'emailConfigurationHelperLicenseKeyNotAllowed'==_0x49fa6b||'emailConfigurationHelperLicenseKeyEvaluationLimit'==_0x49fa6b||'emailConfigurationHelperLicenseKeyUsageLimit'==_0x49fa6b){delete _0xb6e0ff[_0x1c8694],_0xcfdd7c=_0x49fa6b,clearInterval(this['_licenseKeyCheckInterval']),this['_licenseKeyCheckInterval']=void 0x0;break;}}'emailConfigurationHelperLicenseKeyInvalid'==_0xcfdd7c&&_0xb6e0ff['_showLicenseError']('invalid'),'emailConfigurationHelperLicenseKeyExpired'==_0xcfdd7c&&_0xb6e0ff['_showLicenseError']('expired'),'emailConfigurationHelperLicenseKeyDomainLimit'==_0xcfdd7c&&_0xb6e0ff['_showLicenseError']('domainLimit'),'emailConfigurationHelperLicenseKeyNotAllowed'==_0xcfdd7c&&_0xb6e0ff['_showLicenseError']('featureNotAllowed','EmailConfigurationHelper'),'emailConfigurationHelperLicenseKeyEvaluationLimit'==_0xcfdd7c&&_0xb6e0ff['_showLicenseError']('evaluationLimit'),'emailConfigurationHelperLicenseKeyUsageLimit'==_0xcfdd7c&&_0xb6e0ff['_showLicenseError']('usageLimit');},0x3e8);}['destroy'](){super['destroy'](),this['_licenseKeyCheckInterval']&&clearInterval(this['_licenseKeyCheckInterval']);}}const M=(_0x227734,_0x39f984)=>{if(!['TABLE','IMG']['includes'](_0x227734['tagName']))return;const _0x567ff5=_0x39f984['getAsString']('float');if(_0x567ff5){const _0x28d278=_0x4ab910(_0x567ff5);'left'!==_0x28d278&&'right'!==_0x28d278||_0x227734['setAttribute']('align',_0x28d278);}},F=(_0x441255,_0x149991)=>{if('TABLE'!==_0x441255['tagName']||_0x149991['has']('float'))return;const _0xe6e0bb=f(_0x149991),_0x332cba=_0x149991['getAsString']('width');_0xe6e0bb&&(c(_0x441255,{'align':_0xe6e0bb}),_0x332cba?_0x441255['setAttribute']('width',h(_0x332cba)):_0x149991['remove']('width'),_0x149991['remove']('margin-left'),_0x149991['remove']('margin-right'));},_=(_0x18a83a,_0x14c12a)=>{if('IMG'!==_0x18a83a['tagName'])return;const _0x9c1e48=_0x14c12a['getAsString']('width');_0x9c1e48&&(_0x18a83a['setAttribute']('width',h(_0x9c1e48)),_0x18a83a['setAttribute']('height','auto'));},D=(_0x4884b3,_0x14eb62,{runAfterDocumentTransformation:_0x341bcb})=>{if('FIGCAPTION'!==_0x4884b3['tagName'])return;const _0x152f04=_0x14eb62['getAsString']('display'),_0x3ee1bf=_0x14eb62['getAsString']('caption-side');_0x14eb62['remove']('caption-side'),_0x152f04&&'table-caption'===_0x4ab910(_0x152f04)&&_0x14eb62['remove']('display');const _0x5897f2=_0x3ee1bf&&'top'===_0x4ab910(_0x3ee1bf);_0x341bcb(()=>{const _0x455991=m(_0x4884b3,'div'),_0x5929a0=_0x4884b3['previousElementSibling'];_0x5897f2&&_0x5929a0&&'TABLE'===_0x5929a0['tagName']?(_0x5929a0['before'](_0x455991),_0x4884b3['remove']()):_0x4884b3['replaceWith'](_0x455991);});},U=(_0x337dc1,_0x41b096,{runAfterChildrenTransformation:_0x44e339})=>{'TD'===_0x337dc1['tagName']&&_0x44e339(()=>{const _0x7fbb72=Array['from'](_0x337dc1['children']);if(0x0===_0x7fbb72['length'])return;const _0xf4e629=_0x7fbb72['map'](R),_0x47781b=_0xf4e629[0x0];if(_0x47781b&&_0xf4e629['every'](_0x3f1ede=>_0x3f1ede===_0x47781b)){_0x337dc1['setAttribute']('align',_0x47781b);for(const _0x1b2e89 of _0x7fbb72)if(d(_0x1b2e89)){const _0x86b7df=p(_0x1b2e89);_0x1b2e89['replaceWith'](...Array['from'](_0x86b7df['childNodes']));}else _0x1b2e89['style']['removeProperty']('text-align'),_0x1b2e89['style']['length']||_0x1b2e89['removeAttribute']('style');}});};function R(_0x41bbf9){if(d(_0x41bbf9))return p(_0x41bbf9)['getAttribute']('align');return _0x41bbf9['style']['textAlign']||void 0x0;}function j(_0x4d31b3={}){const _0x1edc7b=[];return _0x4d31b3['useFigureToTableFallback']&&_0x1edc7b['push'](w,D,U),_0x1edc7b['push'](M,F,_),_0x1edc7b;}export{B as EmailConfigurationHelper,s as EmailConfigurationLogger,C as EmptyBlockEmailIntegration,E as ExportInlineStylesEmailIntegration,L as FontEmailIntegration,v as GeneralHtmlIntegrationSupport,u as HighlightEmailIntegration,b as ImageEmailIntegration,K as LinkEmailIntegration,k as ListEmailIntegration,N as MarkdownEmailIntegration,I as MathTypeEmailIntegration,H as MediaEmbedEmailIntegration,O as MergeFieldsEmailIntegration,S as MultiLevelListEmailIntegration,T as SourceEditingEmailIntegration,x as TableEmailIntegration,A as TemplateEmailIntegration,$ as TodoListEmailIntegration,q as UploadEmailIntegration,j as getEmailInlineStylesTransformations,l as isUnsupportedEmailColorFormat,a as isUnsupportedEmailColorValue,U as transformEmailAlignToAttribute,D as transformEmailFigcaptionToDiv,w as transformEmailFigureToTable,M as transformEmailFloatToAlign,_ as transformEmailImageWidthAttributes,F as transformEmailMarginToAlign};
@@ -0,0 +1,46 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
+ */
5
+ /**
6
+ * @module email/transformations/transformemailaligntoattribute
7
+ * @publicApi
8
+ */
9
+ import type { ExportInlineStylesTransformation } from '@ckeditor/ckeditor5-export-inline-styles';
10
+ /**
11
+ * Promotes a shared alignment value from all direct children of a `<td>` element up to a
12
+ * `align` attribute on the cell itself, removing the per-child alignment in the process.
13
+ *
14
+ * Examples:
15
+ * ```
16
+ * // All children share align="center" via inline style:
17
+ * <td>
18
+ * <p style="text-align: center;">…</p>
19
+ * <p style="text-align: center;">…</p>
20
+ * </td>
21
+ * →
22
+ * <td align="center">
23
+ * <p>…</p>
24
+ * <p>…</p>
25
+ * </td>
26
+ *
27
+ * // All children share align="center" via wrapper tables:
28
+ * <td>
29
+ * <table role="presentation" width="100%"><tbody><tr><td align="center"><img …></td></tr></tbody></table>
30
+ * <table role="presentation" width="100%"><tbody><tr><td align="center"><p …></p></td></tr></tbody></table>
31
+ * </td>
32
+ * →
33
+ * <td align="center">
34
+ * <img …>
35
+ * <p …></p>
36
+ * </td>
37
+ *
38
+ * // Mixed alignments → no change:
39
+ * <td>
40
+ * <p style="text-align: center;">…</p>
41
+ * <p style="text-align: left;">…</p>
42
+ * </td>
43
+ * → (unchanged)
44
+ * ```
45
+ */
46
+ export declare const transformEmailAlignToAttribute: ExportInlineStylesTransformation;
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
+ */
5
+ /**
6
+ * @module email/transformations/transformemailfigcaptiontodiv
7
+ * @publicApi
8
+ */
9
+ import { type ExportInlineStylesTransformation } from '@ckeditor/ckeditor5-export-inline-styles';
10
+ /**
11
+ * Transforms a FIGCAPTION element into a DIV element to make it more compatible with email clients.
12
+ */
13
+ export declare const transformEmailFigcaptionToDiv: ExportInlineStylesTransformation;
@@ -0,0 +1,59 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
+ */
5
+ /**
6
+ * @module email/transformations/transformemailfiguretotable
7
+ * @publicApi
8
+ */
9
+ import { type ExportInlineStylesTransformation } from '@ckeditor/ckeditor5-export-inline-styles';
10
+ /**
11
+ * Transforms a `<figure>` element into an email-compatible structure by replacing it with
12
+ * a table-based layout. The exact output depends on the figure's styles and children:
13
+ *
14
+ * **Float — single inner `<table>`** (figure is just a float wrapper):
15
+ * The inner table is promoted in place; figure styles are merged into it and `float`
16
+ * is converted to an `align` attribute.
17
+ * ```
18
+ * <figure style="float: left;"><table>…</table></figure>
19
+ * →
20
+ * <table align="left" style="…">…</table>
21
+ * ```
22
+ *
23
+ * **Float — mixed content** (figure wraps multiple children alongside float):
24
+ * All children are moved into a single-cell presentation table that carries the float
25
+ * as an `align` attribute.
26
+ * ```
27
+ * <figure style="float: right;"><img><figcaption>…</figcaption></figure>
28
+ * →
29
+ * <table align="right" style="…"><tbody><tr><td><img><figcaption>…</figcaption></td></tr></tbody></table>
30
+ * ```
31
+ *
32
+ * **Margin-based alignment — single inner `<table>`** (figure is a `display:table` alignment wrapper):
33
+ * The inner table is promoted in place; figure styles (minus `display`, layout props) are
34
+ * merged into it. Alignment and width are already encoded in the surrounding fallback tables
35
+ * added by `wrapWithFallbackTables`.
36
+ * ```
37
+ * <figure style="display: table; margin: auto; width: 600px;"><table>…</table></figure>
38
+ * →
39
+ * <table width="100%"><tbody><tr><td align="center">
40
+ * <table width="600"><tbody><tr><td>
41
+ * <table style="…">…</table>
42
+ * </td></tr></tbody></table>
43
+ * </td></tr></tbody></table>
44
+ * ```
45
+ *
46
+ * **Margin-based alignment — mixed content** (figure wraps an image, caption, etc.):
47
+ * The figure is replaced with a `<div>` that inherits its attributes, and the whole
48
+ * thing is wrapped in one or two fallback tables for alignment and width.
49
+ * ```
50
+ * <figure style="margin: auto; width: 600px;"><img><figcaption>…</figcaption></figure>
51
+ * →
52
+ * <table width="100%"><tbody><tr><td align="center">
53
+ * <table width="600"><tbody><tr><td>
54
+ * <div style="…"><img><figcaption>…</figcaption></div>
55
+ * </td></tr></tbody></table>
56
+ * </td></tr></tbody></table>
57
+ * ```
58
+ */
59
+ export declare const transformEmailFigureToTable: ExportInlineStylesTransformation;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
+ */
5
+ /**
6
+ * @module email/transformations/transformemailfloattoalign
7
+ * @publicApi
8
+ */
9
+ import { type ExportInlineStylesTransformation } from '@ckeditor/ckeditor5-export-inline-styles';
10
+ /**
11
+ * Transform float: left/right to align="left"/"right" for table and img elements.
12
+ *
13
+ * Examples:
14
+ * * `<table style="float: left">` → `<table style="float: left" align="left">`
15
+ * * `<img style="float: right">` → `<img style="float: right" align="right">`
16
+ */
17
+ export declare const transformEmailFloatToAlign: ExportInlineStylesTransformation;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
+ */
5
+ /**
6
+ * @module email/transformations/transformemailimagewidthattributes
7
+ * @publicApi
8
+ */
9
+ import type { ExportInlineStylesTransformation } from '@ckeditor/ckeditor5-export-inline-styles';
10
+ /**
11
+ * Removes width and height attributes from images that have width defined in styles.
12
+ * This helps to prevent issues with image scaling in some email clients.
13
+ *
14
+ * Example:
15
+ * * `<img style="width: 100px;" width="200" height="150">` → `<img style="width: 100px; height: auto;">`
16
+ */
17
+ export declare const transformEmailImageWidthAttributes: ExportInlineStylesTransformation;
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
+ */
5
+ /**
6
+ * @module email/transformations/transformemailmargintoalign
7
+ * @publicApi
8
+ */
9
+ import type { ExportInlineStylesTransformation } from '@ckeditor/ckeditor5-export-inline-styles';
10
+ /**
11
+ * Handle margin-left and margin-right combinations for alignment of the table element.
12
+ * It skips elements with float style because float has higher priority for alignment.
13
+ *
14
+ * It wraps the `<table>` in a container `<table>` to ensure proper alignment in all email clients.
15
+ *
16
+ * Examples:
17
+ * * `<table style="margin: auto">` →
18
+ * `<table width="100%"><tr><td align="center"><table style="...">...</table></td></tr></table>`
19
+ *
20
+ * * `<table style="margin-left: auto; width: 500px">` →
21
+ * `<table width="100%"><tr><td align="right"><table width="500"><tr><td><table style="...">...</table>...`
22
+ */
23
+ export declare const transformEmailMarginToAlign: ExportInlineStylesTransformation;
@@ -0,0 +1,107 @@
1
+ /**
2
+ * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
+ */
5
+ /**
6
+ * @module email/transformations/utils
7
+ */
8
+ import type { StylesMap } from '@ckeditor/ckeditor5-engine';
9
+ /**
10
+ * Helper function that creates the wrapper table structure and performs DOM replacement.
11
+ *
12
+ * @param element The original element being transformed (and replaced in the DOM).
13
+ * @param options An object with wrapper configuration.
14
+ * @param options.align The alignment value ('left', 'right', 'center') or undefined.
15
+ * @param options.width The width value or undefined.
16
+ * @returns Inner cell.
17
+ */
18
+ export declare function wrapWithFallbackTables(element: Element, options: {
19
+ align?: string;
20
+ width?: string;
21
+ }): HTMLElement;
22
+ /**
23
+ * Creates a wrapper table with a single cell for email compatibility.
24
+ *
25
+ * @param doc The document object to create elements.
26
+ * @param width The width attribute value for the table.
27
+ * @returns An object containing the table element and the cell element.
28
+ */
29
+ export declare function createWrapperTable(doc: Document, width?: string): {
30
+ table: HTMLTableElement;
31
+ cell: HTMLTableCellElement;
32
+ };
33
+ /**
34
+ * Determines alignment based on margin-left and margin-right styles.
35
+ *
36
+ * @param stylesMap A map of CSS styles applied to an element.
37
+ * @returns The alignment value ('left', 'right', 'center') or `undefined` if no alignment is determined.
38
+ */
39
+ export declare function getAlignFromMargins(stylesMap: StylesMap): string | undefined;
40
+ /**
41
+ * Creates a new element with the specified tag name, copying attributes and children from the source element.
42
+ *
43
+ * @param element The source element.
44
+ * @param newTagName The tag name for the new element.
45
+ * @returns The new element with copied attributes and children.
46
+ */
47
+ export declare function shallowCloneHTMLElement(element: Element, newTagName: string): HTMLElement;
48
+ /**
49
+ * Checks whether an element is a presentation wrapper table produced by {@link wrapWithFallbackTables}.
50
+ *
51
+ * The function matches the exact shape that `createWrapperTable` builds:
52
+ * - `<table role="presentation" width="…">` with a single `tbody > tr > td` path, where
53
+ * - the `<td>` carries an `align` attribute.
54
+ *
55
+ * A wrapper table without `align` on its cell (e.g. a pure-width inner table) is **not** considered
56
+ * an align-wrapper and returns `false`.
57
+ *
58
+ * ```ts
59
+ * // true – outer align table (width="100%", td[align="center"])
60
+ * isAlignWrapperTable( outerTable );
61
+ *
62
+ * // false – inner width table has no align on its td
63
+ * isAlignWrapperTable( innerTable );
64
+ *
65
+ * // false – ordinary content table
66
+ * isAlignWrapperTable( contentTable );
67
+ * ```
68
+ *
69
+ * @param element The element to test.
70
+ * @returns `true` when the element is an align wrapper table.
71
+ */
72
+ export declare function isAlignWrapperTable(element: Element): boolean;
73
+ /**
74
+ * Returns the single `<td>` from a presentation wrapper table, or `null` when the structure
75
+ * does not match the `table > tbody > tr > td` shape produced by {@link wrapWithFallbackTables}.
76
+ *
77
+ * Use this together with {@link isAlignWrapperTable} to read or mutate the wrapper cell:
78
+ *
79
+ * ```ts
80
+ * if ( isAlignWrapperTable( table ) ) {
81
+ * const cell = getWrapperTableCell( table )!;
82
+ * const align = cell.getAttribute( 'align' ); // 'left' | 'right' | 'center'
83
+ * // …replace the wrapper table with its cell's children:
84
+ * table.replaceWith( ...Array.from( cell.childNodes ) );
85
+ * }
86
+ * ```
87
+ *
88
+ * @param table The table element to inspect.
89
+ * @returns The inner `<td>` element, or `null` if the structure does not match.
90
+ */
91
+ export declare function getWrapperTableCell(table: Element): HTMLTableCellElement | null;
92
+ /**
93
+ * Normalizes legacy numeric attribute values.
94
+ * Removes the `!important` suffix (if present) and the `px` unit.
95
+ *
96
+ * @param value - The attribute value to normalize.
97
+ * @returns The normalized value as a clean string.
98
+ */
99
+ export declare function normalizeLegacyNumericAttribute(value: string): string;
100
+ /**
101
+ * Converts a StylesMap to a string while preserving the original property order.
102
+ *
103
+ * Unlike `StylesMap#toString()`, which sorts properties alphabetically, this function maintains
104
+ * the original order, which is critical for email clients where property sequence matters.
105
+ * For example, `background` must precede `background-color` to avoid being overridden.
106
+ */
107
+ export declare function dumpNonSortedStylesMap(stylesMap: StylesMap): string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ckeditor/ckeditor5-email",
3
- "version": "48.0.1",
3
+ "version": "48.1.0-alpha.1",
4
4
  "description": "Email integration feature for CKEditor 5.",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "CKSource (http://cksource.com/)",
@@ -21,15 +21,15 @@
21
21
  "./package.json": "./package.json"
22
22
  },
23
23
  "dependencies": {
24
- "@ckeditor/ckeditor5-core": "48.0.1",
25
- "@ckeditor/ckeditor5-engine": "48.0.1",
26
- "@ckeditor/ckeditor5-export-inline-styles": "48.0.1",
27
- "@ckeditor/ckeditor5-font": "48.0.1",
28
- "@ckeditor/ckeditor5-html-support": "48.0.1",
29
- "@ckeditor/ckeditor5-list": "48.0.1",
30
- "@ckeditor/ckeditor5-table": "48.0.1",
31
- "@ckeditor/ckeditor5-ui": "48.0.1",
32
- "@ckeditor/ckeditor5-utils": "48.0.1"
24
+ "@ckeditor/ckeditor5-core": "48.1.0-alpha.1",
25
+ "@ckeditor/ckeditor5-engine": "48.1.0-alpha.1",
26
+ "@ckeditor/ckeditor5-export-inline-styles": "48.1.0-alpha.1",
27
+ "@ckeditor/ckeditor5-font": "48.1.0-alpha.1",
28
+ "@ckeditor/ckeditor5-html-support": "48.1.0-alpha.1",
29
+ "@ckeditor/ckeditor5-list": "48.1.0-alpha.1",
30
+ "@ckeditor/ckeditor5-table": "48.1.0-alpha.1",
31
+ "@ckeditor/ckeditor5-ui": "48.1.0-alpha.1",
32
+ "@ckeditor/ckeditor5-utils": "48.1.0-alpha.1"
33
33
  },
34
34
  "files": [
35
35
  "dist",