@eui/components 14.0.2 → 14.0.3-snapshot-1657872717239
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/components/EuiPopoverComponent.html +47 -1
- package/docs/components/UxEditorComponent.html +11 -1
- package/docs/dependencies.html +1 -1
- package/docs/js/menu-wc.js +6 -6
- package/docs/js/menu-wc_es5.js +1 -1
- package/docs/js/search/search_index.js +2 -2
- package/esm2020/eui-autocomplete/eui-autocomplete.component.mjs +2 -2
- package/esm2020/eui-popover/eui-popover.component.mjs +48 -27
- package/esm2020/legacy/ux-editor/ux-editor.component.mjs +49 -19
- package/eui-popover/eui-popover.component.d.ts +14 -0
- package/eui-popover/eui-popover.component.d.ts.map +1 -1
- package/fesm2015/eui-components-eui-autocomplete.mjs +2 -2
- package/fesm2015/eui-components-eui-autocomplete.mjs.map +1 -1
- package/fesm2015/eui-components-eui-popover.mjs +47 -26
- package/fesm2015/eui-components-eui-popover.mjs.map +1 -1
- package/fesm2015/eui-components-legacy-ux-editor.mjs +48 -18
- package/fesm2015/eui-components-legacy-ux-editor.mjs.map +1 -1
- package/fesm2020/eui-components-eui-autocomplete.mjs +2 -2
- package/fesm2020/eui-components-eui-autocomplete.mjs.map +1 -1
- package/fesm2020/eui-components-eui-popover.mjs +47 -26
- package/fesm2020/eui-components-eui-popover.mjs.map +1 -1
- package/fesm2020/eui-components-legacy-ux-editor.mjs +48 -18
- package/fesm2020/eui-components-legacy-ux-editor.mjs.map +1 -1
- package/legacy/ux-editor/ux-editor.component.d.ts +2 -0
- package/legacy/ux-editor/ux-editor.component.d.ts.map +1 -1
- package/package.json +2 -2
|
@@ -319,6 +319,9 @@ class UxEditorComponent {
|
|
|
319
319
|
this.sanitize = true; // Security: always set sanitizing to true!
|
|
320
320
|
this.isEnabledOnFocusBackup = false; // backup & restore of the isEnabledOnFocus original option
|
|
321
321
|
this.displayAbout = false;
|
|
322
|
+
// Counters
|
|
323
|
+
this.charactersCounter = 0;
|
|
324
|
+
this.wordsCounter = 0;
|
|
322
325
|
this.charactersLabel = 'characters';
|
|
323
326
|
this.wordsLabel = 'words';
|
|
324
327
|
this.isMaxLengthValid = true;
|
|
@@ -512,6 +515,7 @@ class UxEditorComponent {
|
|
|
512
515
|
if (this.debug === 'log') {
|
|
513
516
|
console.log('editor-changed', event);
|
|
514
517
|
}
|
|
518
|
+
console.warn('onEditorChange() event is DEPRECATED please use onContentChange() event instead.');
|
|
515
519
|
this.onEditorChanged.emit(event);
|
|
516
520
|
this.hasEditorChanged = true; // For debugger
|
|
517
521
|
}
|
|
@@ -521,6 +525,7 @@ class UxEditorComponent {
|
|
|
521
525
|
}
|
|
522
526
|
this.onTextChange.emit(event); // OLD KEEP! TO BE DEPRECATED
|
|
523
527
|
this.onContentChanged.emit(event);
|
|
528
|
+
this.onEditorChangedEmit(event); // Sync with editor change event since it's duplicated event
|
|
524
529
|
this.hasContentChanged = true; // For debugger
|
|
525
530
|
// Update editor's value
|
|
526
531
|
switch (this.format) {
|
|
@@ -642,30 +647,50 @@ class UxEditorComponent {
|
|
|
642
647
|
}
|
|
643
648
|
}
|
|
644
649
|
_calculateCounters(content) {
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
text = this._stripHtml(content);
|
|
650
|
-
}
|
|
651
|
-
else {
|
|
652
|
-
text = content;
|
|
653
|
-
}
|
|
650
|
+
let text;
|
|
651
|
+
if (this.format === 'html') {
|
|
652
|
+
if (content && content.length > 0 && this.quillEditor) {
|
|
653
|
+
text = this._stripHtml(content);
|
|
654
654
|
this.charactersCounter = text.length;
|
|
655
|
+
text = this._cleanHtml(content);
|
|
655
656
|
this.wordsCounter = !text ? 0 : text.trim().split(/\s+/).length;
|
|
656
657
|
}
|
|
657
658
|
else {
|
|
658
|
-
// Empty content
|
|
659
659
|
this.charactersCounter = 0;
|
|
660
660
|
this.wordsCounter = 0;
|
|
661
661
|
}
|
|
662
|
-
// Output counters (for custom toolbar usage)
|
|
663
|
-
this.getCharactersCounter.emit(this.charactersCounter);
|
|
664
|
-
this.getWordsCounter.emit(this.wordsCounter);
|
|
665
|
-
// Update maxLength & validity
|
|
666
|
-
this._refreshMaxLength();
|
|
667
662
|
}
|
|
668
|
-
|
|
663
|
+
if (this.format === 'json') {
|
|
664
|
+
if (content && content.length > 0 && this.quillEditor) {
|
|
665
|
+
text = this._stripHtml(this.quillEditor.root.innerHTML);
|
|
666
|
+
this.charactersCounter = text.length;
|
|
667
|
+
text = this._cleanHtml(this.quillEditor.root.innerHTML);
|
|
668
|
+
this.wordsCounter = !text ? 0 : text.trim().split(/\s+/).length;
|
|
669
|
+
}
|
|
670
|
+
else {
|
|
671
|
+
this.charactersCounter = 0;
|
|
672
|
+
this.wordsCounter = 0;
|
|
673
|
+
}
|
|
674
|
+
}
|
|
675
|
+
// Format text will be DEPRECATED in next major eUI releases (13+)
|
|
676
|
+
if (this.format === 'text') {
|
|
677
|
+
if (content && content.length > 0 && this.quillEditor) {
|
|
678
|
+
this.charactersCounter = content.length - 1;
|
|
679
|
+
this.wordsCounter = this._getWordCount(content);
|
|
680
|
+
}
|
|
681
|
+
else {
|
|
682
|
+
this.charactersCounter = 0;
|
|
683
|
+
this.wordsCounter = 0;
|
|
684
|
+
}
|
|
685
|
+
}
|
|
686
|
+
// Output counters (for custom toolbar usage)
|
|
687
|
+
this.getCharactersCounter.emit(this.charactersCounter);
|
|
688
|
+
this.getWordsCounter.emit(this.wordsCounter);
|
|
689
|
+
// Update maxLength & validity
|
|
690
|
+
this._refreshMaxLength();
|
|
691
|
+
}
|
|
692
|
+
_getWordCount(str) {
|
|
693
|
+
return str.trim().split(/\s+/).length;
|
|
669
694
|
}
|
|
670
695
|
_refreshMaxLength() {
|
|
671
696
|
if (this.maxLength && this.maxLength > 0) {
|
|
@@ -685,12 +710,17 @@ class UxEditorComponent {
|
|
|
685
710
|
const regex = /(<([^>]+)>)/gm;
|
|
686
711
|
return content.replace(regex, '');
|
|
687
712
|
}
|
|
713
|
+
_cleanHtml(content) {
|
|
714
|
+
const exceptTags = /<strong>|<\/strong>|<b>|<\/b>|<i>|<\/i>|<em>|<\/em>|<s>|<\/s>|<strike>|<\/strike>|<u>|<\/u>/gm;
|
|
715
|
+
const regex = /(<([^>]+)>)/gm;
|
|
716
|
+
return content.replace(exceptTags, '').replace(regex, ' ').replace(' ', ' ');
|
|
717
|
+
}
|
|
688
718
|
}
|
|
689
719
|
/** @nocollapse */ UxEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.4", ngImport: i0, type: UxEditorComponent, deps: [{ token: forwardRef(() => UxFormGroupComponent), host: true, optional: true }, { token: i1$1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
690
|
-
/** @nocollapse */ UxEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.4", type: UxEditorComponent, selector: "ux-editor", inputs: { e2eAttr: "e2eAttr", id: "id", style: "style", styleClass: "styleClass", placeholder: "placeholder", formats: "formats", format: "format", isEnabledOnFocus: "isEnabledOnFocus", isReadOnly: "isReadOnly", isUsedNativeEditorInReadMode: "isUsedNativeEditorInReadMode", customToolbarOptions: "customToolbarOptions", theme: "theme", debug: "debug", isEditable: "isEditable", formControlName: "formControlName", feedbackTypeClass: "feedbackTypeClass", validationErrorMessage: "validationErrorMessage", tabindex: "tabindex", hasReadOnlyStyles: "hasReadOnlyStyles", isMinimalToolbar: "isMinimalToolbar", modules: "modules", maxLength: "maxLength", minLength: "minLength", isRequired: "isRequired", customToolbarPosition: "customToolbarPosition", strict: "strict", isUsedSanitizationForHtml: "isUsedSanitizationForHtml", scrollingContainer: "scrollingContainer", bounds: "bounds", customOptions: "customOptions", trackChanges: "trackChanges", preserveWhitespace: "preserveWhitespace", spellcheck: "spellcheck", showCounters: "showCounters", isImageUrl: "isImageUrl" }, outputs: { onInit: "onInit", onTextChange: "onTextChange", onSelectionChange: "onSelectionChange", onEditorCreated: "onEditorCreated", onEditorChanged: "onEditorChanged", onContentChanged: "onContentChanged", onSelectionChanged: "onSelectionChanged", onFocus: "onFocus", onBlur: "onBlur", getCharactersCounter: "getCharactersCounter", getWordsCounter: "getWordsCounter" }, queries: [{ propertyName: "customEditorToolbar", first: true, predicate: i0.forwardRef(function () { return UxEditorCustomToolbarTagDirective; }), descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"ux-editor-wrapper\">\n <quill-editor *ngIf=\"!isReadOnly || isUsedNativeEditorInReadMode\"\n [id]=\"generatedId\"\n class=\"ux-editor {{styleClass}}\"\n [class.ux-editor--readonly]=\"isReadOnly\"\n [class.ux-editor--focused]=\"isFocused\"\n [class.ux-editor--editable]=\"!isReadOnly\"\n [format]=\"format\"\n [formats]=\"formats\"\n [maxLength]=\"maxLength\"\n [minLength]=\"minLength\"\n [readOnly]=\"isReadOnly\"\n [required]=\"isRequired\"\n [sanitize]=\"isUsedSanitizationForHtml\"\n [modules]=\"modules\"\n [theme]=\"theme\"\n [placeholder]=\"placeholder\"\n [styles]=\"style\"\n [customToolbarPosition]=\"customToolbarPosition\"\n [preserveWhitespace]=\"preserveWhitespace\"\n [spellcheck]=\"spellcheck\"\n [formControl]=\"formControl\"\n [debug]=\"false\"\n [tabindex]=\"tabindex\"\n [attr.aria-invalid]=\"ariaInvalid\"\n [attr.aria-required]=\"isRequired\"\n (onEditorCreated)=\"onEditorCreatedEmit($event)\"\n (onEditorChanged)=\"onEditorChangedEmit($event)\"\n (onContentChanged)=\"onContentChangedEmit($event)\"\n (onSelectionChanged)=\"onSelectionChangedEmit($event)\"\n (onFocus)=\"onFocusEmit($event)\"\n (onBlur)=\"onBlurEmit($event)\">\n\n <!-- PREDEFINED DEFAULT TOOLBAR -->\n <div *ngIf=\"!customToolbarOptions && !customEditorToolbar\" quill-editor-toolbar (focusin)=\"onToolbarFocusIn($event)\" (focusout)=\"onToolbarFocusOut($event)\">\n <span class=\"ql-formats\">\n <select class=\"ql-header\" title=\"Style{{crlf}}Apply an HTML tag or CSS class to the selected text\">\n <option value=\"1\">Heading 1</option>\n <option value=\"2\">Heading 2</option>\n <option value=\"3\">Heading 3</option>\n <option value=\"4\">Heading 4</option>\n <option value=\"5\">Heading 5</option>\n <option value=\"6\">Heading 6</option>\n <option selected>Normal</option>\n </select>\n </span>\n <!-- <span class=\"ql-formats\">\n <select class=\"ql-size\" title=\"Font size{{crlf}}Change the font size of the selected text\">\n <option value=\"small\">Small</option>\n <option selected>Normal</option>\n <option value=\"large\">Large</option>\n <option value=\"huge\">Huge</option>\n </select>\n </span> -->\n <span *ngIf=\"!isMinimalToolbar\" class=\"ql-formats\">\n <select class=\"ql-font\" title=\"Font{{crlf}}Change the font face\">\n <option selected>Sans Serif</option>\n <option value=\"serif\">Serif</option>\n <option value=\"monospace\">Monospace</option>\n </select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-bold\" aria-label=\"Bold (Ctrl + B)\" title=\"Bold (Ctrl + B){{crlf}}Make the selected text bold\"></button>\n <button class=\"ql-italic\" aria-label=\"Italic (Ctrl + I)\" title=\"Italic (Ctrl + I){{crlf}}Italicize the selected text\"></button>\n <button class=\"ql-underline\" aria-label=\"Underline (Ctrl + U)\" title=\"Underline (Ctrl + U){{crlf}}Underline the selected text\"></button>\n <button class=\"ql-strike\" aria-label=\"Strikethrough\" title=\"Strikethrough{{crlf}}Draw a line to the middle of the selected text\"></button>\n </span>\n <span class=\"ql-formats\">\n <select class=\"ql-color\" aria-label=\"Font Color\" title=\"Font Color{{crlf}}Change the text color\"></select>\n <select class=\"ql-background\" aria-label=\"Text Highlight Color\" title=\"Text Highlight Color{{crlf}}Change the background color of the text\"></select>\n </span>\n <span *ngIf=\"!isMinimalToolbar\" class=\"ql-formats\">\n <button class=\"ql-script\" value=\"sub\" aria-label=\"Subscript\" title=\"Subscript{{crlf}}Create ssmall letters below the text baseline\"></button>\n <button class=\"ql-script\" value=\"super\" aria-label=\"Superscript\" title=\"Superscript{{crlf}}Create small letters above the line of the text\"></button>\n </span>\n <span class=\"ql-formats\">\n <select class=\"ql-align\" aria-label=\"Text Align\" title=\"Text Align{{crlf}}Align the text to the selected position: left (default), center, right or justify\">\n <option selected></option>\n <option value=\"center\"></option>\n <option value=\"right\"></option>\n <option value=\"justify\"></option>\n </select>\n </span>\n <span *ngIf=\"!isMinimalToolbar\" class=\"ql-formats\">\n <button class=\"ql-list\" value=\"ordered\" aria-label=\"Ordered List\" title=\"Numbering{{crlf}}Start an ordered list\"></button>\n <button class=\"ql-list\" value=\"bullet\" aria-label=\"Unordered List\" title=\"Bullets{{crlf}}Start a bulleted list\"></button>\n <button class=\"ql-indent\" value=\"-1\" type=\"button\" aria-label=\"Decrease Indent\" title=\"Decrease Indent{{crlf}}Decrease the indent level of the paragraph\"></button>\n <button class=\"ql-indent\" value=\"+1\" type=\"button\" aria-label=\"Increase Indent\" title=\"Increase Indent{{crlf}}Increase the indent level of the paragraph\"></button>\n </span>\n <!-- Insert group -->\n <span class=\"ql-formats\">\n <button *ngIf=\"!isMinimalToolbar\" class=\"ql-blockquote\" aria-label=\"Blockquote\" title=\"Blockquote{{crlf}}Create a quoted block of the selected text\"></button>\n <button *ngIf=\"!isMinimalToolbar\" class=\"ql-code-block\" aria-label=\"Insert Code Block\" title=\"Insert Code Block{{crlf}}Insert a code block at the cursor row position\"></button>\n <button class=\"ql-link\" aria-label=\"Insert Link\" title=\"Insert Hyperlink (Ctrl + K){{crlf}}Create a link to a Web page, a picture, an e-mail address or a program\"></button>\n <button *ngIf=\"!isImageUrl\" class=\"ql-image\" aria-label=\"Insert Image\" title=\"Insert Picture{{crlf}}Insert a picture from a file\"></button>\n <button *ngIf=\"isImageUrl\" class=\"ql-image\" aria-label=\"Insert Image from URL\" title=\"Insert Picture from URL{{crlf}}Insert a picture from a remote URL\">\n <span class=\"eui-icon eui-icon-image-add\"></span></button>\n <button *ngIf=\"!isMinimalToolbar\" class=\"ql-video\" aria-label=\"Insert Video\" title=\"Insert Video{{crlf}}Insert a video from a file\"></button>\n </span>\n <!-- Clean / Clear -->\n <span class=\"ql-formats\">\n <button class=\"ql-clean\" aria-label=\"Remove Styles\" title=\"Remove Styles{{crlf}}Remove the styles of the selected text\"></button>\n <button aria-label=\"Delete\" title=\"Delete content{{crlf}}Permanently deletes editor's contents\" (click)=\"editorDeleteContent($event)\"><span class=\"eui-icon eui-icon-delete-forever\"></span></button>\n </span>\n\n <!-- Undo/Redo -->\n <span class=\"ql-formats\">\n <button aria-label=\"Undo (Ctrl + Z)\" title=\"Undo (Ctrl + Z){{crlf}}Cancels the previous action\" (click)=\"editorUndo()\"><span class=\"eui-icon eui-icon-undo\"></span></button>\n <button aria-label=\"Redo (Ctrl + Y)\" title=\"Redo (Ctrl + Y){{crlf}}Do the next history action again\" (click)=\"editorRedo()\"><span class=\"eui-icon eui-icon-redo\"></span></button>\n </span>\n <!-- Counters -->\n <span *ngIf=\"showCounters && (format === 'html' || format === 'text')\" class=\"ql-formats\">\n <ux-editor-counters [charactersCounter]=\"charactersCounter\"\n [charactersLabel]=\"charactersLabel\"\n [wordsCounter]=\"wordsCounter\"\n [wordsLabel]=\"wordsLabel\"\n [isMaxLengthValid]=\"isMaxLengthValid\"\n aria-label=\"Counters\"\n title=\"Counters{{crlf}}Characters and words counters (stripped Html)\">\n </ux-editor-counters>\n </span>\n </div>\n\n <!-- USER CUSTOM TOOLBAR (HTML FORMAT) -->\n <div *ngIf=\"customEditorToolbar\" quill-editor-toolbar (focusin)=\"onToolbarFocusIn($event)\" (focusout)=\"onToolbarFocusOut($event)\">\n <ng-content select=\"uxEditorCustomToolbar\"></ng-content>\n </div>\n </quill-editor>\n\n <!-- MAXLENGTH INDICATOR -->\n <div *ngIf=\"!isReadOnly && charactersLeft > -1\" class=\"maxlength-wrapper\" [class.maxlength-wrapper--error]=\"!isMaxLengthValid\">{{ charactersLeft }}</div>\n</div>\n\n\n<!-- READONLY MODE -->\n<div *ngIf=\"isReadOnly && !isUsedNativeEditorInReadMode\" class=\"ux-editor ux-editor--readonly {{styleClass}}\" [class.ux-editor--empty]=\"!value\" tabindex=\"{{tabindex}}\" (click)=\"enableEditorOnClickFocus($event)\" (focusin)=\"enableEditorOnClickFocus($event)\">\n <ux-editor-view-html *ngIf=\"format === 'html' || format === 'text'\" [content]=\"value\" [theme]=\"theme\" [styles]=\"hasReadOnlyStyles ? style : null\"></ux-editor-view-html>\n <ux-editor-view *ngIf=\"format === 'object' || format === 'json'\" [content]=\"value\" [format]=\"format\" [theme]=\"theme\" [styles]=\"hasReadOnlyStyles ? style : null\"></ux-editor-view>\n</div>\n\n\n<!-- DEBUGGER -->\n<div *ngIf=\"debug\" class=\"ux-editor__debug\">\n <div class=\"ux-editor__debug-title\">UX-EDITOR debug</div>\n <div class=\"ux-editor__debug-section\">\n <strong>OPTIONS:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">id: <span class=\"eui-u-color-black\">{{generatedId}}</span></span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">toolbarPosition: {{customToolbarPosition}}</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isReadOnly\" [class.ux-editor__debug-badge--off]=\"!isReadOnly\">isReadOnly</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isEnabledOnFocus\" [class.ux-editor__debug-badge--off]=\"!isEnabledOnFocus\">isEnabledOnFocus</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"preserveWhitespace\" [class.ux-editor__debug-badge--off]=\"!preserveWhitespace\">preserveWhitespace</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"spellcheck\" [class.ux-editor__debug-badge--off]=\"!spellcheck\">spellcheck</span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">maxLength: <span class=\"eui-u-color-black\">{{maxLength}}</span></span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>EVENTS:</strong>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isFocused\" [class.ux-editor__debug-badge--off]=\"!isFocused\">onFocus</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isBlured\" [class.ux-editor__debug-badge--off]=\"!isBlured\">onBlur</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isEditorCreated\" [class.ux-editor__debug-badge--off]=\"!isEditorCreated\">onEditorCreated</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"hasEditorChanged\" [class.ux-editor__debug-badge--off]=\"!hasEditorChanged\">onEditorChanged</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"hasContentChanged\" [class.ux-editor__debug-badge--off]=\"!hasContentChanged\">onContentChanged</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"hasSelectionChanged\" [class.ux-editor__debug-badge--off]=\"!hasSelectionChanged\">onSelectionChanged</span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>FORM:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">controlName: <span class=\"eui-u-color-black\">{{formControlName}}</span></span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isRequired\" [class.ux-editor__debug-badge--off]=\"!isRequired\">isRequired</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isFormControlValid\" [class.ux-editor__debug-badge--alert]=\"!isFormControlValid\">isFormControlValid</span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">validationErrorMessage: <span class=\"eui-u-color-{{feedbackTypeClass}}\">{{formValidationErrorMessage}}</span></span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--on\" [class.ux-editor__debug-badge--alert]=\"!isMaxLengthValid\">isMaxLengthValid</span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>STYLE:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">{{ style | json}}</span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>SOURCE:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">format: <span class=\"eui-u-color-black\">{{format}}</span></span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">charactersLeft: <span [ngClass]=\"isMaxLengthValid ? 'eui-u-color-black' : 'eui-u-color-danger'\">{{charactersLeft}}</span></span>\n\n </div>\n <div class=\"ux-editor__debug-source\">\n <code *ngIf=\"format === 'text' || format === 'html'\">{{formControl.value}}</code>\n <code *ngIf=\"format === 'json' || format === 'object'\"><pre class=\"ux-editor__debug-source-code\">{{formControl.value | json}}</pre></code>\n </div>\n</div>\n", styles: ["/*!\n* eUI alignments & improvements for ux-editor based on (Ngx-)QuillJS Editor v1.3.7+\n*/.ux-editor-wrapper{position:relative}.ux-editor-wrapper .maxlength-wrapper{background-color:var(--eui-base-color-primary-50);border:1px solid var(--eui-base-color-primary-100);border-radius:3px;color:var(--eui-base-color-white);font-size:.75rem;padding:1px 3px;position:absolute;right:-.5rem;top:-.75rem;z-index:2}.ux-editor-wrapper .maxlength-wrapper.maxlength-wrapper--error{background-color:var(--eui-base-color-danger-75);border:1px solid var(--eui-base-color-danger-100)}.ux-editor{display:block;position:relative}.ux-editor--readonly{padding:var(--eui-base-spacing-s) 0 0 0}.ux-editor--readonly .ql-toolbar{display:none}.ux-editor--readonly .ql-container{border:none}.ux-editor--readonly .ql-editor{min-height:calc(var(--eui-base-spacing-2xl) + 2px);padding:0 var(--eui-base-spacing-m) 0 0!important}.ux-editor--readonly.ux-editor--empty .ql-container{border:none;outline:1px dashed var(--eui-base-color-grey-15)}.ux-editor--readonly.ux-editor--empty .ql-container:hover{outline:1px solid var(--eui-base-color-grey-20)}.ux-editor--focused .ql-container{outline:1px solid var(--eui-base-color-accent-110);box-shadow:var(--eui-base-shadow-1)}.ux-editor--editable .ql-container{background-color:var(--eui-base-color-white);border:1px solid #ccc;padding:.35rem}.ux-editor .ql-toolbar{background-color:var(--eui-base-color-grey-2);border:1px solid var(--eui-base-color-grey-15);padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-xs) 0 var(--eui-base-spacing-xs);font-family:var(--eui-base-font-family);font-size:var(--eui-base-font-size);font-style:normal;font-weight:400}.ux-editor .ql-toolbar.ql-snow button{background:none;border:none;cursor:pointer;display:inline-flex;padding:3px 5px;width:28px}.ux-editor .ql-toolbar.ql-snow .ql-formats{align-items:center;background-color:var(--eui-base-color-grey-5);border:1px solid var(--eui-base-color-grey-15);border-radius:5px;display:inline-flex;margin-bottom:var(--eui-base-spacing-xs);margin-right:var(--eui-base-spacing-xs);vertical-align:middle}.ux-editor .ql-toolbar.ql-snow .ql-formats .ql-picker{align-items:center;color:var(--eui-base-color-grey-90);display:inline-flex;font-size:var(--eui-base-font-size);height:var(--eui-base-spacing-xl);max-height:var(--eui-base-spacing-xl);position:relative;vertical-align:middle}.ux-editor .ql-toolbar.ql-snow .ql-formats .ql-picker.ql-expanded .ql-picker-label{border-color:transparent}.ux-editor .ql-toolbar.ql-snow .ql-formats button{align-items:center;background-color:transparent;border:0 solid var(--eui-base-color-grey-15);box-shadow:none;color:var(--eui-base-color-grey-90);display:inline-flex;height:var(--eui-base-spacing-xl);justify-content:center;min-width:var(--eui-base-spacing-xl)}.ux-editor .ql-toolbar.ql-snow .ql-formats button:hover{background:var(--eui-base-color-grey-10);color:var(--eui-base-color-info-100)}.ux-editor .ql-toolbar.ql-snow .ql-formats button.active,.ux-editor .ql-toolbar.ql-snow .ql-formats button.ql-active{background:var(--eui-base-color-accent-100);color:var(--eui-base-color-primary-100)}.ux-editor .ql-toolbar.ql-snow .ql-formats button:first-child{border-radius:5px 0 0 5px}.ux-editor .ql-toolbar.ql-snow .ql-formats button:last-child{border-radius:0 5px 5px 0}.ux-editor .ql-toolbar.ql-snow .ql-formats button .eui-icon{font-size:var(--eui-base-font-size-2xl)}.ux-editor .ql-toolbar.ql-snow .ql-formats button:active,.ux-editor .ql-toolbar.ql-snow .ql-formats button:focus{z-index:auto;border-color:var(--eui-base-color-accessible-focus)!important;box-shadow:inset 0 0 0 1px var(--eui-base-color-accessible-focus),inset 0 0 0 2px var(--eui-base-color-grey-5);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters{align-items:center;cursor:default;display:inline-flex;width:auto}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .chars-counter{color:var(--eui-base-color-info-100);font-size:var(--eui-base-font-size-s);font-weight:900}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .chars-counter.chars-counter--error{color:var(--eui-base-color-danger-100)}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .words-counter{color:var(--eui-base-color-info-100);font-size:var(--eui-base-font-size-s);font-weight:900}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .chars-label,.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .words-label{color:var(--eui-base-color-grey-80);font-size:var(--eui-base-font-size-xs)}.ux-editor .ql-toolbar.ql-snow .ql-formats select{background-color:transparent;border:.5px solid var(--eui-base-color-black);border-radius:5px;cursor:pointer;font-size:var(--eui-base-font-size-s);outline:0;padding:.4rem;vertical-align:middle;width:90px}.ux-editor .ql-toolbar.ql-snow .ql-formats select:active,.ux-editor .ql-toolbar.ql-snow .ql-formats select:focus{z-index:auto;border-color:var(--eui-base-color-accessible-focus)!important;box-shadow:inset 0 0 0 1px var(--eui-base-color-accessible-focus),inset 0 0 0 2px var(--eui-base-color-grey-5);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.ux-editor .ql-toolbar.ql-snow .ql-formats .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:1px}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker{height:var(--eui-base-spacing-xl);padding:var(--eui-base-spacing-2xs) 0;width:calc(7 * var(--eui-base-spacing-m))}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item:before{content:\"Normal\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=small]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=small]:before{content:\"Small\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=smaller]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smaller]:before{content:\"Smaller\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=smallest]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smallest]:before{content:\"Smallest\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=large]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=large]:before{content:\"Large\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=huge]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=huge]:before{content:\"Huge\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=small]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-size-small{font-size:var(--eui-base-font-size-s)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smaller]:before{font-size:var(--eui-base-font-size-xs)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smallest]:before{font-size:var(--eui-base-font-size-2xs)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=large]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-size-large{font-size:var(--eui-base-font-size-xl)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=huge]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-size-huge{font-size:var(--eui-base-font-size-4xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker{height:var(--eui-base-spacing-xl);padding:var(--eui-base-spacing-2xs) 0;width:calc(8 * var(--eui-base-spacing-m))}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item:before{content:\"Normal\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"1\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"1\"]:before{content:\"Heading 1\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"2\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"2\"]:before{content:\"Heading 2\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"3\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"3\"]:before{content:\"Heading 3\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"4\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"4\"]:before{content:\"Heading 4\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"5\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"5\"]:before{content:\"Heading 5\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"6\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"6\"]:before{content:\"Heading 6\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"1\"]:before{font-size:var(--eui-base-font-size-4xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"2\"]:before{font-size:var(--eui-base-font-size-3xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"3\"]:before{font-size:var(--eui-base-font-size-2xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"4\"]:before{font-size:var(--eui-base-font-size-xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"5\"]:before{font-size:var(--eui-base-font-size-l)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"6\"]:before{font-size:var(--eui-base-font-size-m)}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker{height:var(--eui-base-spacing-xl);padding:var(--eui-base-spacing-2xs) 0;width:calc(8 * var(--eui-base-spacing-m))}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-label:before,.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item:before{content:\"Sans Serif\"}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-label[data-value=serif]:before,.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=serif]:before{content:\"Serif\"}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-label[data-value=monospace]:before,.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=monospace]:before{content:\"Monospace\"}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=sans-serif]:before{font-family:arial,sans-serif!important}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=serif]:before{font-family:times new roman,serif!important}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=monospace]:before{font-family:courier new,monospace!important}.ux-editor .ql-toolbar.ql-snow .ql-color-picker{width:var(--eui-base-spacing-xl)}.ux-editor .ql-toolbar.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px;display:inline-flex}.ux-editor .ql-container{box-sizing:border-box;height:100%;margin:0;position:relative;resize:vertical;font-family:var(--eui-base-font-family);font-size:var(--eui-base-font-size);font-style:normal;font-weight:400}.ux-editor .ql-container:focus{outline:1px solid var(--eui-base-color-accent-110)}.ux-editor .ql-editor{box-sizing:border-box;height:100%;line-height:var(--eui-base-line-height);outline:none;overflow-y:auto;padding:var(--eui-base-spacing-s);tab-size:4;text-align:left;white-space:pre-wrap;word-break:normal;word-wrap:break-word;font-family:var(--eui-base-font-family);font-size:var(--eui-base-font-size);font-style:normal;font-weight:400}.ux-editor .ql-editor h1{font-size:var(--eui-base-font-size-4xl)!important}.ux-editor .ql-editor h2{font-size:var(--eui-base-font-size-3xl)!important}.ux-editor .ql-editor h3{font-size:var(--eui-base-font-size-2xl)!important}.ux-editor .ql-editor h4{font-size:var(--eui-base-font-size-xl)!important}.ux-editor .ql-editor h5{font-size:var(--eui-base-font-size-l)!important}.ux-editor .ql-editor h6{font-size:var(--eui-base-font-size-m)!important}.ux-editor .ql-editor .h7{font-size:var(--eui-base-font-size-s)!important}.ux-editor .ql-editor .h8{font-size:var(--eui-base-font-size-xs)!important}.ux-editor .ql-editor .h9{font-size:var(--eui-base-font-size-2xs)!important}.ux-editor .ql-editor p{padding-bottom:var(--eui-base-spacing-s)!important}.ux-editor .ql-editor p:last-child{padding-bottom:0!important}.ux-editor .ql-editor em,.ux-editor .ql-editor i{font-style:italic!important}.ux-editor .ql-editor strong,.ux-editor .ql-editor b{font-weight:700!important}.ux-editor .ql-editor strong em,.ux-editor .ql-editor strong i,.ux-editor .ql-editor b em,.ux-editor .ql-editor b i{font-style:italic!important;font-weight:700!important}.ux-editor .ql-editor strong em u,.ux-editor .ql-editor strong i u,.ux-editor .ql-editor b em u,.ux-editor .ql-editor b i u{text-decoration:underline!important}.ux-editor .ql-editor blockquote{border-left:var(--eui-base-spacing-xs) solid var(--eui-base-color-grey-20);margin-bottom:0;margin-top:0;padding-left:var(--eui-base-spacing-m)}.ux-editor .ql-editor code,.ux-editor .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ux-editor .ql-editor pre{margin-bottom:var(--eui-base-spacing-xs);margin-top:var(--eui-base-spacing-xs);padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m);white-space:pre-wrap}.ux-editor .ql-editor code{font-size:85%;padding:2px 4px;word-break:break-word}.ux-editor .ql-editor ol,.ux-editor .ql-editor ul{padding-left:0}.ux-editor .ql-editor ol{counter-reset:inherit}.ux-editor .ql-editor pre.ql-syntax{background-color:var(--eui-base-color-grey-80);color:#f5f5f5;overflow:visible}.ux-editor .ql-editor iframe,.ux-editor .ql-editor img{display:inline-block;height:1;width:1}.ux-editor .ql-editor.ql-blank:before{left:var(--eui-base-spacing-m);position:absolute;right:0}.ux-editor .ql-tooltip{background-color:var(--eui-base-color-grey-10);left:50%!important;margin:0 auto;outline:2px solid var(--eui-base-color-primary-100);position:absolute;top:50%!important;transform:translate(-50%,-50%)!important;width:70%;box-shadow:var(--eui-base-shadow-1)}.ux-editor .ql-tooltip input[type=text]{border:1px solid #ccc;display:none;font-size:13px;height:26px;margin:0;padding:3px 5px;width:75%}.ux-editor .ql-tooltip a.ql-preview{display:inline-block;max-width:60%;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top;width:100%}.ux-editor__debug{background-color:#fff3cd;border:1px solid #f5c6cb;border-radius:.25rem;color:#856404;font:.85rem consolas,monospace,sans-serif;margin:var(--eui-base-spacing-m) 0;padding:var(--eui-base-spacing-s) 1.25rem;position:relative}.ux-editor__debug-section{align-items:center;display:flex;flex-wrap:wrap;padding-bottom:var(--eui-base-spacing-xs)}.ux-editor__debug-title{color:#e83e8c;font-size:var(--eui-base-font-size-xl);font-weight:900;padding-bottom:var(--eui-base-spacing-xs)}.ux-editor__debug-badge{font-size:var(--eui-base-font-size-xs);font-weight:400;margin:0 var(--eui-base-spacing-2xs);padding:var(--eui-base-spacing-3xs) var(--eui-base-spacing-xs)}.ux-editor__debug-badge--off{background-color:#e8e0c4;border:1px solid #d2d2d2;color:#888}.ux-editor__debug-badge--on{background-color:#28a745;border:1px solid #218037;color:var(--eui-base-color-white)}.ux-editor__debug-badge--alert{background-color:#dc3545;border:1px solid #721d25;color:var(--eui-base-color-white)}.ux-editor__debug-source{background-color:#ffeeba;font-size:var(--eui-base-font-size);height:auto;max-height:150px;outline:1px dashed silver;overflow-y:auto;padding:var(--eui-base-spacing-xs);position:relative}.ux-editor__debug-source-code{color:#e83e8c;font:90% consolas,monospace}.ux-editor__debug code{font-size:var(--eui-base-font-size-xs)}.ux-editor__about{background:var(--eui-base-color-white);display:block;height:10rem;left:50%;overflow-y:auto;padding:var(--eui-base-spacing-m);position:absolute;transform:translate(-50%,25%);width:20rem;z-index:1;box-shadow:var(--eui-base-shadow-3)}ux-editor.ng-invalid.ng-touched .ux-editor:not(.ux-editor--readonly) .ql-container{outline:1px solid var(--eui-base-color-danger-100)}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i2.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i1$1.NgSelectOption; }), selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i0.forwardRef(function () { return i1$1.ɵNgSelectMultipleOption; }), selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i0.forwardRef(function () { return i1$1.NgControlStatus; }), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(function () { return i1$1.RequiredValidator; }), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(function () { return i1$1.FormControlDirective; }), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i0.forwardRef(function () { return i3.QuillEditorComponent; }), selector: "quill-editor", inputs: ["format", "theme", "modules", "debug", "readOnly", "placeholder", "maxLength", "minLength", "required", "formats", "customToolbarPosition", "sanitize", "styles", "strict", "scrollingContainer", "bounds", "customOptions", "trackChanges", "preserveWhitespace", "valueGetter", "valueSetter"], outputs: ["onEditorCreated", "onContentChanged", "onSelectionChanged", "onFocus", "onBlur"] }, { kind: "component", type: i0.forwardRef(function () { return UxEditorViewComponent; }), selector: "ux-editor-view", inputs: ["format", "theme", "modules", "debug", "formats", "strict", "content", "customOptions", "preserveWhitespace", "styles"] }, { kind: "component", type: i0.forwardRef(function () { return UxEditorViewHTMLComponent; }), selector: "ux-editor-view-html", inputs: ["content", "theme", "styles"] }, { kind: "component", type: i0.forwardRef(function () { return UxEditorCountersComponent; }), selector: "ux-editor-counters", inputs: ["charactersCounter", "charactersLabel", "wordsCounter", "wordsLabel", "isMaxLengthValid"] }, { kind: "pipe", type: i0.forwardRef(function () { return i2.JsonPipe; }), name: "json" }], encapsulation: i0.ViewEncapsulation.None });
|
|
720
|
+
/** @nocollapse */ UxEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.4", type: UxEditorComponent, selector: "ux-editor", inputs: { e2eAttr: "e2eAttr", id: "id", style: "style", styleClass: "styleClass", placeholder: "placeholder", formats: "formats", format: "format", isEnabledOnFocus: "isEnabledOnFocus", isReadOnly: "isReadOnly", isUsedNativeEditorInReadMode: "isUsedNativeEditorInReadMode", customToolbarOptions: "customToolbarOptions", theme: "theme", debug: "debug", isEditable: "isEditable", formControlName: "formControlName", feedbackTypeClass: "feedbackTypeClass", validationErrorMessage: "validationErrorMessage", tabindex: "tabindex", hasReadOnlyStyles: "hasReadOnlyStyles", isMinimalToolbar: "isMinimalToolbar", modules: "modules", maxLength: "maxLength", minLength: "minLength", isRequired: "isRequired", customToolbarPosition: "customToolbarPosition", strict: "strict", isUsedSanitizationForHtml: "isUsedSanitizationForHtml", scrollingContainer: "scrollingContainer", bounds: "bounds", customOptions: "customOptions", trackChanges: "trackChanges", preserveWhitespace: "preserveWhitespace", spellcheck: "spellcheck", showCounters: "showCounters", isImageUrl: "isImageUrl" }, outputs: { onInit: "onInit", onTextChange: "onTextChange", onSelectionChange: "onSelectionChange", onEditorCreated: "onEditorCreated", onEditorChanged: "onEditorChanged", onContentChanged: "onContentChanged", onSelectionChanged: "onSelectionChanged", onFocus: "onFocus", onBlur: "onBlur", getCharactersCounter: "getCharactersCounter", getWordsCounter: "getWordsCounter" }, queries: [{ propertyName: "customEditorToolbar", first: true, predicate: i0.forwardRef(function () { return UxEditorCustomToolbarTagDirective; }), descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"ux-editor-wrapper\">\n <quill-editor *ngIf=\"!isReadOnly || isUsedNativeEditorInReadMode\"\n [id]=\"generatedId\"\n class=\"ux-editor {{styleClass}}\"\n [class.ux-editor--readonly]=\"isReadOnly\"\n [class.ux-editor--focused]=\"isFocused\"\n [class.ux-editor--editable]=\"!isReadOnly\"\n [format]=\"format\"\n [formats]=\"formats\"\n [maxLength]=\"maxLength\"\n [minLength]=\"minLength\"\n [readOnly]=\"isReadOnly\"\n [required]=\"isRequired\"\n [sanitize]=\"isUsedSanitizationForHtml\"\n [modules]=\"modules\"\n [theme]=\"theme\"\n [placeholder]=\"placeholder\"\n [styles]=\"style\"\n [customToolbarPosition]=\"customToolbarPosition\"\n [preserveWhitespace]=\"preserveWhitespace\"\n [spellcheck]=\"spellcheck\"\n [formControl]=\"formControl\"\n [debug]=\"false\"\n [tabindex]=\"tabindex\"\n [attr.aria-invalid]=\"ariaInvalid\"\n [attr.aria-required]=\"isRequired\"\n (onEditorCreated)=\"onEditorCreatedEmit($event)\"\n (onEditorChanged)=\"onEditorChangedEmit($event)\"\n (onContentChanged)=\"onContentChangedEmit($event)\"\n (onSelectionChanged)=\"onSelectionChangedEmit($event)\"\n (onFocus)=\"onFocusEmit($event)\"\n (onBlur)=\"onBlurEmit($event)\">\n\n <!-- PREDEFINED DEFAULT TOOLBAR -->\n <div *ngIf=\"!customToolbarOptions && !customEditorToolbar\" quill-editor-toolbar (focusin)=\"onToolbarFocusIn($event)\" (focusout)=\"onToolbarFocusOut($event)\">\n <span class=\"ql-formats\">\n <select class=\"ql-header\" title=\"Style{{crlf}}Apply an HTML tag or CSS class to the selected text\">\n <option value=\"1\">Heading 1</option>\n <option value=\"2\">Heading 2</option>\n <option value=\"3\">Heading 3</option>\n <option value=\"4\">Heading 4</option>\n <option value=\"5\">Heading 5</option>\n <option value=\"6\">Heading 6</option>\n <option selected>Normal</option>\n </select>\n </span>\n <!-- <span class=\"ql-formats\">\n <select class=\"ql-size\" title=\"Font size{{crlf}}Change the font size of the selected text\">\n <option value=\"small\">Small</option>\n <option selected>Normal</option>\n <option value=\"large\">Large</option>\n <option value=\"huge\">Huge</option>\n </select>\n </span> -->\n <span *ngIf=\"!isMinimalToolbar\" class=\"ql-formats\">\n <select class=\"ql-font\" title=\"Font{{crlf}}Change the font face\">\n <option selected>Sans Serif</option>\n <option value=\"serif\">Serif</option>\n <option value=\"monospace\">Monospace</option>\n </select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-bold\" aria-label=\"Bold (Ctrl + B)\" title=\"Bold (Ctrl + B){{crlf}}Make the selected text bold\"></button>\n <button class=\"ql-italic\" aria-label=\"Italic (Ctrl + I)\" title=\"Italic (Ctrl + I){{crlf}}Italicize the selected text\"></button>\n <button class=\"ql-underline\" aria-label=\"Underline (Ctrl + U)\" title=\"Underline (Ctrl + U){{crlf}}Underline the selected text\"></button>\n <button class=\"ql-strike\" aria-label=\"Strikethrough\" title=\"Strikethrough{{crlf}}Draw a line to the middle of the selected text\"></button>\n </span>\n <span class=\"ql-formats\">\n <select class=\"ql-color\" aria-label=\"Font Color\" title=\"Font Color{{crlf}}Change the text color\"></select>\n <select class=\"ql-background\" aria-label=\"Text Highlight Color\" title=\"Text Highlight Color{{crlf}}Change the background color of the text\"></select>\n </span>\n <span *ngIf=\"!isMinimalToolbar\" class=\"ql-formats\">\n <button class=\"ql-script\" value=\"sub\" aria-label=\"Subscript\" title=\"Subscript{{crlf}}Create ssmall letters below the text baseline\"></button>\n <button class=\"ql-script\" value=\"super\" aria-label=\"Superscript\" title=\"Superscript{{crlf}}Create small letters above the line of the text\"></button>\n </span>\n <span class=\"ql-formats\">\n <select class=\"ql-align\" aria-label=\"Text Align\" title=\"Text Align{{crlf}}Align the text to the selected position: left (default), center, right or justify\">\n <option selected></option>\n <option value=\"center\"></option>\n <option value=\"right\"></option>\n <option value=\"justify\"></option>\n </select>\n </span>\n <span *ngIf=\"!isMinimalToolbar\" class=\"ql-formats\">\n <button class=\"ql-list\" value=\"ordered\" aria-label=\"Ordered List\" title=\"Numbering{{crlf}}Start an ordered list\"></button>\n <button class=\"ql-list\" value=\"bullet\" aria-label=\"Unordered List\" title=\"Bullets{{crlf}}Start a bulleted list\"></button>\n <button class=\"ql-indent\" value=\"-1\" type=\"button\" aria-label=\"Decrease Indent\" title=\"Decrease Indent{{crlf}}Decrease the indent level of the paragraph\"></button>\n <button class=\"ql-indent\" value=\"+1\" type=\"button\" aria-label=\"Increase Indent\" title=\"Increase Indent{{crlf}}Increase the indent level of the paragraph\"></button>\n </span>\n <!-- Insert group -->\n <span class=\"ql-formats\">\n <button *ngIf=\"!isMinimalToolbar\" class=\"ql-blockquote\" aria-label=\"Blockquote\" title=\"Blockquote{{crlf}}Create a quoted block of the selected text\"></button>\n <button *ngIf=\"!isMinimalToolbar\" class=\"ql-code-block\" aria-label=\"Insert Code Block\" title=\"Insert Code Block{{crlf}}Insert a code block at the cursor row position\"></button>\n <button class=\"ql-link\" aria-label=\"Insert Link\" title=\"Insert Hyperlink (Ctrl + K){{crlf}}Create a link to a Web page, a picture, an e-mail address or a program\"></button>\n <button *ngIf=\"!isImageUrl\" class=\"ql-image\" aria-label=\"Insert Image\" title=\"Insert Picture{{crlf}}Insert a picture from a file\"></button>\n <button *ngIf=\"isImageUrl\" class=\"ql-image\" aria-label=\"Insert Image from URL\" title=\"Insert Picture from URL{{crlf}}Insert a picture from a remote URL\">\n <span class=\"eui-icon eui-icon-image-add\"></span></button>\n <button *ngIf=\"!isMinimalToolbar\" class=\"ql-video\" aria-label=\"Insert Video\" title=\"Insert Video{{crlf}}Insert a video from a file\"></button>\n </span>\n <!-- Clean / Clear -->\n <span class=\"ql-formats\">\n <button class=\"ql-clean\" aria-label=\"Remove Styles\" title=\"Remove Styles{{crlf}}Remove the styles of the selected text\"></button>\n <button aria-label=\"Delete\" title=\"Delete content{{crlf}}Permanently deletes editor's contents\" (click)=\"editorDeleteContent($event)\"><span class=\"eui-icon eui-icon-delete-forever\"></span></button>\n </span>\n\n <!-- Undo/Redo -->\n <span class=\"ql-formats\">\n <button aria-label=\"Undo (Ctrl + Z)\" title=\"Undo (Ctrl + Z){{crlf}}Cancels the previous action\" (click)=\"editorUndo()\"><span class=\"eui-icon eui-icon-undo\"></span></button>\n <button aria-label=\"Redo (Ctrl + Y)\" title=\"Redo (Ctrl + Y){{crlf}}Do the next history action again\" (click)=\"editorRedo()\"><span class=\"eui-icon eui-icon-redo\"></span></button>\n </span>\n <!-- Counters -->\n <span *ngIf=\"showCounters && (format === 'html' || format === 'text')\" class=\"ql-formats\">\n <ux-editor-counters [charactersCounter]=\"charactersCounter\"\n [charactersLabel]=\"charactersLabel\"\n [wordsCounter]=\"wordsCounter\"\n [wordsLabel]=\"wordsLabel\"\n [isMaxLengthValid]=\"isMaxLengthValid\"\n aria-label=\"Counters\"\n title=\"Counters{{crlf}}Characters and words counters (stripped Html)\">\n </ux-editor-counters>\n </span>\n </div>\n\n <!-- USER CUSTOM TOOLBAR (HTML FORMAT) -->\n <div *ngIf=\"customEditorToolbar\" quill-editor-toolbar (focusin)=\"onToolbarFocusIn($event)\" (focusout)=\"onToolbarFocusOut($event)\">\n <ng-content select=\"uxEditorCustomToolbar\"></ng-content>\n </div>\n </quill-editor>\n\n <!-- MAXLENGTH INDICATOR -->\n <div *ngIf=\"!isReadOnly && charactersLeft > -1\" class=\"maxlength-wrapper\" [class.maxlength-wrapper--error]=\"!isMaxLengthValid\">{{ charactersLeft }}</div>\n</div>\n\n\n<!-- READONLY MODE -->\n<div *ngIf=\"isReadOnly && !isUsedNativeEditorInReadMode\" class=\"ux-editor ux-editor--readonly {{styleClass}}\" [class.ux-editor--empty]=\"!value\" tabindex=\"{{tabindex}}\" (click)=\"enableEditorOnClickFocus($event)\" (focusin)=\"enableEditorOnClickFocus($event)\">\n <ux-editor-view-html *ngIf=\"format === 'html' || format === 'text'\" [content]=\"value\" [theme]=\"theme\" [styles]=\"hasReadOnlyStyles ? style : null\"></ux-editor-view-html>\n <ux-editor-view *ngIf=\"format === 'object' || format === 'json'\" [content]=\"value\" [format]=\"format\" [theme]=\"theme\" [styles]=\"hasReadOnlyStyles ? style : null\"></ux-editor-view>\n</div>\n\n\n<!-- DEBUGGER -->\n<div *ngIf=\"debug\" class=\"ux-editor__debug\">\n <div class=\"ux-editor__debug-title\">UX-EDITOR debug</div>\n <div class=\"ux-editor__debug-section\">\n <strong>OPTIONS:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">id: <span class=\"eui-u-color-black\">{{generatedId}}</span></span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">toolbarPosition: {{customToolbarPosition}}</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isReadOnly\" [class.ux-editor__debug-badge--off]=\"!isReadOnly\">isReadOnly</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isEnabledOnFocus\" [class.ux-editor__debug-badge--off]=\"!isEnabledOnFocus\">isEnabledOnFocus</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"preserveWhitespace\" [class.ux-editor__debug-badge--off]=\"!preserveWhitespace\">preserveWhitespace</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"spellcheck\" [class.ux-editor__debug-badge--off]=\"!spellcheck\">spellcheck</span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">maxLength: <span class=\"eui-u-color-black\">{{maxLength}}</span></span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>EVENTS:</strong>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isFocused\" [class.ux-editor__debug-badge--off]=\"!isFocused\">onFocus</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isBlured\" [class.ux-editor__debug-badge--off]=\"!isBlured\">onBlur</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isEditorCreated\" [class.ux-editor__debug-badge--off]=\"!isEditorCreated\">onEditorCreated</span>\n <!-- <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"hasEditorChanged\" [class.ux-editor__debug-badge--off]=\"!hasEditorChanged\">onEditorChanged</span> -->\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"hasContentChanged\" [class.ux-editor__debug-badge--off]=\"!hasContentChanged\">onContentChanged</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"hasSelectionChanged\" [class.ux-editor__debug-badge--off]=\"!hasSelectionChanged\">onSelectionChanged</span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>FORM:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">controlName: <span class=\"eui-u-color-black\">{{formControlName}}</span></span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isRequired\" [class.ux-editor__debug-badge--off]=\"!isRequired\">isRequired</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isFormControlValid\" [class.ux-editor__debug-badge--alert]=\"!isFormControlValid\">isFormControlValid</span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">validationErrorMessage: <span class=\"eui-u-color-{{feedbackTypeClass}}\">{{formValidationErrorMessage}}</span></span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--on\" [class.ux-editor__debug-badge--alert]=\"!isMaxLengthValid\">isMaxLengthValid</span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>STYLE:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">{{ style | json}}</span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>SOURCE:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">format: <span class=\"eui-u-color-black\">{{format}}</span></span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">charactersLeft: <span [ngClass]=\"isMaxLengthValid ? 'eui-u-color-black' : 'eui-u-color-danger'\">{{charactersLeft}}</span></span>\n\n </div>\n <div class=\"ux-editor__debug-source\">\n <code *ngIf=\"format === 'text' || format === 'html'\">{{formControl.value}}</code>\n <code *ngIf=\"format === 'json' || format === 'object'\"><pre class=\"ux-editor__debug-source-code\">{{formControl.value | json}}</pre></code>\n </div>\n</div>\n", styles: ["/*!\n* eUI alignments & improvements for ux-editor based on (Ngx-)QuillJS Editor v1.3.7+\n*/.ux-editor-wrapper{position:relative}.ux-editor-wrapper .maxlength-wrapper{background-color:var(--eui-base-color-primary-50);border:1px solid var(--eui-base-color-primary-100);border-radius:3px;color:var(--eui-base-color-white);font-size:.75rem;padding:1px 3px;position:absolute;right:-.5rem;top:-.75rem;z-index:2}.ux-editor-wrapper .maxlength-wrapper.maxlength-wrapper--error{background-color:var(--eui-base-color-danger-75);border:1px solid var(--eui-base-color-danger-100)}.ux-editor{display:block;position:relative}.ux-editor--readonly{padding:var(--eui-base-spacing-s) 0 0 0}.ux-editor--readonly .ql-toolbar{display:none}.ux-editor--readonly .ql-container{border:none}.ux-editor--readonly .ql-editor{min-height:calc(var(--eui-base-spacing-2xl) + 2px);padding:0 var(--eui-base-spacing-m) 0 0!important}.ux-editor--readonly.ux-editor--empty .ql-container{border:none;outline:1px dashed var(--eui-base-color-grey-15)}.ux-editor--readonly.ux-editor--empty .ql-container:hover{outline:1px solid var(--eui-base-color-grey-20)}.ux-editor--focused .ql-container{outline:1px solid var(--eui-base-color-accent-110);box-shadow:var(--eui-base-shadow-1)}.ux-editor--editable .ql-container{background-color:var(--eui-base-color-white);border:1px solid #ccc;padding:.35rem}.ux-editor .ql-toolbar{background-color:var(--eui-base-color-grey-2);border:1px solid var(--eui-base-color-grey-15);padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-xs) 0 var(--eui-base-spacing-xs);font-family:var(--eui-base-font-family);font-size:var(--eui-base-font-size);font-style:normal;font-weight:400}.ux-editor .ql-toolbar.ql-snow button{background:none;border:none;cursor:pointer;display:inline-flex;padding:3px 5px;width:28px}.ux-editor .ql-toolbar.ql-snow .ql-formats{align-items:center;background-color:var(--eui-base-color-grey-5);border:1px solid var(--eui-base-color-grey-15);border-radius:5px;display:inline-flex;margin-bottom:var(--eui-base-spacing-xs);margin-right:var(--eui-base-spacing-xs);vertical-align:middle}.ux-editor .ql-toolbar.ql-snow .ql-formats .ql-picker{align-items:center;color:var(--eui-base-color-grey-90);display:inline-flex;font-size:var(--eui-base-font-size);height:var(--eui-base-spacing-xl);max-height:var(--eui-base-spacing-xl);position:relative;vertical-align:middle}.ux-editor .ql-toolbar.ql-snow .ql-formats .ql-picker.ql-expanded .ql-picker-label{border-color:transparent}.ux-editor .ql-toolbar.ql-snow .ql-formats button{align-items:center;background-color:transparent;border:0 solid var(--eui-base-color-grey-15);box-shadow:none;color:var(--eui-base-color-grey-90);display:inline-flex;height:var(--eui-base-spacing-xl);justify-content:center;min-width:var(--eui-base-spacing-xl)}.ux-editor .ql-toolbar.ql-snow .ql-formats button:hover{background:var(--eui-base-color-grey-10);color:var(--eui-base-color-info-100)}.ux-editor .ql-toolbar.ql-snow .ql-formats button.active,.ux-editor .ql-toolbar.ql-snow .ql-formats button.ql-active{background:var(--eui-base-color-accent-100);color:var(--eui-base-color-primary-100)}.ux-editor .ql-toolbar.ql-snow .ql-formats button:first-child{border-radius:5px 0 0 5px}.ux-editor .ql-toolbar.ql-snow .ql-formats button:last-child{border-radius:0 5px 5px 0}.ux-editor .ql-toolbar.ql-snow .ql-formats button .eui-icon{font-size:var(--eui-base-font-size-2xl)}.ux-editor .ql-toolbar.ql-snow .ql-formats button:active,.ux-editor .ql-toolbar.ql-snow .ql-formats button:focus{z-index:auto;border-color:var(--eui-base-color-accessible-focus)!important;box-shadow:inset 0 0 0 1px var(--eui-base-color-accessible-focus),inset 0 0 0 2px var(--eui-base-color-grey-5);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters{align-items:center;cursor:default;display:inline-flex;width:auto}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .chars-counter{color:var(--eui-base-color-info-100);font-size:var(--eui-base-font-size-s);font-weight:900}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .chars-counter.chars-counter--error{color:var(--eui-base-color-danger-100)}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .words-counter{color:var(--eui-base-color-info-100);font-size:var(--eui-base-font-size-s);font-weight:900}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .chars-label,.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .words-label{color:var(--eui-base-color-grey-80);font-size:var(--eui-base-font-size-xs)}.ux-editor .ql-toolbar.ql-snow .ql-formats select{background-color:transparent;border:.5px solid var(--eui-base-color-black);border-radius:5px;cursor:pointer;font-size:var(--eui-base-font-size-s);outline:0;padding:.4rem;vertical-align:middle;width:90px}.ux-editor .ql-toolbar.ql-snow .ql-formats select:active,.ux-editor .ql-toolbar.ql-snow .ql-formats select:focus{z-index:auto;border-color:var(--eui-base-color-accessible-focus)!important;box-shadow:inset 0 0 0 1px var(--eui-base-color-accessible-focus),inset 0 0 0 2px var(--eui-base-color-grey-5);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.ux-editor .ql-toolbar.ql-snow .ql-formats .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:1px}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker{height:var(--eui-base-spacing-xl);padding:var(--eui-base-spacing-2xs) 0;width:calc(7 * var(--eui-base-spacing-m))}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item:before{content:\"Normal\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=small]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=small]:before{content:\"Small\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=smaller]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smaller]:before{content:\"Smaller\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=smallest]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smallest]:before{content:\"Smallest\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=large]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=large]:before{content:\"Large\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=huge]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=huge]:before{content:\"Huge\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=small]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-size-small{font-size:var(--eui-base-font-size-s)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smaller]:before{font-size:var(--eui-base-font-size-xs)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smallest]:before{font-size:var(--eui-base-font-size-2xs)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=large]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-size-large{font-size:var(--eui-base-font-size-xl)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=huge]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-size-huge{font-size:var(--eui-base-font-size-4xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker{height:var(--eui-base-spacing-xl);padding:var(--eui-base-spacing-2xs) 0;width:calc(8 * var(--eui-base-spacing-m))}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item:before{content:\"Normal\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"1\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"1\"]:before{content:\"Heading 1\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"2\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"2\"]:before{content:\"Heading 2\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"3\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"3\"]:before{content:\"Heading 3\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"4\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"4\"]:before{content:\"Heading 4\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"5\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"5\"]:before{content:\"Heading 5\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"6\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"6\"]:before{content:\"Heading 6\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"1\"]:before{font-size:var(--eui-base-font-size-4xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"2\"]:before{font-size:var(--eui-base-font-size-3xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"3\"]:before{font-size:var(--eui-base-font-size-2xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"4\"]:before{font-size:var(--eui-base-font-size-xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"5\"]:before{font-size:var(--eui-base-font-size-l)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"6\"]:before{font-size:var(--eui-base-font-size-m)}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker{height:var(--eui-base-spacing-xl);padding:var(--eui-base-spacing-2xs) 0;width:calc(8 * var(--eui-base-spacing-m))}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-label:before,.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item:before{content:\"Sans Serif\"}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-label[data-value=serif]:before,.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=serif]:before{content:\"Serif\"}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-label[data-value=monospace]:before,.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=monospace]:before{content:\"Monospace\"}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=sans-serif]:before{font-family:arial,sans-serif!important}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=serif]:before{font-family:times new roman,serif!important}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=monospace]:before{font-family:courier new,monospace!important}.ux-editor .ql-toolbar.ql-snow .ql-color-picker{width:var(--eui-base-spacing-xl)}.ux-editor .ql-toolbar.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px;display:inline-flex}.ux-editor .ql-container{box-sizing:border-box;height:100%;margin:0;position:relative;resize:vertical;font-family:var(--eui-base-font-family);font-size:var(--eui-base-font-size);font-style:normal;font-weight:400}.ux-editor .ql-container:focus{outline:1px solid var(--eui-base-color-accent-110)}.ux-editor .ql-editor{box-sizing:border-box;height:100%;line-height:var(--eui-base-line-height);outline:none;overflow-y:auto;padding:var(--eui-base-spacing-s);tab-size:4;text-align:left;white-space:pre-wrap;word-break:normal;word-wrap:break-word;font-family:var(--eui-base-font-family);font-size:var(--eui-base-font-size);font-style:normal;font-weight:400}.ux-editor .ql-editor h1{font-size:var(--eui-base-font-size-4xl)!important}.ux-editor .ql-editor h2{font-size:var(--eui-base-font-size-3xl)!important}.ux-editor .ql-editor h3{font-size:var(--eui-base-font-size-2xl)!important}.ux-editor .ql-editor h4{font-size:var(--eui-base-font-size-xl)!important}.ux-editor .ql-editor h5{font-size:var(--eui-base-font-size-l)!important}.ux-editor .ql-editor h6{font-size:var(--eui-base-font-size-m)!important}.ux-editor .ql-editor .h7{font-size:var(--eui-base-font-size-s)!important}.ux-editor .ql-editor .h8{font-size:var(--eui-base-font-size-xs)!important}.ux-editor .ql-editor .h9{font-size:var(--eui-base-font-size-2xs)!important}.ux-editor .ql-editor p{padding-bottom:var(--eui-base-spacing-s)!important}.ux-editor .ql-editor p:last-child{padding-bottom:0!important}.ux-editor .ql-editor em,.ux-editor .ql-editor i{font-style:italic!important}.ux-editor .ql-editor strong,.ux-editor .ql-editor b{font-weight:700!important}.ux-editor .ql-editor strong em,.ux-editor .ql-editor strong i,.ux-editor .ql-editor b em,.ux-editor .ql-editor b i{font-style:italic!important;font-weight:700!important}.ux-editor .ql-editor strong em u,.ux-editor .ql-editor strong i u,.ux-editor .ql-editor b em u,.ux-editor .ql-editor b i u{text-decoration:underline!important}.ux-editor .ql-editor blockquote{border-left:var(--eui-base-spacing-xs) solid var(--eui-base-color-grey-20);margin-bottom:0;margin-top:0;padding-left:var(--eui-base-spacing-m)}.ux-editor .ql-editor code,.ux-editor .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ux-editor .ql-editor pre{margin-bottom:var(--eui-base-spacing-xs);margin-top:var(--eui-base-spacing-xs);padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m);white-space:pre-wrap}.ux-editor .ql-editor code{font-size:85%;padding:2px 4px;word-break:break-word}.ux-editor .ql-editor ol,.ux-editor .ql-editor ul{padding-left:0}.ux-editor .ql-editor ol{counter-reset:inherit}.ux-editor .ql-editor pre.ql-syntax{background-color:var(--eui-base-color-grey-80);color:#f5f5f5;overflow:visible}.ux-editor .ql-editor iframe,.ux-editor .ql-editor img{display:inline-block;height:1;width:1}.ux-editor .ql-editor.ql-blank:before{left:var(--eui-base-spacing-m);position:absolute;right:0}.ux-editor .ql-tooltip{background-color:var(--eui-base-color-grey-10);left:50%!important;margin:0 auto;outline:2px solid var(--eui-base-color-primary-100);position:absolute;top:50%!important;transform:translate(-50%,-50%)!important;width:70%;box-shadow:var(--eui-base-shadow-1)}.ux-editor .ql-tooltip input[type=text]{border:1px solid #ccc;display:none;font-size:13px;height:26px;margin:0;padding:3px 5px;width:75%}.ux-editor .ql-tooltip a.ql-preview{display:inline-block;max-width:60%;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top;width:100%}.ux-editor__debug{background-color:#fff3cd;border:1px solid #f5c6cb;border-radius:.25rem;color:#856404;font:.85rem consolas,monospace,sans-serif;margin:var(--eui-base-spacing-m) 0;padding:var(--eui-base-spacing-s) 1.25rem;position:relative}.ux-editor__debug-section{align-items:center;display:flex;flex-wrap:wrap;padding-bottom:var(--eui-base-spacing-xs)}.ux-editor__debug-title{color:#e83e8c;font-size:var(--eui-base-font-size-xl);font-weight:900;padding-bottom:var(--eui-base-spacing-xs)}.ux-editor__debug-badge{font-size:var(--eui-base-font-size-xs);font-weight:400;margin:0 var(--eui-base-spacing-2xs);padding:var(--eui-base-spacing-3xs) var(--eui-base-spacing-xs)}.ux-editor__debug-badge--off{background-color:#e8e0c4;border:1px solid #d2d2d2;color:#888}.ux-editor__debug-badge--on{background-color:#28a745;border:1px solid #218037;color:var(--eui-base-color-white)}.ux-editor__debug-badge--alert{background-color:#dc3545;border:1px solid #721d25;color:var(--eui-base-color-white)}.ux-editor__debug-source{background-color:#ffeeba;font-size:var(--eui-base-font-size);height:auto;max-height:150px;outline:1px dashed silver;overflow-y:auto;padding:var(--eui-base-spacing-xs);position:relative}.ux-editor__debug-source-code{color:#e83e8c;font:90% consolas,monospace}.ux-editor__debug code{font-size:var(--eui-base-font-size-xs)}.ux-editor__about{background:var(--eui-base-color-white);display:block;height:10rem;left:50%;overflow-y:auto;padding:var(--eui-base-spacing-m);position:absolute;transform:translate(-50%,25%);width:20rem;z-index:1;box-shadow:var(--eui-base-shadow-3)}ux-editor.ng-invalid.ng-touched .ux-editor:not(.ux-editor--readonly) .ql-container{outline:1px solid var(--eui-base-color-danger-100)}\n"], dependencies: [{ kind: "directive", type: i0.forwardRef(function () { return i2.NgClass; }), selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i0.forwardRef(function () { return i2.NgIf; }), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i0.forwardRef(function () { return i1$1.NgSelectOption; }), selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i0.forwardRef(function () { return i1$1.ɵNgSelectMultipleOption; }), selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i0.forwardRef(function () { return i1$1.NgControlStatus; }), selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i0.forwardRef(function () { return i1$1.RequiredValidator; }), selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i0.forwardRef(function () { return i1$1.FormControlDirective; }), selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "component", type: i0.forwardRef(function () { return i3.QuillEditorComponent; }), selector: "quill-editor", inputs: ["format", "theme", "modules", "debug", "readOnly", "placeholder", "maxLength", "minLength", "required", "formats", "customToolbarPosition", "sanitize", "styles", "strict", "scrollingContainer", "bounds", "customOptions", "trackChanges", "preserveWhitespace", "valueGetter", "valueSetter"], outputs: ["onEditorCreated", "onContentChanged", "onSelectionChanged", "onFocus", "onBlur"] }, { kind: "component", type: i0.forwardRef(function () { return UxEditorViewComponent; }), selector: "ux-editor-view", inputs: ["format", "theme", "modules", "debug", "formats", "strict", "content", "customOptions", "preserveWhitespace", "styles"] }, { kind: "component", type: i0.forwardRef(function () { return UxEditorViewHTMLComponent; }), selector: "ux-editor-view-html", inputs: ["content", "theme", "styles"] }, { kind: "component", type: i0.forwardRef(function () { return UxEditorCountersComponent; }), selector: "ux-editor-counters", inputs: ["charactersCounter", "charactersLabel", "wordsCounter", "wordsLabel", "isMaxLengthValid"] }, { kind: "pipe", type: i0.forwardRef(function () { return i2.JsonPipe; }), name: "json" }], encapsulation: i0.ViewEncapsulation.None });
|
|
691
721
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.4", ngImport: i0, type: UxEditorComponent, decorators: [{
|
|
692
722
|
type: Component,
|
|
693
|
-
args: [{ selector: 'ux-editor', encapsulation: ViewEncapsulation.None, template: "<div class=\"ux-editor-wrapper\">\n <quill-editor *ngIf=\"!isReadOnly || isUsedNativeEditorInReadMode\"\n [id]=\"generatedId\"\n class=\"ux-editor {{styleClass}}\"\n [class.ux-editor--readonly]=\"isReadOnly\"\n [class.ux-editor--focused]=\"isFocused\"\n [class.ux-editor--editable]=\"!isReadOnly\"\n [format]=\"format\"\n [formats]=\"formats\"\n [maxLength]=\"maxLength\"\n [minLength]=\"minLength\"\n [readOnly]=\"isReadOnly\"\n [required]=\"isRequired\"\n [sanitize]=\"isUsedSanitizationForHtml\"\n [modules]=\"modules\"\n [theme]=\"theme\"\n [placeholder]=\"placeholder\"\n [styles]=\"style\"\n [customToolbarPosition]=\"customToolbarPosition\"\n [preserveWhitespace]=\"preserveWhitespace\"\n [spellcheck]=\"spellcheck\"\n [formControl]=\"formControl\"\n [debug]=\"false\"\n [tabindex]=\"tabindex\"\n [attr.aria-invalid]=\"ariaInvalid\"\n [attr.aria-required]=\"isRequired\"\n (onEditorCreated)=\"onEditorCreatedEmit($event)\"\n (onEditorChanged)=\"onEditorChangedEmit($event)\"\n (onContentChanged)=\"onContentChangedEmit($event)\"\n (onSelectionChanged)=\"onSelectionChangedEmit($event)\"\n (onFocus)=\"onFocusEmit($event)\"\n (onBlur)=\"onBlurEmit($event)\">\n\n <!-- PREDEFINED DEFAULT TOOLBAR -->\n <div *ngIf=\"!customToolbarOptions && !customEditorToolbar\" quill-editor-toolbar (focusin)=\"onToolbarFocusIn($event)\" (focusout)=\"onToolbarFocusOut($event)\">\n <span class=\"ql-formats\">\n <select class=\"ql-header\" title=\"Style{{crlf}}Apply an HTML tag or CSS class to the selected text\">\n <option value=\"1\">Heading 1</option>\n <option value=\"2\">Heading 2</option>\n <option value=\"3\">Heading 3</option>\n <option value=\"4\">Heading 4</option>\n <option value=\"5\">Heading 5</option>\n <option value=\"6\">Heading 6</option>\n <option selected>Normal</option>\n </select>\n </span>\n <!-- <span class=\"ql-formats\">\n <select class=\"ql-size\" title=\"Font size{{crlf}}Change the font size of the selected text\">\n <option value=\"small\">Small</option>\n <option selected>Normal</option>\n <option value=\"large\">Large</option>\n <option value=\"huge\">Huge</option>\n </select>\n </span> -->\n <span *ngIf=\"!isMinimalToolbar\" class=\"ql-formats\">\n <select class=\"ql-font\" title=\"Font{{crlf}}Change the font face\">\n <option selected>Sans Serif</option>\n <option value=\"serif\">Serif</option>\n <option value=\"monospace\">Monospace</option>\n </select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-bold\" aria-label=\"Bold (Ctrl + B)\" title=\"Bold (Ctrl + B){{crlf}}Make the selected text bold\"></button>\n <button class=\"ql-italic\" aria-label=\"Italic (Ctrl + I)\" title=\"Italic (Ctrl + I){{crlf}}Italicize the selected text\"></button>\n <button class=\"ql-underline\" aria-label=\"Underline (Ctrl + U)\" title=\"Underline (Ctrl + U){{crlf}}Underline the selected text\"></button>\n <button class=\"ql-strike\" aria-label=\"Strikethrough\" title=\"Strikethrough{{crlf}}Draw a line to the middle of the selected text\"></button>\n </span>\n <span class=\"ql-formats\">\n <select class=\"ql-color\" aria-label=\"Font Color\" title=\"Font Color{{crlf}}Change the text color\"></select>\n <select class=\"ql-background\" aria-label=\"Text Highlight Color\" title=\"Text Highlight Color{{crlf}}Change the background color of the text\"></select>\n </span>\n <span *ngIf=\"!isMinimalToolbar\" class=\"ql-formats\">\n <button class=\"ql-script\" value=\"sub\" aria-label=\"Subscript\" title=\"Subscript{{crlf}}Create ssmall letters below the text baseline\"></button>\n <button class=\"ql-script\" value=\"super\" aria-label=\"Superscript\" title=\"Superscript{{crlf}}Create small letters above the line of the text\"></button>\n </span>\n <span class=\"ql-formats\">\n <select class=\"ql-align\" aria-label=\"Text Align\" title=\"Text Align{{crlf}}Align the text to the selected position: left (default), center, right or justify\">\n <option selected></option>\n <option value=\"center\"></option>\n <option value=\"right\"></option>\n <option value=\"justify\"></option>\n </select>\n </span>\n <span *ngIf=\"!isMinimalToolbar\" class=\"ql-formats\">\n <button class=\"ql-list\" value=\"ordered\" aria-label=\"Ordered List\" title=\"Numbering{{crlf}}Start an ordered list\"></button>\n <button class=\"ql-list\" value=\"bullet\" aria-label=\"Unordered List\" title=\"Bullets{{crlf}}Start a bulleted list\"></button>\n <button class=\"ql-indent\" value=\"-1\" type=\"button\" aria-label=\"Decrease Indent\" title=\"Decrease Indent{{crlf}}Decrease the indent level of the paragraph\"></button>\n <button class=\"ql-indent\" value=\"+1\" type=\"button\" aria-label=\"Increase Indent\" title=\"Increase Indent{{crlf}}Increase the indent level of the paragraph\"></button>\n </span>\n <!-- Insert group -->\n <span class=\"ql-formats\">\n <button *ngIf=\"!isMinimalToolbar\" class=\"ql-blockquote\" aria-label=\"Blockquote\" title=\"Blockquote{{crlf}}Create a quoted block of the selected text\"></button>\n <button *ngIf=\"!isMinimalToolbar\" class=\"ql-code-block\" aria-label=\"Insert Code Block\" title=\"Insert Code Block{{crlf}}Insert a code block at the cursor row position\"></button>\n <button class=\"ql-link\" aria-label=\"Insert Link\" title=\"Insert Hyperlink (Ctrl + K){{crlf}}Create a link to a Web page, a picture, an e-mail address or a program\"></button>\n <button *ngIf=\"!isImageUrl\" class=\"ql-image\" aria-label=\"Insert Image\" title=\"Insert Picture{{crlf}}Insert a picture from a file\"></button>\n <button *ngIf=\"isImageUrl\" class=\"ql-image\" aria-label=\"Insert Image from URL\" title=\"Insert Picture from URL{{crlf}}Insert a picture from a remote URL\">\n <span class=\"eui-icon eui-icon-image-add\"></span></button>\n <button *ngIf=\"!isMinimalToolbar\" class=\"ql-video\" aria-label=\"Insert Video\" title=\"Insert Video{{crlf}}Insert a video from a file\"></button>\n </span>\n <!-- Clean / Clear -->\n <span class=\"ql-formats\">\n <button class=\"ql-clean\" aria-label=\"Remove Styles\" title=\"Remove Styles{{crlf}}Remove the styles of the selected text\"></button>\n <button aria-label=\"Delete\" title=\"Delete content{{crlf}}Permanently deletes editor's contents\" (click)=\"editorDeleteContent($event)\"><span class=\"eui-icon eui-icon-delete-forever\"></span></button>\n </span>\n\n <!-- Undo/Redo -->\n <span class=\"ql-formats\">\n <button aria-label=\"Undo (Ctrl + Z)\" title=\"Undo (Ctrl + Z){{crlf}}Cancels the previous action\" (click)=\"editorUndo()\"><span class=\"eui-icon eui-icon-undo\"></span></button>\n <button aria-label=\"Redo (Ctrl + Y)\" title=\"Redo (Ctrl + Y){{crlf}}Do the next history action again\" (click)=\"editorRedo()\"><span class=\"eui-icon eui-icon-redo\"></span></button>\n </span>\n <!-- Counters -->\n <span *ngIf=\"showCounters && (format === 'html' || format === 'text')\" class=\"ql-formats\">\n <ux-editor-counters [charactersCounter]=\"charactersCounter\"\n [charactersLabel]=\"charactersLabel\"\n [wordsCounter]=\"wordsCounter\"\n [wordsLabel]=\"wordsLabel\"\n [isMaxLengthValid]=\"isMaxLengthValid\"\n aria-label=\"Counters\"\n title=\"Counters{{crlf}}Characters and words counters (stripped Html)\">\n </ux-editor-counters>\n </span>\n </div>\n\n <!-- USER CUSTOM TOOLBAR (HTML FORMAT) -->\n <div *ngIf=\"customEditorToolbar\" quill-editor-toolbar (focusin)=\"onToolbarFocusIn($event)\" (focusout)=\"onToolbarFocusOut($event)\">\n <ng-content select=\"uxEditorCustomToolbar\"></ng-content>\n </div>\n </quill-editor>\n\n <!-- MAXLENGTH INDICATOR -->\n <div *ngIf=\"!isReadOnly && charactersLeft > -1\" class=\"maxlength-wrapper\" [class.maxlength-wrapper--error]=\"!isMaxLengthValid\">{{ charactersLeft }}</div>\n</div>\n\n\n<!-- READONLY MODE -->\n<div *ngIf=\"isReadOnly && !isUsedNativeEditorInReadMode\" class=\"ux-editor ux-editor--readonly {{styleClass}}\" [class.ux-editor--empty]=\"!value\" tabindex=\"{{tabindex}}\" (click)=\"enableEditorOnClickFocus($event)\" (focusin)=\"enableEditorOnClickFocus($event)\">\n <ux-editor-view-html *ngIf=\"format === 'html' || format === 'text'\" [content]=\"value\" [theme]=\"theme\" [styles]=\"hasReadOnlyStyles ? style : null\"></ux-editor-view-html>\n <ux-editor-view *ngIf=\"format === 'object' || format === 'json'\" [content]=\"value\" [format]=\"format\" [theme]=\"theme\" [styles]=\"hasReadOnlyStyles ? style : null\"></ux-editor-view>\n</div>\n\n\n<!-- DEBUGGER -->\n<div *ngIf=\"debug\" class=\"ux-editor__debug\">\n <div class=\"ux-editor__debug-title\">UX-EDITOR debug</div>\n <div class=\"ux-editor__debug-section\">\n <strong>OPTIONS:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">id: <span class=\"eui-u-color-black\">{{generatedId}}</span></span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">toolbarPosition: {{customToolbarPosition}}</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isReadOnly\" [class.ux-editor__debug-badge--off]=\"!isReadOnly\">isReadOnly</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isEnabledOnFocus\" [class.ux-editor__debug-badge--off]=\"!isEnabledOnFocus\">isEnabledOnFocus</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"preserveWhitespace\" [class.ux-editor__debug-badge--off]=\"!preserveWhitespace\">preserveWhitespace</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"spellcheck\" [class.ux-editor__debug-badge--off]=\"!spellcheck\">spellcheck</span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">maxLength: <span class=\"eui-u-color-black\">{{maxLength}}</span></span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>EVENTS:</strong>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isFocused\" [class.ux-editor__debug-badge--off]=\"!isFocused\">onFocus</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isBlured\" [class.ux-editor__debug-badge--off]=\"!isBlured\">onBlur</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isEditorCreated\" [class.ux-editor__debug-badge--off]=\"!isEditorCreated\">onEditorCreated</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"hasEditorChanged\" [class.ux-editor__debug-badge--off]=\"!hasEditorChanged\">onEditorChanged</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"hasContentChanged\" [class.ux-editor__debug-badge--off]=\"!hasContentChanged\">onContentChanged</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"hasSelectionChanged\" [class.ux-editor__debug-badge--off]=\"!hasSelectionChanged\">onSelectionChanged</span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>FORM:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">controlName: <span class=\"eui-u-color-black\">{{formControlName}}</span></span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isRequired\" [class.ux-editor__debug-badge--off]=\"!isRequired\">isRequired</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isFormControlValid\" [class.ux-editor__debug-badge--alert]=\"!isFormControlValid\">isFormControlValid</span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">validationErrorMessage: <span class=\"eui-u-color-{{feedbackTypeClass}}\">{{formValidationErrorMessage}}</span></span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--on\" [class.ux-editor__debug-badge--alert]=\"!isMaxLengthValid\">isMaxLengthValid</span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>STYLE:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">{{ style | json}}</span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>SOURCE:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">format: <span class=\"eui-u-color-black\">{{format}}</span></span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">charactersLeft: <span [ngClass]=\"isMaxLengthValid ? 'eui-u-color-black' : 'eui-u-color-danger'\">{{charactersLeft}}</span></span>\n\n </div>\n <div class=\"ux-editor__debug-source\">\n <code *ngIf=\"format === 'text' || format === 'html'\">{{formControl.value}}</code>\n <code *ngIf=\"format === 'json' || format === 'object'\"><pre class=\"ux-editor__debug-source-code\">{{formControl.value | json}}</pre></code>\n </div>\n</div>\n", styles: ["/*!\n* eUI alignments & improvements for ux-editor based on (Ngx-)QuillJS Editor v1.3.7+\n*/.ux-editor-wrapper{position:relative}.ux-editor-wrapper .maxlength-wrapper{background-color:var(--eui-base-color-primary-50);border:1px solid var(--eui-base-color-primary-100);border-radius:3px;color:var(--eui-base-color-white);font-size:.75rem;padding:1px 3px;position:absolute;right:-.5rem;top:-.75rem;z-index:2}.ux-editor-wrapper .maxlength-wrapper.maxlength-wrapper--error{background-color:var(--eui-base-color-danger-75);border:1px solid var(--eui-base-color-danger-100)}.ux-editor{display:block;position:relative}.ux-editor--readonly{padding:var(--eui-base-spacing-s) 0 0 0}.ux-editor--readonly .ql-toolbar{display:none}.ux-editor--readonly .ql-container{border:none}.ux-editor--readonly .ql-editor{min-height:calc(var(--eui-base-spacing-2xl) + 2px);padding:0 var(--eui-base-spacing-m) 0 0!important}.ux-editor--readonly.ux-editor--empty .ql-container{border:none;outline:1px dashed var(--eui-base-color-grey-15)}.ux-editor--readonly.ux-editor--empty .ql-container:hover{outline:1px solid var(--eui-base-color-grey-20)}.ux-editor--focused .ql-container{outline:1px solid var(--eui-base-color-accent-110);box-shadow:var(--eui-base-shadow-1)}.ux-editor--editable .ql-container{background-color:var(--eui-base-color-white);border:1px solid #ccc;padding:.35rem}.ux-editor .ql-toolbar{background-color:var(--eui-base-color-grey-2);border:1px solid var(--eui-base-color-grey-15);padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-xs) 0 var(--eui-base-spacing-xs);font-family:var(--eui-base-font-family);font-size:var(--eui-base-font-size);font-style:normal;font-weight:400}.ux-editor .ql-toolbar.ql-snow button{background:none;border:none;cursor:pointer;display:inline-flex;padding:3px 5px;width:28px}.ux-editor .ql-toolbar.ql-snow .ql-formats{align-items:center;background-color:var(--eui-base-color-grey-5);border:1px solid var(--eui-base-color-grey-15);border-radius:5px;display:inline-flex;margin-bottom:var(--eui-base-spacing-xs);margin-right:var(--eui-base-spacing-xs);vertical-align:middle}.ux-editor .ql-toolbar.ql-snow .ql-formats .ql-picker{align-items:center;color:var(--eui-base-color-grey-90);display:inline-flex;font-size:var(--eui-base-font-size);height:var(--eui-base-spacing-xl);max-height:var(--eui-base-spacing-xl);position:relative;vertical-align:middle}.ux-editor .ql-toolbar.ql-snow .ql-formats .ql-picker.ql-expanded .ql-picker-label{border-color:transparent}.ux-editor .ql-toolbar.ql-snow .ql-formats button{align-items:center;background-color:transparent;border:0 solid var(--eui-base-color-grey-15);box-shadow:none;color:var(--eui-base-color-grey-90);display:inline-flex;height:var(--eui-base-spacing-xl);justify-content:center;min-width:var(--eui-base-spacing-xl)}.ux-editor .ql-toolbar.ql-snow .ql-formats button:hover{background:var(--eui-base-color-grey-10);color:var(--eui-base-color-info-100)}.ux-editor .ql-toolbar.ql-snow .ql-formats button.active,.ux-editor .ql-toolbar.ql-snow .ql-formats button.ql-active{background:var(--eui-base-color-accent-100);color:var(--eui-base-color-primary-100)}.ux-editor .ql-toolbar.ql-snow .ql-formats button:first-child{border-radius:5px 0 0 5px}.ux-editor .ql-toolbar.ql-snow .ql-formats button:last-child{border-radius:0 5px 5px 0}.ux-editor .ql-toolbar.ql-snow .ql-formats button .eui-icon{font-size:var(--eui-base-font-size-2xl)}.ux-editor .ql-toolbar.ql-snow .ql-formats button:active,.ux-editor .ql-toolbar.ql-snow .ql-formats button:focus{z-index:auto;border-color:var(--eui-base-color-accessible-focus)!important;box-shadow:inset 0 0 0 1px var(--eui-base-color-accessible-focus),inset 0 0 0 2px var(--eui-base-color-grey-5);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters{align-items:center;cursor:default;display:inline-flex;width:auto}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .chars-counter{color:var(--eui-base-color-info-100);font-size:var(--eui-base-font-size-s);font-weight:900}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .chars-counter.chars-counter--error{color:var(--eui-base-color-danger-100)}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .words-counter{color:var(--eui-base-color-info-100);font-size:var(--eui-base-font-size-s);font-weight:900}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .chars-label,.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .words-label{color:var(--eui-base-color-grey-80);font-size:var(--eui-base-font-size-xs)}.ux-editor .ql-toolbar.ql-snow .ql-formats select{background-color:transparent;border:.5px solid var(--eui-base-color-black);border-radius:5px;cursor:pointer;font-size:var(--eui-base-font-size-s);outline:0;padding:.4rem;vertical-align:middle;width:90px}.ux-editor .ql-toolbar.ql-snow .ql-formats select:active,.ux-editor .ql-toolbar.ql-snow .ql-formats select:focus{z-index:auto;border-color:var(--eui-base-color-accessible-focus)!important;box-shadow:inset 0 0 0 1px var(--eui-base-color-accessible-focus),inset 0 0 0 2px var(--eui-base-color-grey-5);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.ux-editor .ql-toolbar.ql-snow .ql-formats .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:1px}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker{height:var(--eui-base-spacing-xl);padding:var(--eui-base-spacing-2xs) 0;width:calc(7 * var(--eui-base-spacing-m))}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item:before{content:\"Normal\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=small]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=small]:before{content:\"Small\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=smaller]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smaller]:before{content:\"Smaller\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=smallest]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smallest]:before{content:\"Smallest\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=large]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=large]:before{content:\"Large\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=huge]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=huge]:before{content:\"Huge\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=small]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-size-small{font-size:var(--eui-base-font-size-s)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smaller]:before{font-size:var(--eui-base-font-size-xs)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smallest]:before{font-size:var(--eui-base-font-size-2xs)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=large]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-size-large{font-size:var(--eui-base-font-size-xl)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=huge]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-size-huge{font-size:var(--eui-base-font-size-4xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker{height:var(--eui-base-spacing-xl);padding:var(--eui-base-spacing-2xs) 0;width:calc(8 * var(--eui-base-spacing-m))}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item:before{content:\"Normal\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"1\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"1\"]:before{content:\"Heading 1\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"2\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"2\"]:before{content:\"Heading 2\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"3\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"3\"]:before{content:\"Heading 3\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"4\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"4\"]:before{content:\"Heading 4\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"5\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"5\"]:before{content:\"Heading 5\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"6\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"6\"]:before{content:\"Heading 6\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"1\"]:before{font-size:var(--eui-base-font-size-4xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"2\"]:before{font-size:var(--eui-base-font-size-3xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"3\"]:before{font-size:var(--eui-base-font-size-2xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"4\"]:before{font-size:var(--eui-base-font-size-xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"5\"]:before{font-size:var(--eui-base-font-size-l)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"6\"]:before{font-size:var(--eui-base-font-size-m)}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker{height:var(--eui-base-spacing-xl);padding:var(--eui-base-spacing-2xs) 0;width:calc(8 * var(--eui-base-spacing-m))}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-label:before,.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item:before{content:\"Sans Serif\"}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-label[data-value=serif]:before,.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=serif]:before{content:\"Serif\"}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-label[data-value=monospace]:before,.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=monospace]:before{content:\"Monospace\"}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=sans-serif]:before{font-family:arial,sans-serif!important}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=serif]:before{font-family:times new roman,serif!important}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=monospace]:before{font-family:courier new,monospace!important}.ux-editor .ql-toolbar.ql-snow .ql-color-picker{width:var(--eui-base-spacing-xl)}.ux-editor .ql-toolbar.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px;display:inline-flex}.ux-editor .ql-container{box-sizing:border-box;height:100%;margin:0;position:relative;resize:vertical;font-family:var(--eui-base-font-family);font-size:var(--eui-base-font-size);font-style:normal;font-weight:400}.ux-editor .ql-container:focus{outline:1px solid var(--eui-base-color-accent-110)}.ux-editor .ql-editor{box-sizing:border-box;height:100%;line-height:var(--eui-base-line-height);outline:none;overflow-y:auto;padding:var(--eui-base-spacing-s);tab-size:4;text-align:left;white-space:pre-wrap;word-break:normal;word-wrap:break-word;font-family:var(--eui-base-font-family);font-size:var(--eui-base-font-size);font-style:normal;font-weight:400}.ux-editor .ql-editor h1{font-size:var(--eui-base-font-size-4xl)!important}.ux-editor .ql-editor h2{font-size:var(--eui-base-font-size-3xl)!important}.ux-editor .ql-editor h3{font-size:var(--eui-base-font-size-2xl)!important}.ux-editor .ql-editor h4{font-size:var(--eui-base-font-size-xl)!important}.ux-editor .ql-editor h5{font-size:var(--eui-base-font-size-l)!important}.ux-editor .ql-editor h6{font-size:var(--eui-base-font-size-m)!important}.ux-editor .ql-editor .h7{font-size:var(--eui-base-font-size-s)!important}.ux-editor .ql-editor .h8{font-size:var(--eui-base-font-size-xs)!important}.ux-editor .ql-editor .h9{font-size:var(--eui-base-font-size-2xs)!important}.ux-editor .ql-editor p{padding-bottom:var(--eui-base-spacing-s)!important}.ux-editor .ql-editor p:last-child{padding-bottom:0!important}.ux-editor .ql-editor em,.ux-editor .ql-editor i{font-style:italic!important}.ux-editor .ql-editor strong,.ux-editor .ql-editor b{font-weight:700!important}.ux-editor .ql-editor strong em,.ux-editor .ql-editor strong i,.ux-editor .ql-editor b em,.ux-editor .ql-editor b i{font-style:italic!important;font-weight:700!important}.ux-editor .ql-editor strong em u,.ux-editor .ql-editor strong i u,.ux-editor .ql-editor b em u,.ux-editor .ql-editor b i u{text-decoration:underline!important}.ux-editor .ql-editor blockquote{border-left:var(--eui-base-spacing-xs) solid var(--eui-base-color-grey-20);margin-bottom:0;margin-top:0;padding-left:var(--eui-base-spacing-m)}.ux-editor .ql-editor code,.ux-editor .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ux-editor .ql-editor pre{margin-bottom:var(--eui-base-spacing-xs);margin-top:var(--eui-base-spacing-xs);padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m);white-space:pre-wrap}.ux-editor .ql-editor code{font-size:85%;padding:2px 4px;word-break:break-word}.ux-editor .ql-editor ol,.ux-editor .ql-editor ul{padding-left:0}.ux-editor .ql-editor ol{counter-reset:inherit}.ux-editor .ql-editor pre.ql-syntax{background-color:var(--eui-base-color-grey-80);color:#f5f5f5;overflow:visible}.ux-editor .ql-editor iframe,.ux-editor .ql-editor img{display:inline-block;height:1;width:1}.ux-editor .ql-editor.ql-blank:before{left:var(--eui-base-spacing-m);position:absolute;right:0}.ux-editor .ql-tooltip{background-color:var(--eui-base-color-grey-10);left:50%!important;margin:0 auto;outline:2px solid var(--eui-base-color-primary-100);position:absolute;top:50%!important;transform:translate(-50%,-50%)!important;width:70%;box-shadow:var(--eui-base-shadow-1)}.ux-editor .ql-tooltip input[type=text]{border:1px solid #ccc;display:none;font-size:13px;height:26px;margin:0;padding:3px 5px;width:75%}.ux-editor .ql-tooltip a.ql-preview{display:inline-block;max-width:60%;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top;width:100%}.ux-editor__debug{background-color:#fff3cd;border:1px solid #f5c6cb;border-radius:.25rem;color:#856404;font:.85rem consolas,monospace,sans-serif;margin:var(--eui-base-spacing-m) 0;padding:var(--eui-base-spacing-s) 1.25rem;position:relative}.ux-editor__debug-section{align-items:center;display:flex;flex-wrap:wrap;padding-bottom:var(--eui-base-spacing-xs)}.ux-editor__debug-title{color:#e83e8c;font-size:var(--eui-base-font-size-xl);font-weight:900;padding-bottom:var(--eui-base-spacing-xs)}.ux-editor__debug-badge{font-size:var(--eui-base-font-size-xs);font-weight:400;margin:0 var(--eui-base-spacing-2xs);padding:var(--eui-base-spacing-3xs) var(--eui-base-spacing-xs)}.ux-editor__debug-badge--off{background-color:#e8e0c4;border:1px solid #d2d2d2;color:#888}.ux-editor__debug-badge--on{background-color:#28a745;border:1px solid #218037;color:var(--eui-base-color-white)}.ux-editor__debug-badge--alert{background-color:#dc3545;border:1px solid #721d25;color:var(--eui-base-color-white)}.ux-editor__debug-source{background-color:#ffeeba;font-size:var(--eui-base-font-size);height:auto;max-height:150px;outline:1px dashed silver;overflow-y:auto;padding:var(--eui-base-spacing-xs);position:relative}.ux-editor__debug-source-code{color:#e83e8c;font:90% consolas,monospace}.ux-editor__debug code{font-size:var(--eui-base-font-size-xs)}.ux-editor__about{background:var(--eui-base-color-white);display:block;height:10rem;left:50%;overflow-y:auto;padding:var(--eui-base-spacing-m);position:absolute;transform:translate(-50%,25%);width:20rem;z-index:1;box-shadow:var(--eui-base-shadow-3)}ux-editor.ng-invalid.ng-touched .ux-editor:not(.ux-editor--readonly) .ql-container{outline:1px solid var(--eui-base-color-danger-100)}\n"] }]
|
|
723
|
+
args: [{ selector: 'ux-editor', encapsulation: ViewEncapsulation.None, template: "<div class=\"ux-editor-wrapper\">\n <quill-editor *ngIf=\"!isReadOnly || isUsedNativeEditorInReadMode\"\n [id]=\"generatedId\"\n class=\"ux-editor {{styleClass}}\"\n [class.ux-editor--readonly]=\"isReadOnly\"\n [class.ux-editor--focused]=\"isFocused\"\n [class.ux-editor--editable]=\"!isReadOnly\"\n [format]=\"format\"\n [formats]=\"formats\"\n [maxLength]=\"maxLength\"\n [minLength]=\"minLength\"\n [readOnly]=\"isReadOnly\"\n [required]=\"isRequired\"\n [sanitize]=\"isUsedSanitizationForHtml\"\n [modules]=\"modules\"\n [theme]=\"theme\"\n [placeholder]=\"placeholder\"\n [styles]=\"style\"\n [customToolbarPosition]=\"customToolbarPosition\"\n [preserveWhitespace]=\"preserveWhitespace\"\n [spellcheck]=\"spellcheck\"\n [formControl]=\"formControl\"\n [debug]=\"false\"\n [tabindex]=\"tabindex\"\n [attr.aria-invalid]=\"ariaInvalid\"\n [attr.aria-required]=\"isRequired\"\n (onEditorCreated)=\"onEditorCreatedEmit($event)\"\n (onEditorChanged)=\"onEditorChangedEmit($event)\"\n (onContentChanged)=\"onContentChangedEmit($event)\"\n (onSelectionChanged)=\"onSelectionChangedEmit($event)\"\n (onFocus)=\"onFocusEmit($event)\"\n (onBlur)=\"onBlurEmit($event)\">\n\n <!-- PREDEFINED DEFAULT TOOLBAR -->\n <div *ngIf=\"!customToolbarOptions && !customEditorToolbar\" quill-editor-toolbar (focusin)=\"onToolbarFocusIn($event)\" (focusout)=\"onToolbarFocusOut($event)\">\n <span class=\"ql-formats\">\n <select class=\"ql-header\" title=\"Style{{crlf}}Apply an HTML tag or CSS class to the selected text\">\n <option value=\"1\">Heading 1</option>\n <option value=\"2\">Heading 2</option>\n <option value=\"3\">Heading 3</option>\n <option value=\"4\">Heading 4</option>\n <option value=\"5\">Heading 5</option>\n <option value=\"6\">Heading 6</option>\n <option selected>Normal</option>\n </select>\n </span>\n <!-- <span class=\"ql-formats\">\n <select class=\"ql-size\" title=\"Font size{{crlf}}Change the font size of the selected text\">\n <option value=\"small\">Small</option>\n <option selected>Normal</option>\n <option value=\"large\">Large</option>\n <option value=\"huge\">Huge</option>\n </select>\n </span> -->\n <span *ngIf=\"!isMinimalToolbar\" class=\"ql-formats\">\n <select class=\"ql-font\" title=\"Font{{crlf}}Change the font face\">\n <option selected>Sans Serif</option>\n <option value=\"serif\">Serif</option>\n <option value=\"monospace\">Monospace</option>\n </select>\n </span>\n <span class=\"ql-formats\">\n <button class=\"ql-bold\" aria-label=\"Bold (Ctrl + B)\" title=\"Bold (Ctrl + B){{crlf}}Make the selected text bold\"></button>\n <button class=\"ql-italic\" aria-label=\"Italic (Ctrl + I)\" title=\"Italic (Ctrl + I){{crlf}}Italicize the selected text\"></button>\n <button class=\"ql-underline\" aria-label=\"Underline (Ctrl + U)\" title=\"Underline (Ctrl + U){{crlf}}Underline the selected text\"></button>\n <button class=\"ql-strike\" aria-label=\"Strikethrough\" title=\"Strikethrough{{crlf}}Draw a line to the middle of the selected text\"></button>\n </span>\n <span class=\"ql-formats\">\n <select class=\"ql-color\" aria-label=\"Font Color\" title=\"Font Color{{crlf}}Change the text color\"></select>\n <select class=\"ql-background\" aria-label=\"Text Highlight Color\" title=\"Text Highlight Color{{crlf}}Change the background color of the text\"></select>\n </span>\n <span *ngIf=\"!isMinimalToolbar\" class=\"ql-formats\">\n <button class=\"ql-script\" value=\"sub\" aria-label=\"Subscript\" title=\"Subscript{{crlf}}Create ssmall letters below the text baseline\"></button>\n <button class=\"ql-script\" value=\"super\" aria-label=\"Superscript\" title=\"Superscript{{crlf}}Create small letters above the line of the text\"></button>\n </span>\n <span class=\"ql-formats\">\n <select class=\"ql-align\" aria-label=\"Text Align\" title=\"Text Align{{crlf}}Align the text to the selected position: left (default), center, right or justify\">\n <option selected></option>\n <option value=\"center\"></option>\n <option value=\"right\"></option>\n <option value=\"justify\"></option>\n </select>\n </span>\n <span *ngIf=\"!isMinimalToolbar\" class=\"ql-formats\">\n <button class=\"ql-list\" value=\"ordered\" aria-label=\"Ordered List\" title=\"Numbering{{crlf}}Start an ordered list\"></button>\n <button class=\"ql-list\" value=\"bullet\" aria-label=\"Unordered List\" title=\"Bullets{{crlf}}Start a bulleted list\"></button>\n <button class=\"ql-indent\" value=\"-1\" type=\"button\" aria-label=\"Decrease Indent\" title=\"Decrease Indent{{crlf}}Decrease the indent level of the paragraph\"></button>\n <button class=\"ql-indent\" value=\"+1\" type=\"button\" aria-label=\"Increase Indent\" title=\"Increase Indent{{crlf}}Increase the indent level of the paragraph\"></button>\n </span>\n <!-- Insert group -->\n <span class=\"ql-formats\">\n <button *ngIf=\"!isMinimalToolbar\" class=\"ql-blockquote\" aria-label=\"Blockquote\" title=\"Blockquote{{crlf}}Create a quoted block of the selected text\"></button>\n <button *ngIf=\"!isMinimalToolbar\" class=\"ql-code-block\" aria-label=\"Insert Code Block\" title=\"Insert Code Block{{crlf}}Insert a code block at the cursor row position\"></button>\n <button class=\"ql-link\" aria-label=\"Insert Link\" title=\"Insert Hyperlink (Ctrl + K){{crlf}}Create a link to a Web page, a picture, an e-mail address or a program\"></button>\n <button *ngIf=\"!isImageUrl\" class=\"ql-image\" aria-label=\"Insert Image\" title=\"Insert Picture{{crlf}}Insert a picture from a file\"></button>\n <button *ngIf=\"isImageUrl\" class=\"ql-image\" aria-label=\"Insert Image from URL\" title=\"Insert Picture from URL{{crlf}}Insert a picture from a remote URL\">\n <span class=\"eui-icon eui-icon-image-add\"></span></button>\n <button *ngIf=\"!isMinimalToolbar\" class=\"ql-video\" aria-label=\"Insert Video\" title=\"Insert Video{{crlf}}Insert a video from a file\"></button>\n </span>\n <!-- Clean / Clear -->\n <span class=\"ql-formats\">\n <button class=\"ql-clean\" aria-label=\"Remove Styles\" title=\"Remove Styles{{crlf}}Remove the styles of the selected text\"></button>\n <button aria-label=\"Delete\" title=\"Delete content{{crlf}}Permanently deletes editor's contents\" (click)=\"editorDeleteContent($event)\"><span class=\"eui-icon eui-icon-delete-forever\"></span></button>\n </span>\n\n <!-- Undo/Redo -->\n <span class=\"ql-formats\">\n <button aria-label=\"Undo (Ctrl + Z)\" title=\"Undo (Ctrl + Z){{crlf}}Cancels the previous action\" (click)=\"editorUndo()\"><span class=\"eui-icon eui-icon-undo\"></span></button>\n <button aria-label=\"Redo (Ctrl + Y)\" title=\"Redo (Ctrl + Y){{crlf}}Do the next history action again\" (click)=\"editorRedo()\"><span class=\"eui-icon eui-icon-redo\"></span></button>\n </span>\n <!-- Counters -->\n <span *ngIf=\"showCounters && (format === 'html' || format === 'text')\" class=\"ql-formats\">\n <ux-editor-counters [charactersCounter]=\"charactersCounter\"\n [charactersLabel]=\"charactersLabel\"\n [wordsCounter]=\"wordsCounter\"\n [wordsLabel]=\"wordsLabel\"\n [isMaxLengthValid]=\"isMaxLengthValid\"\n aria-label=\"Counters\"\n title=\"Counters{{crlf}}Characters and words counters (stripped Html)\">\n </ux-editor-counters>\n </span>\n </div>\n\n <!-- USER CUSTOM TOOLBAR (HTML FORMAT) -->\n <div *ngIf=\"customEditorToolbar\" quill-editor-toolbar (focusin)=\"onToolbarFocusIn($event)\" (focusout)=\"onToolbarFocusOut($event)\">\n <ng-content select=\"uxEditorCustomToolbar\"></ng-content>\n </div>\n </quill-editor>\n\n <!-- MAXLENGTH INDICATOR -->\n <div *ngIf=\"!isReadOnly && charactersLeft > -1\" class=\"maxlength-wrapper\" [class.maxlength-wrapper--error]=\"!isMaxLengthValid\">{{ charactersLeft }}</div>\n</div>\n\n\n<!-- READONLY MODE -->\n<div *ngIf=\"isReadOnly && !isUsedNativeEditorInReadMode\" class=\"ux-editor ux-editor--readonly {{styleClass}}\" [class.ux-editor--empty]=\"!value\" tabindex=\"{{tabindex}}\" (click)=\"enableEditorOnClickFocus($event)\" (focusin)=\"enableEditorOnClickFocus($event)\">\n <ux-editor-view-html *ngIf=\"format === 'html' || format === 'text'\" [content]=\"value\" [theme]=\"theme\" [styles]=\"hasReadOnlyStyles ? style : null\"></ux-editor-view-html>\n <ux-editor-view *ngIf=\"format === 'object' || format === 'json'\" [content]=\"value\" [format]=\"format\" [theme]=\"theme\" [styles]=\"hasReadOnlyStyles ? style : null\"></ux-editor-view>\n</div>\n\n\n<!-- DEBUGGER -->\n<div *ngIf=\"debug\" class=\"ux-editor__debug\">\n <div class=\"ux-editor__debug-title\">UX-EDITOR debug</div>\n <div class=\"ux-editor__debug-section\">\n <strong>OPTIONS:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">id: <span class=\"eui-u-color-black\">{{generatedId}}</span></span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">toolbarPosition: {{customToolbarPosition}}</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isReadOnly\" [class.ux-editor__debug-badge--off]=\"!isReadOnly\">isReadOnly</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isEnabledOnFocus\" [class.ux-editor__debug-badge--off]=\"!isEnabledOnFocus\">isEnabledOnFocus</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"preserveWhitespace\" [class.ux-editor__debug-badge--off]=\"!preserveWhitespace\">preserveWhitespace</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"spellcheck\" [class.ux-editor__debug-badge--off]=\"!spellcheck\">spellcheck</span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">maxLength: <span class=\"eui-u-color-black\">{{maxLength}}</span></span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>EVENTS:</strong>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isFocused\" [class.ux-editor__debug-badge--off]=\"!isFocused\">onFocus</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isBlured\" [class.ux-editor__debug-badge--off]=\"!isBlured\">onBlur</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isEditorCreated\" [class.ux-editor__debug-badge--off]=\"!isEditorCreated\">onEditorCreated</span>\n <!-- <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"hasEditorChanged\" [class.ux-editor__debug-badge--off]=\"!hasEditorChanged\">onEditorChanged</span> -->\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"hasContentChanged\" [class.ux-editor__debug-badge--off]=\"!hasContentChanged\">onContentChanged</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"hasSelectionChanged\" [class.ux-editor__debug-badge--off]=\"!hasSelectionChanged\">onSelectionChanged</span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>FORM:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">controlName: <span class=\"eui-u-color-black\">{{formControlName}}</span></span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isRequired\" [class.ux-editor__debug-badge--off]=\"!isRequired\">isRequired</span>\n <span class=\"ux-editor__debug-badge\" [class.ux-editor__debug-badge--on]=\"isFormControlValid\" [class.ux-editor__debug-badge--alert]=\"!isFormControlValid\">isFormControlValid</span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">validationErrorMessage: <span class=\"eui-u-color-{{feedbackTypeClass}}\">{{formValidationErrorMessage}}</span></span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--on\" [class.ux-editor__debug-badge--alert]=\"!isMaxLengthValid\">isMaxLengthValid</span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>STYLE:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">{{ style | json}}</span>\n </div>\n <div class=\"ux-editor__debug-section\">\n <strong>SOURCE:</strong>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">format: <span class=\"eui-u-color-black\">{{format}}</span></span>\n <span class=\"ux-editor__debug-badge ux-editor__debug-badge--off\">charactersLeft: <span [ngClass]=\"isMaxLengthValid ? 'eui-u-color-black' : 'eui-u-color-danger'\">{{charactersLeft}}</span></span>\n\n </div>\n <div class=\"ux-editor__debug-source\">\n <code *ngIf=\"format === 'text' || format === 'html'\">{{formControl.value}}</code>\n <code *ngIf=\"format === 'json' || format === 'object'\"><pre class=\"ux-editor__debug-source-code\">{{formControl.value | json}}</pre></code>\n </div>\n</div>\n", styles: ["/*!\n* eUI alignments & improvements for ux-editor based on (Ngx-)QuillJS Editor v1.3.7+\n*/.ux-editor-wrapper{position:relative}.ux-editor-wrapper .maxlength-wrapper{background-color:var(--eui-base-color-primary-50);border:1px solid var(--eui-base-color-primary-100);border-radius:3px;color:var(--eui-base-color-white);font-size:.75rem;padding:1px 3px;position:absolute;right:-.5rem;top:-.75rem;z-index:2}.ux-editor-wrapper .maxlength-wrapper.maxlength-wrapper--error{background-color:var(--eui-base-color-danger-75);border:1px solid var(--eui-base-color-danger-100)}.ux-editor{display:block;position:relative}.ux-editor--readonly{padding:var(--eui-base-spacing-s) 0 0 0}.ux-editor--readonly .ql-toolbar{display:none}.ux-editor--readonly .ql-container{border:none}.ux-editor--readonly .ql-editor{min-height:calc(var(--eui-base-spacing-2xl) + 2px);padding:0 var(--eui-base-spacing-m) 0 0!important}.ux-editor--readonly.ux-editor--empty .ql-container{border:none;outline:1px dashed var(--eui-base-color-grey-15)}.ux-editor--readonly.ux-editor--empty .ql-container:hover{outline:1px solid var(--eui-base-color-grey-20)}.ux-editor--focused .ql-container{outline:1px solid var(--eui-base-color-accent-110);box-shadow:var(--eui-base-shadow-1)}.ux-editor--editable .ql-container{background-color:var(--eui-base-color-white);border:1px solid #ccc;padding:.35rem}.ux-editor .ql-toolbar{background-color:var(--eui-base-color-grey-2);border:1px solid var(--eui-base-color-grey-15);padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-xs) 0 var(--eui-base-spacing-xs);font-family:var(--eui-base-font-family);font-size:var(--eui-base-font-size);font-style:normal;font-weight:400}.ux-editor .ql-toolbar.ql-snow button{background:none;border:none;cursor:pointer;display:inline-flex;padding:3px 5px;width:28px}.ux-editor .ql-toolbar.ql-snow .ql-formats{align-items:center;background-color:var(--eui-base-color-grey-5);border:1px solid var(--eui-base-color-grey-15);border-radius:5px;display:inline-flex;margin-bottom:var(--eui-base-spacing-xs);margin-right:var(--eui-base-spacing-xs);vertical-align:middle}.ux-editor .ql-toolbar.ql-snow .ql-formats .ql-picker{align-items:center;color:var(--eui-base-color-grey-90);display:inline-flex;font-size:var(--eui-base-font-size);height:var(--eui-base-spacing-xl);max-height:var(--eui-base-spacing-xl);position:relative;vertical-align:middle}.ux-editor .ql-toolbar.ql-snow .ql-formats .ql-picker.ql-expanded .ql-picker-label{border-color:transparent}.ux-editor .ql-toolbar.ql-snow .ql-formats button{align-items:center;background-color:transparent;border:0 solid var(--eui-base-color-grey-15);box-shadow:none;color:var(--eui-base-color-grey-90);display:inline-flex;height:var(--eui-base-spacing-xl);justify-content:center;min-width:var(--eui-base-spacing-xl)}.ux-editor .ql-toolbar.ql-snow .ql-formats button:hover{background:var(--eui-base-color-grey-10);color:var(--eui-base-color-info-100)}.ux-editor .ql-toolbar.ql-snow .ql-formats button.active,.ux-editor .ql-toolbar.ql-snow .ql-formats button.ql-active{background:var(--eui-base-color-accent-100);color:var(--eui-base-color-primary-100)}.ux-editor .ql-toolbar.ql-snow .ql-formats button:first-child{border-radius:5px 0 0 5px}.ux-editor .ql-toolbar.ql-snow .ql-formats button:last-child{border-radius:0 5px 5px 0}.ux-editor .ql-toolbar.ql-snow .ql-formats button .eui-icon{font-size:var(--eui-base-font-size-2xl)}.ux-editor .ql-toolbar.ql-snow .ql-formats button:active,.ux-editor .ql-toolbar.ql-snow .ql-formats button:focus{z-index:auto;border-color:var(--eui-base-color-accessible-focus)!important;box-shadow:inset 0 0 0 1px var(--eui-base-color-accessible-focus),inset 0 0 0 2px var(--eui-base-color-grey-5);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters{align-items:center;cursor:default;display:inline-flex;width:auto}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .chars-counter{color:var(--eui-base-color-info-100);font-size:var(--eui-base-font-size-s);font-weight:900}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .chars-counter.chars-counter--error{color:var(--eui-base-color-danger-100)}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .words-counter{color:var(--eui-base-color-info-100);font-size:var(--eui-base-font-size-s);font-weight:900}.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .chars-label,.ux-editor .ql-toolbar.ql-snow .ql-formats button.editor-counters .words-label{color:var(--eui-base-color-grey-80);font-size:var(--eui-base-font-size-xs)}.ux-editor .ql-toolbar.ql-snow .ql-formats select{background-color:transparent;border:.5px solid var(--eui-base-color-black);border-radius:5px;cursor:pointer;font-size:var(--eui-base-font-size-s);outline:0;padding:.4rem;vertical-align:middle;width:90px}.ux-editor .ql-toolbar.ql-snow .ql-formats select:active,.ux-editor .ql-toolbar.ql-snow .ql-formats select:focus{z-index:auto;border-color:var(--eui-base-color-accessible-focus)!important;box-shadow:inset 0 0 0 1px var(--eui-base-color-accessible-focus),inset 0 0 0 2px var(--eui-base-color-grey-5);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.ux-editor .ql-toolbar.ql-snow .ql-formats .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:1px}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker{height:var(--eui-base-spacing-xl);padding:var(--eui-base-spacing-2xs) 0;width:calc(7 * var(--eui-base-spacing-m))}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item:before{content:\"Normal\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=small]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=small]:before{content:\"Small\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=smaller]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smaller]:before{content:\"Smaller\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=smallest]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smallest]:before{content:\"Smallest\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=large]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=large]:before{content:\"Large\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-label[data-value=huge]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=huge]:before{content:\"Huge\"}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=small]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-size-small{font-size:var(--eui-base-font-size-s)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smaller]:before{font-size:var(--eui-base-font-size-xs)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=smallest]:before{font-size:var(--eui-base-font-size-2xs)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=large]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-size-large{font-size:var(--eui-base-font-size-xl)}.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-picker-item[data-value=huge]:before,.ux-editor .ql-toolbar.ql-snow .ql-size.ql-picker .ql-size-huge{font-size:var(--eui-base-font-size-4xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker{height:var(--eui-base-spacing-xl);padding:var(--eui-base-spacing-2xs) 0;width:calc(8 * var(--eui-base-spacing-m))}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item:before{content:\"Normal\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"1\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"1\"]:before{content:\"Heading 1\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"2\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"2\"]:before{content:\"Heading 2\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"3\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"3\"]:before{content:\"Heading 3\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"4\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"4\"]:before{content:\"Heading 4\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"5\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"5\"]:before{content:\"Heading 5\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-label[data-value=\"6\"]:before,.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"6\"]:before{content:\"Heading 6\"}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"1\"]:before{font-size:var(--eui-base-font-size-4xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"2\"]:before{font-size:var(--eui-base-font-size-3xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"3\"]:before{font-size:var(--eui-base-font-size-2xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"4\"]:before{font-size:var(--eui-base-font-size-xl)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"5\"]:before{font-size:var(--eui-base-font-size-l)}.ux-editor .ql-toolbar.ql-snow .ql-header.ql-picker .ql-picker-item[data-value=\"6\"]:before{font-size:var(--eui-base-font-size-m)}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker{height:var(--eui-base-spacing-xl);padding:var(--eui-base-spacing-2xs) 0;width:calc(8 * var(--eui-base-spacing-m))}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-label:before,.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item:before{content:\"Sans Serif\"}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-label[data-value=serif]:before,.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=serif]:before{content:\"Serif\"}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-label[data-value=monospace]:before,.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=monospace]:before{content:\"Monospace\"}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=sans-serif]:before{font-family:arial,sans-serif!important}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=serif]:before{font-family:times new roman,serif!important}.ux-editor .ql-toolbar.ql-snow .ql-font.ql-picker .ql-picker-item[data-value=monospace]:before{font-family:courier new,monospace!important}.ux-editor .ql-toolbar.ql-snow .ql-color-picker{width:var(--eui-base-spacing-xl)}.ux-editor .ql-toolbar.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px;display:inline-flex}.ux-editor .ql-container{box-sizing:border-box;height:100%;margin:0;position:relative;resize:vertical;font-family:var(--eui-base-font-family);font-size:var(--eui-base-font-size);font-style:normal;font-weight:400}.ux-editor .ql-container:focus{outline:1px solid var(--eui-base-color-accent-110)}.ux-editor .ql-editor{box-sizing:border-box;height:100%;line-height:var(--eui-base-line-height);outline:none;overflow-y:auto;padding:var(--eui-base-spacing-s);tab-size:4;text-align:left;white-space:pre-wrap;word-break:normal;word-wrap:break-word;font-family:var(--eui-base-font-family);font-size:var(--eui-base-font-size);font-style:normal;font-weight:400}.ux-editor .ql-editor h1{font-size:var(--eui-base-font-size-4xl)!important}.ux-editor .ql-editor h2{font-size:var(--eui-base-font-size-3xl)!important}.ux-editor .ql-editor h3{font-size:var(--eui-base-font-size-2xl)!important}.ux-editor .ql-editor h4{font-size:var(--eui-base-font-size-xl)!important}.ux-editor .ql-editor h5{font-size:var(--eui-base-font-size-l)!important}.ux-editor .ql-editor h6{font-size:var(--eui-base-font-size-m)!important}.ux-editor .ql-editor .h7{font-size:var(--eui-base-font-size-s)!important}.ux-editor .ql-editor .h8{font-size:var(--eui-base-font-size-xs)!important}.ux-editor .ql-editor .h9{font-size:var(--eui-base-font-size-2xs)!important}.ux-editor .ql-editor p{padding-bottom:var(--eui-base-spacing-s)!important}.ux-editor .ql-editor p:last-child{padding-bottom:0!important}.ux-editor .ql-editor em,.ux-editor .ql-editor i{font-style:italic!important}.ux-editor .ql-editor strong,.ux-editor .ql-editor b{font-weight:700!important}.ux-editor .ql-editor strong em,.ux-editor .ql-editor strong i,.ux-editor .ql-editor b em,.ux-editor .ql-editor b i{font-style:italic!important;font-weight:700!important}.ux-editor .ql-editor strong em u,.ux-editor .ql-editor strong i u,.ux-editor .ql-editor b em u,.ux-editor .ql-editor b i u{text-decoration:underline!important}.ux-editor .ql-editor blockquote{border-left:var(--eui-base-spacing-xs) solid var(--eui-base-color-grey-20);margin-bottom:0;margin-top:0;padding-left:var(--eui-base-spacing-m)}.ux-editor .ql-editor code,.ux-editor .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ux-editor .ql-editor pre{margin-bottom:var(--eui-base-spacing-xs);margin-top:var(--eui-base-spacing-xs);padding:var(--eui-base-spacing-xs) var(--eui-base-spacing-m);white-space:pre-wrap}.ux-editor .ql-editor code{font-size:85%;padding:2px 4px;word-break:break-word}.ux-editor .ql-editor ol,.ux-editor .ql-editor ul{padding-left:0}.ux-editor .ql-editor ol{counter-reset:inherit}.ux-editor .ql-editor pre.ql-syntax{background-color:var(--eui-base-color-grey-80);color:#f5f5f5;overflow:visible}.ux-editor .ql-editor iframe,.ux-editor .ql-editor img{display:inline-block;height:1;width:1}.ux-editor .ql-editor.ql-blank:before{left:var(--eui-base-spacing-m);position:absolute;right:0}.ux-editor .ql-tooltip{background-color:var(--eui-base-color-grey-10);left:50%!important;margin:0 auto;outline:2px solid var(--eui-base-color-primary-100);position:absolute;top:50%!important;transform:translate(-50%,-50%)!important;width:70%;box-shadow:var(--eui-base-shadow-1)}.ux-editor .ql-tooltip input[type=text]{border:1px solid #ccc;display:none;font-size:13px;height:26px;margin:0;padding:3px 5px;width:75%}.ux-editor .ql-tooltip a.ql-preview{display:inline-block;max-width:60%;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top;width:100%}.ux-editor__debug{background-color:#fff3cd;border:1px solid #f5c6cb;border-radius:.25rem;color:#856404;font:.85rem consolas,monospace,sans-serif;margin:var(--eui-base-spacing-m) 0;padding:var(--eui-base-spacing-s) 1.25rem;position:relative}.ux-editor__debug-section{align-items:center;display:flex;flex-wrap:wrap;padding-bottom:var(--eui-base-spacing-xs)}.ux-editor__debug-title{color:#e83e8c;font-size:var(--eui-base-font-size-xl);font-weight:900;padding-bottom:var(--eui-base-spacing-xs)}.ux-editor__debug-badge{font-size:var(--eui-base-font-size-xs);font-weight:400;margin:0 var(--eui-base-spacing-2xs);padding:var(--eui-base-spacing-3xs) var(--eui-base-spacing-xs)}.ux-editor__debug-badge--off{background-color:#e8e0c4;border:1px solid #d2d2d2;color:#888}.ux-editor__debug-badge--on{background-color:#28a745;border:1px solid #218037;color:var(--eui-base-color-white)}.ux-editor__debug-badge--alert{background-color:#dc3545;border:1px solid #721d25;color:var(--eui-base-color-white)}.ux-editor__debug-source{background-color:#ffeeba;font-size:var(--eui-base-font-size);height:auto;max-height:150px;outline:1px dashed silver;overflow-y:auto;padding:var(--eui-base-spacing-xs);position:relative}.ux-editor__debug-source-code{color:#e83e8c;font:90% consolas,monospace}.ux-editor__debug code{font-size:var(--eui-base-font-size-xs)}.ux-editor__about{background:var(--eui-base-color-white);display:block;height:10rem;left:50%;overflow-y:auto;padding:var(--eui-base-spacing-m);position:absolute;transform:translate(-50%,25%);width:20rem;z-index:1;box-shadow:var(--eui-base-shadow-3)}ux-editor.ng-invalid.ng-touched .ux-editor:not(.ux-editor--readonly) .ql-container{outline:1px solid var(--eui-base-color-danger-100)}\n"] }]
|
|
694
724
|
}], ctorParameters: function () {
|
|
695
725
|
return [{ type: i4.UxFormGroupComponent, decorators: [{
|
|
696
726
|
type: Optional
|