@eui/components 19.1.1-snapshot-1740396995331 → 19.1.1-snapshot-1740477848147

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.
@@ -1 +1 @@
1
- {"version":3,"file":"eui-components-externals-quill.mjs","sources":["../../externals/quill/quill-defaults.ts","../../externals/quill/quill-editor.interfaces.ts","../../externals/quill/loader.service.ts","../../externals/quill/quill-editor.component.ts","../../externals/quill/quill.module.ts","../../externals/quill/eui-components-externals-quill.ts"],"sourcesContent":["export const defaultModules = {\n toolbar: [\n ['bold', 'italic', 'underline', 'strike'], // toggled buttons\n ['blockquote', 'code-block'],\n\n [{ header: 1 }, { header: 2 }], // custom button values\n [{ list: 'ordered' }, { list: 'bullet' }],\n [{ script: 'sub' }, { script: 'super' }], // superscript/subscript\n [{ indent: '-1' }, { indent: '+1' }], // outdent/indent\n [{ direction: 'rtl' }], // text direction\n\n [{ size: ['small', false, 'large', 'huge'] }], // custom dropdown\n [{ header: [1, 2, 3, 4, 5, 6, false] }],\n\n [{ color: [] }, { background: [] }], // dropdown with defaults from theme\n [{ font: [] }],\n [{ align: [] }],\n\n ['clean'], // remove formatting button\n ['table'], // adds the insert table button\n ['link', 'image', 'video'], // link and image, video\n ],\n};\n","import { InjectionToken } from '@angular/core';\n\nexport type QuillToolbarConfig = Array<\n Array<\n | string\n | {\n indent?: string;\n list?: string;\n direction?: string;\n header?: number | Array<boolean | number>;\n color?: string[];\n background?: string[];\n align?: string[];\n script?: string;\n font?: string[];\n size?: Array<boolean | string>;\n }\n >\n>;\n\nexport interface QuillModules {\n [key: string]: any;\n clipboard?:\n | {\n mathers?: any[];\n matchVisual?: boolean;\n }\n | boolean;\n history?:\n | {\n delay?: number;\n maxStack?: number;\n userOnly?: boolean;\n }\n | boolean;\n keyboard?:\n | {\n bindings?: any;\n }\n | boolean;\n syntax?: boolean;\n table?: boolean;\n toolbar?:\n | QuillToolbarConfig\n | string\n | {\n container?: string | string[] | QuillToolbarConfig;\n handlers?: {\n [key: string]: any;\n };\n }\n | boolean;\n}\n\nexport type QuillFormat = 'object' | 'json' | 'html' | 'text';\n\nexport interface QuillConfig {\n bounds?: HTMLElement | string;\n debug?: 'error' | 'warn' | 'log' | false;\n format?: QuillFormat;\n formats?: any;\n modules?: QuillModules;\n placeholder?: string;\n readOnly?: boolean;\n scrollingContainer?: HTMLElement | string | null;\n theme?: string;\n // Custom Config to track all changes or only changes by 'user'\n trackChanges?: 'user' | 'all';\n}\n\nexport interface QuillDynamicConfig {\n /** path for scripts and css e.g. '/assets/quill/' */\n path: string;\n /** path for scripts e.g. ['/assets/quill.min.js'] */\n // scripts: string[];\n /** path for css e.g. ['/assets/quill.snow.css'] */\n // css: string[];\n}\n\nexport const QUILL_CONFIG_TOKEN = new InjectionToken<QuillConfig>('config');\nexport const QUILL_DYNAMIC_CONFIG_TOKEN = new InjectionToken<QuillDynamicConfig>('Dynamic loading config');\n","import { inject, Injectable } from \"@angular/core\";\n\nimport { Observable } from 'rxjs';\nimport { QUILL_DYNAMIC_CONFIG_TOKEN, QuillDynamicConfig } from \"./quill-editor.interfaces\";\nimport { DOCUMENT } from \"@angular/common\";\n\ndeclare const window: { Quill: any | undefined; quillBetterTable: any | undefined };\n\n/**\n * @internal This service is not part of the public API of the component\n */\n@Injectable({ providedIn: 'root'})\nexport class LoaderService {\n private dynamicConfig: QuillDynamicConfig = inject(QUILL_DYNAMIC_CONFIG_TOKEN, { optional: true });\n\n /**\n * Load the Quill.js library\n *\n * @param path Path to the Quill.js library e.g. \"assets/quill/dist\". The path must contain the \"quill.js\"\n * and \"quillEditor.min.css\" files and also the css ones.\n */\n load(): Observable<boolean> {\n let loaded: boolean = false;\n return new Observable(observer => {\n\n // check if window.Quill is defined other load it\n if (window.Quill === undefined) {\n const loadResult = { mainScript: false, style: false, secondaryScript: false, };\n\n // style\n const quillEditorStyle: HTMLLinkElement = document.createElement('link');\n quillEditorStyle.href = `${this.dynamicConfig?.path}/quill.core.css`;\n quillEditorStyle.rel = 'stylesheet';\n const quillEditorStyleOnload = () => {\n quillEditorStyle.removeEventListener('load', quillEditorStyleOnload);\n quillEditorStyle.removeEventListener('error', quillEditorOnerror);\n loadResult.style = true;\n if (Object.values(loadResult).every(v => v === true)) {\n observer.next(true);\n observer.complete();\n loaded = true;\n }\n };\n const quillEditorSnowStyle: HTMLLinkElement = document.createElement('link');\n quillEditorSnowStyle.href = `${this.dynamicConfig?.path}/quill.snow.css`;\n quillEditorSnowStyle.rel = 'stylesheet';\n\n // script to inject into page the Quill.js\n let quillEditorScript: HTMLScriptElement = document.createElement('script');\n quillEditorScript.src = `${this.dynamicConfig?.path}/quill.js`;\n quillEditorScript.type = 'application/javascript';\n quillEditorScript.async = true;\n const quillEditorScriptOnload = () => {\n quillEditorScript.removeEventListener('load', quillEditorScriptOnload);\n quillEditorScript.removeEventListener('error', quillEditorOnerror);\n loadResult.mainScript = true;\n document.body.append(quillBetterTableScript);\n if (Object.values(loadResult).every(v => v === true)) {\n observer.next(true);\n observer.complete();\n loaded = true;\n }\n };\n\n // script to inject into page the Quill-better-table\"node_modules/quill-better-table/dist/quill-better-table.min.js\",\n const quillBetterTableScript: HTMLScriptElement = document.createElement('script');\n quillBetterTableScript.src = `${this.dynamicConfig?.path}/quill-better-table.js`;\n quillBetterTableScript.type = 'application/javascript';\n quillBetterTableScript.async = true;\n const quillBetterTableScriptOnload = () => {\n quillBetterTableScript.removeEventListener('load', quillBetterTableScriptOnload);\n quillBetterTableScript.removeEventListener('error', quillEditorOnerror);\n loadResult.secondaryScript = true;\n if (Object.values(loadResult).every(v => v === true)) {\n observer.next(true);\n observer.complete();\n loaded = true;\n }\n };\n\n const quillEditorOnerror = () => {\n quillEditorStyle.removeEventListener('load', quillEditorStyleOnload);\n quillEditorStyle.removeEventListener('error', quillEditorOnerror);\n quillEditorScript.removeEventListener('load', quillEditorScriptOnload);\n quillEditorScript.removeEventListener('error', quillEditorOnerror);\n observer.next(false);\n observer.complete();\n };\n\n quillEditorStyle.addEventListener('load', quillEditorStyleOnload);\n quillEditorStyle.addEventListener('error', quillEditorOnerror);\n quillEditorSnowStyle.addEventListener('load', quillEditorStyleOnload);\n quillEditorSnowStyle.addEventListener('error', quillEditorOnerror);\n quillEditorScript.addEventListener('load', quillEditorScriptOnload);\n quillEditorScript.addEventListener('error', quillEditorOnerror);\n quillBetterTableScript.addEventListener('load', quillBetterTableScriptOnload);\n quillBetterTableScript.addEventListener('error', quillEditorOnerror);\n\n // check if the script is already loaded. Take into account the Hostname on to src\n if (document.querySelector(`script[src=\"${this.dynamicConfig?.path}/quill.js\"]`) === null) {\n document.body.append(quillEditorScript);\n } else {\n // interval timer to check when the script is loaded\n const interval = setInterval(() => {\n if (loaded) {\n clearInterval(interval);\n } else if (window.Quill !== undefined && window.quillBetterTable !== undefined) {\n observer.next(true);\n observer.complete();\n loaded = true;\n clearInterval(interval);\n }\n }, 100);\n }\n // check if style is already loaded\n if (document.querySelector(`link[href=\"${this.dynamicConfig?.path}/quill.core.css\"]`) === null) {\n document.body.append(quillEditorStyle);\n }\n // check if style is already loaded\n if (document.querySelector(`link[href=\"${this.dynamicConfig?.path}/quill.snow.css\"]`) === null) {\n document.body.append(quillEditorSnowStyle);\n }\n } else {\n observer.next(true);\n observer.complete();\n }\n });\n }\n}\n","import { isPlatformServer } from '@angular/common';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport {\n QUILL_CONFIG_TOKEN,\n QuillConfig,\n QuillFormat,\n QuillModules,\n} from './quill-editor.interfaces';\n\nimport {\n AfterViewInit,\n booleanAttribute,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n NgZone,\n OnChanges,\n OnDestroy,\n Output,\n PLATFORM_ID,\n Renderer2,\n SecurityContext,\n SimpleChanges,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { ControlValueAccessor, NG_VALIDATORS, NG_VALUE_ACCESSOR, Validator } from '@angular/forms';\n\nimport { DOCUMENT } from '@angular/common';\nimport { defaultModules } from './quill-defaults';\nimport { ContentChange, SelectionChange, Range } from './models/editor.model';\nimport { LoaderService } from './loader.service';\n\n// Because quill uses `document` directly, we cannot `import` during SSR\n// instead, we load dynamically via `require('quill')` in `ngAfterViewInit()`\n// eslint-disable-next-line no-var\ndeclare var require: any;\n// eslint-disable-next-line no-var\ndeclare var Quill: any;\n// let Quill: any = window['Quill'];\n\nexport interface CustomOption {\n import: string;\n whitelist: any[];\n}\n\nconst getFormat = (format?: QuillFormat, configFormat?: QuillFormat): QuillFormat => {\n const passedFormat = format || configFormat;\n return passedFormat || 'html';\n};\n\n@Component({\n encapsulation: ViewEncapsulation.None,\n standalone: false,\n providers: [\n {\n multi: true,\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => QuillEditorComponent),\n },\n {\n multi: true,\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => QuillEditorComponent),\n },\n ],\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'quill-editor',\n template: ` <ng-content select=\"[quill-editor-toolbar]\"></ng-content> `,\n})\nexport class QuillEditorComponent implements AfterViewInit, ControlValueAccessor, OnChanges, OnDestroy, Validator {\n quillEditor: any;\n editorElem: HTMLElement | undefined;\n content: any;\n protected loaded = false;\n\n @Input() id: string;\n @Input() format?: 'object' | 'html' | 'text' | 'json';\n @Input() theme?: string;\n @Input() modules?: QuillModules;\n @Input() debug?: 'warn' | 'log' | 'error' | false;\n @Input() placeholder?: string;\n @Input() maxLength?: number;\n @Input() minLength?: number;\n @Input() formats?: string[] | null;\n @Input() customToolbarPosition: 'top' | 'bottom' = 'top';\n @Input() styles: any = null;\n @Input() scrollingContainer?: HTMLElement | string | null;\n @Input() bounds?: HTMLElement | string;\n @Input() customOptions: CustomOption[] = [];\n @Input() trackChanges?: 'user' | 'all';\n @Input() hasImageFeature: boolean;\n\n // eslint-disable-next-line @angular-eslint/no-output-on-prefix\n @Output() onEditorCreated: EventEmitter<any> = new EventEmitter();\n // eslint-disable-next-line @angular-eslint/no-output-on-prefix\n @Output() onContentChanged: EventEmitter<ContentChange> = new EventEmitter();\n // eslint-disable-next-line @angular-eslint/no-output-on-prefix\n @Output() onSelectionChanged: EventEmitter<SelectionChange> = new EventEmitter();\n // eslint-disable-next-line @angular-eslint/no-output-on-prefix\n @Output() onFocus: EventEmitter<{\n editor: any;\n source: string;\n }> = new EventEmitter();\n // eslint-disable-next-line @angular-eslint/no-output-on-prefix\n @Output() onBlur: EventEmitter<{\n editor: any;\n source: string;\n }> = new EventEmitter();\n\n @Input({ transform: booleanAttribute }) readOnly?: boolean;\n @Input({ transform: booleanAttribute }) required = false;\n @Input({ transform: booleanAttribute }) sanitize = false;\n @Input({ transform: booleanAttribute }) strict = true;\n @Input({ transform: booleanAttribute }) preserveWhitespace = false;\n\n private disabled = false; // used to store initial value before ViewInit\n\n constructor(\n private elementRef: ElementRef,\n private domSanitizer: DomSanitizer,\n @Inject(DOCUMENT) private doc: any,\n // eslint-disable-next-line @typescript-eslint/ban-types\n @Inject(PLATFORM_ID) private platformId: object,\n private renderer: Renderer2,\n private zone: NgZone,\n @Inject(QUILL_CONFIG_TOKEN) private config: QuillConfig,\n private loader: LoaderService,\n ) {}\n\n // eslint-disable-next-line no-empty,no-empty-function,@typescript-eslint/no-empty-function, @typescript-eslint/explicit-function-return-type\n onModelChange(_modelValue?: any) {}\n // eslint-disable-next-line no-empty, no-empty-function, @typescript-eslint/no-empty-function, @typescript-eslint/explicit-function-return-type\n onModelTouched() {}\n\n @Input()\n valueGetter = (quillEditor: any, editorElement: HTMLElement): string | any => {\n let html: string | null = editorElement.querySelector('.ql-editor')?.innerHTML;\n if (html === '<p><br></p>' || html === '<div><br><div>') {\n html = null;\n }\n let modelValue = html;\n const format = getFormat(this.format, this.config.format);\n\n if (format === 'text') {\n modelValue = quillEditor.getText();\n } else if (format === 'object') {\n modelValue = quillEditor.getContents();\n } else if (format === 'json') {\n try {\n modelValue = JSON.stringify(quillEditor.getContents());\n } catch (e) {\n modelValue = quillEditor.getText();\n }\n }\n\n return modelValue;\n };\n\n @Input()\n valueSetter = (quillEditor: any, value: any): any => {\n const format = getFormat(this.format, this.config.format);\n if (format === 'html') {\n if (this.sanitize) {\n value = this.domSanitizer.sanitize(SecurityContext.HTML, value);\n }\n return quillEditor.clipboard.convert({ html: value });\n } else if (format === 'json') {\n try {\n return JSON.parse(value);\n } catch (e) {\n return [{ insert: value }];\n }\n }\n\n return value;\n };\n\n ngAfterViewInit(): void {\n // const loader = new LoaderService();\n this.loader.load().subscribe({\n complete: () => {\n // setup keyboard bindings from BetterTable if present\n const QuillBetterTable = window['quillBetterTable'];\n if(QuillBetterTable) {\n // check if already registered\n if(!window['Quill'].imports.hasOwnProperty('modules/better-table')) {\n window['Quill'].register({ 'modules/better-table': QuillBetterTable });\n }\n if(!this.config.modules.keyboard) {\n this.config.modules.keyboard = {\n bindings: QuillBetterTable?.keyboardBindings,\n };\n }\n }\n\n if (isPlatformServer(this.platformId)) {\n return;\n }\n if (!Quill) {\n // Quill = require('quill')\n Quill = window['Quill'];\n }\n this.overrideScrollBehavior(Quill);\n\n this.loaded = true;\n\n this.elementRef.nativeElement.insertAdjacentHTML(\n this.customToolbarPosition === 'top' ? 'beforeend' : 'afterbegin',\n this.preserveWhitespace ? '<pre quill-editor-element></pre>' : '<div quill-editor-element></div>'\n );\n\n this.editorElem = this.elementRef.nativeElement.querySelector('[quill-editor-element]');\n\n const toolbarElem = this.elementRef.nativeElement.querySelector('[quill-editor-toolbar]');\n let modules = this.modules || this.config.modules || defaultModules;\n if (modules.toolbar === undefined) {\n modules.toolbar = defaultModules.toolbar;\n }\n\n let placeholder = this.placeholder !== undefined ? this.placeholder : this.config.placeholder;\n if (placeholder === undefined) {\n placeholder = 'Insert text here ...';\n }\n\n if (toolbarElem) {\n // eslint-disable-next-line dot-notation,@typescript-eslint/dot-notation\n modules['toolbar'] = toolbarElem;\n }\n\n if (!this.hasImageFeature) {\n modules['uploader'] = { handler: () => false };\n } else {\n modules['uploader'] = { mimetypes: ['image/png', 'image/jpeg'] };\n }\n\n if (this.styles) {\n Object.keys(this.styles).forEach((key: string) => {\n this.renderer.setStyle(this.editorElem, key, this.styles[key]);\n });\n }\n\n this.customOptions.forEach((customOption) => {\n const newCustomOption = Quill.import(customOption.import);\n newCustomOption.whitelist = customOption.whitelist;\n Quill.register(newCustomOption, true);\n });\n\n let bounds = this.bounds && this.bounds === 'self' ? this.editorElem : this.bounds;\n if (!bounds) {\n bounds = this.config.bounds ? this.config.bounds : this.doc.body;\n }\n\n let debug = this.debug;\n if (!debug && debug !== false && this.config.debug) {\n debug = this.config.debug;\n }\n\n let readOnly = this.readOnly;\n if (!readOnly && this.readOnly !== false) {\n readOnly = this.config.readOnly !== undefined ? this.config.readOnly : false;\n }\n\n let scrollingContainer = this.scrollingContainer;\n if (!scrollingContainer && this.scrollingContainer !== null) {\n scrollingContainer =\n this.config.scrollingContainer === null || this.config.scrollingContainer ? this.config.scrollingContainer : null;\n }\n\n let formats = this.formats;\n if (!formats && formats === undefined) {\n formats = this.config.formats || this.config.formats === null ? this.config.formats : undefined;\n }\n Quill.formats = { ...Quill.formats, [this.id]: formats };\n\n if (formats && formats.indexOf('table') !== -1) {\n modules = {\n ...modules,\n 'better-table': false,\n }\n }\n\n this.quillEditor = new Quill(this.editorElem, {\n bounds,\n debug,\n formats,\n modules,\n placeholder,\n readOnly,\n scrollingContainer,\n strict: this.strict,\n theme: this.theme || (this.config.theme ? this.config.theme : 'snow'),\n });\n this.quillEditor.container.firstChild.id = this.id;\n\n if (this.content) {\n const format = getFormat(this.format, this.config.format);\n if (format === 'object') {\n this.quillEditor.setContents(this.content, 'silent');\n } else if (format === 'text') {\n this.quillEditor.setText(this.content, 'silent');\n } else if (format === 'json') {\n try {\n this.quillEditor.setContents(JSON.parse(this.content), 'silent');\n } catch (e) {\n this.quillEditor.setText(this.content, 'silent');\n }\n } else {\n if (this.sanitize) {\n this.content = this.domSanitizer.sanitize(SecurityContext.HTML, this.content);\n }\n const contents = this.quillEditor.clipboard.convert(this.content);\n this.quillEditor.setContents(contents, 'silent');\n }\n\n this.quillEditor.history.clear();\n }\n\n // initialize disabled status based on this.disabled as default value\n this.setDisabledState();\n\n this.onEditorCreated.emit(this.quillEditor);\n\n // mark model as touched if editor lost focus\n this.quillEditor.on('selection-change', this.selectionChangeHandler);\n\n // update model if text changes\n this.quillEditor.on('text-change', this.textChangeHandler);\n }\n });\n }\n\n selectionChangeHandler = (range: Range | null, oldRange: Range | null, source: string): void => {\n this.zone.run(() => {\n if (range === null) {\n this.onBlur.emit({\n editor: this.quillEditor,\n source,\n });\n } else if (oldRange === null) {\n this.onFocus.emit({\n editor: this.quillEditor,\n source,\n });\n }\n\n this.onSelectionChanged.emit({\n editor: this.quillEditor,\n oldRange,\n range,\n source,\n });\n\n if (!range && this.onModelTouched) {\n this.onModelTouched();\n }\n });\n };\n\n textChangeHandler = (delta: any, oldDelta: any, source: string): void => {\n // only emit changes emitted by user interactions\n\n const text = this.quillEditor.getText();\n const content = this.quillEditor.getContents();\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n let html: string | null = this.editorElem!.querySelector('.ql-editor')!.innerHTML;\n if (html === '<p><br></p>' || html === '<div><br><div>') {\n html = null;\n }\n\n this.zone.run(() => {\n const trackChanges = this.trackChanges || this.config.trackChanges;\n if ((source === Quill.sources.USER || (trackChanges && trackChanges === 'all')) && this.onModelChange) {\n this.onModelChange(\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n this.valueGetter(this.quillEditor, this.editorElem!)\n );\n }\n\n this.onContentChanged.emit({\n content,\n delta,\n editor: this.quillEditor,\n html,\n oldDelta,\n source,\n text,\n });\n });\n };\n\n ngOnDestroy(): void {\n if (this.quillEditor) {\n this.quillEditor.off('selection-change', this.selectionChangeHandler);\n this.quillEditor.off('text-change', this.textChangeHandler);\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (!this.quillEditor) {\n return;\n }\n if (changes.id) {\n this.quillEditor.container.firstChild.id = changes.id.currentValue;\n Quill.formats = { ...Quill.formats, [this.id]: this.formats };\n }\n if (changes['readOnly']) {\n this.quillEditor.enable(!changes['readOnly'].currentValue);\n }\n if (changes['placeholder']) {\n this.quillEditor.root.dataset.placeholder = changes['placeholder'].currentValue;\n }\n if (changes['styles']) {\n const currentStyling = changes['styles'].currentValue;\n const previousStyling = changes['styles'].previousValue;\n\n if (previousStyling) {\n Object.keys(previousStyling).forEach((key: string) => {\n this.renderer.removeStyle(this.editorElem, key);\n });\n }\n if (currentStyling) {\n Object.keys(currentStyling).forEach((key: string) => {\n this.renderer.setStyle(this.editorElem, key, this.styles[key]);\n });\n }\n }\n if (changes['formats']) {\n const currentFormats = changes['formats'].currentValue;\n Quill.formats = { ...Quill.formats, [this.id]: currentFormats };\n }\n }\n\n writeValue(currentValue: any): void {\n this.content = currentValue;\n const format = getFormat(this.format, this.config.format);\n\n if (this.quillEditor) {\n if (currentValue) {\n if (format === 'text') {\n this.quillEditor.setText(currentValue);\n } else {\n this.quillEditor.setContents(this.valueSetter(this.quillEditor, this.content));\n }\n return;\n }\n this.quillEditor.setText('');\n }\n }\n\n setDisabledState(isDisabled: boolean = this.disabled): void {\n // store initial value to set appropriate disabled status after ViewInit\n this.disabled = isDisabled;\n if (this.quillEditor) {\n if (isDisabled) {\n this.quillEditor.disable();\n this.renderer.setAttribute(this.elementRef.nativeElement, 'disabled', 'disabled');\n } else {\n if (!this.readOnly) {\n this.quillEditor.enable();\n }\n this.renderer.removeAttribute(this.elementRef.nativeElement, 'disabled');\n }\n }\n }\n\n registerOnChange(fn: (modelValue: any) => void): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onModelTouched = fn;\n }\n\n validate(): any {\n if (!this.quillEditor) {\n return null;\n }\n\n const err: {\n minLengthError?: {\n given: number;\n minLength: number;\n };\n maxLengthError?: {\n given: number;\n maxLength: number;\n };\n requiredError?: { empty: boolean };\n } = {};\n let valid = true;\n\n const textLength = this.quillEditor.getText().trim().length;\n\n if (this.minLength && textLength && textLength < this.minLength) {\n err.minLengthError = {\n given: textLength,\n minLength: this.minLength,\n };\n\n valid = false;\n }\n\n if (this.maxLength && textLength > this.maxLength) {\n err.maxLengthError = {\n given: textLength,\n maxLength: this.maxLength,\n };\n\n valid = false;\n }\n\n if (this.required && !textLength) {\n err.requiredError = {\n empty: true,\n };\n\n valid = false;\n }\n\n return valid ? null : err;\n }\n\n /**\n * Override the default Quill scroll behavior to take into account the formats array and skip non-found ones. Then\n * registers the plugin to the Quill editor.\n *\n * @param QuillInstance The Quill class (not the instance)\n * @private\n */\n private overrideScrollBehavior(QuillInstance: any): void {\n // the Built-in Scroll Class is not exported, so we need to import it\n const BuiltinScroll = QuillInstance.import('blots/scroll');\n /**\n * Override the default Quill scroll behavior to take into account the formats array and skip non-found ones.\n */\n class Scroll extends BuiltinScroll {\n formatAt(index: number, length: number, format: string, value: any): void {\n const elementId = this.domNode.id;\n const instanceFormats = QuillInstance.formats[elementId];\n // checks the formats array to see if the format is blacklisted\n if (instanceFormats && instanceFormats.find((f) => f === format)) {\n return;\n }\n // continue with default behavior\n super.formatAt(index, length, format, value);\n }\n }\n /** register the Scroll override */\n QuillInstance.register('blots/scroll', Scroll, true);\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { defaultModules } from './quill-defaults';\nimport { QuillEditorComponent } from './quill-editor.component';\nimport { QUILL_CONFIG_TOKEN, QuillConfig } from './quill-editor.interfaces';\nimport { CommonModule } from \"@angular/common\";\n\n// TODO: integrate that module and all related code with the eui-editor module.\n// Remove this sub-entry and move all the code to the eui-editor.\n\n/**\n * @deprecated please don't use it. It will be removed\n */\n@NgModule({\n declarations: [QuillEditorComponent],\n exports: [QuillEditorComponent],\n imports: [CommonModule],\n providers: [\n {\n provide: QUILL_CONFIG_TOKEN,\n useValue: { modules: defaultModules },\n },\n ],\n})\nexport class QuillModule {\n static forRoot(config?: QuillConfig): ModuleWithProviders<QuillModule> {\n return {\n ngModule: QuillModule,\n providers: [\n {\n provide: QUILL_CONFIG_TOKEN,\n // eslint-disable-next-line prefer-arrow/prefer-arrow-functions\n useValue: config || { modules: defaultModules },\n },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.LoaderService"],"mappings":"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"}
1
+ {"version":3,"file":"eui-components-externals-quill.mjs","sources":["../../externals/quill/quill-defaults.ts","../../externals/quill/quill-editor.interfaces.ts","../../externals/quill/loader.service.ts","../../externals/quill/quill-editor.component.ts","../../externals/quill/quill.module.ts","../../externals/quill/eui-components-externals-quill.ts"],"sourcesContent":["export const defaultModules = {\n toolbar: [\n ['bold', 'italic', 'underline', 'strike'], // toggled buttons\n ['blockquote', 'code-block'],\n\n [{ header: 1 }, { header: 2 }], // custom button values\n [{ list: 'ordered' }, { list: 'bullet' }],\n [{ script: 'sub' }, { script: 'super' }], // superscript/subscript\n [{ indent: '-1' }, { indent: '+1' }], // outdent/indent\n [{ direction: 'rtl' }], // text direction\n\n [{ size: ['small', false, 'large', 'huge'] }], // custom dropdown\n [{ header: [1, 2, 3, 4, 5, 6, false] }],\n\n [{ color: [] }, { background: [] }], // dropdown with defaults from theme\n [{ font: [] }],\n [{ align: [] }],\n\n ['clean'], // remove formatting button\n ['table'], // adds the insert table button\n ['link', 'image', 'video'], // link and image, video\n ],\n};\n","import { InjectionToken } from '@angular/core';\n\nexport type QuillToolbarConfig = Array<\n Array<\n | string\n | {\n indent?: string;\n list?: string;\n direction?: string;\n header?: number | Array<boolean | number>;\n color?: string[];\n background?: string[];\n align?: string[];\n script?: string;\n font?: string[];\n size?: Array<boolean | string>;\n }\n >\n>;\n\nexport interface QuillModules {\n [key: string]: any;\n clipboard?:\n | {\n mathers?: any[];\n matchVisual?: boolean;\n }\n | boolean;\n history?:\n | {\n delay?: number;\n maxStack?: number;\n userOnly?: boolean;\n }\n | boolean;\n keyboard?:\n | {\n bindings?: any;\n }\n | boolean;\n syntax?: boolean;\n table?: boolean;\n toolbar?:\n | QuillToolbarConfig\n | string\n | {\n container?: string | string[] | QuillToolbarConfig;\n handlers?: {\n [key: string]: any;\n };\n }\n | boolean;\n}\n\nexport type QuillFormat = 'object' | 'json' | 'html' | 'text';\n\nexport interface QuillConfig {\n bounds?: HTMLElement | string;\n debug?: 'error' | 'warn' | 'log' | false;\n format?: QuillFormat;\n formats?: any;\n modules?: QuillModules;\n placeholder?: string;\n readOnly?: boolean;\n scrollingContainer?: HTMLElement | string | null;\n theme?: string;\n // Custom Config to track all changes or only changes by 'user'\n trackChanges?: 'user' | 'all';\n}\n\nexport interface QuillDynamicConfig {\n /** path for scripts and css e.g. '/assets/quill/' */\n path: string;\n /** path for scripts e.g. ['/assets/quill.min.js'] */\n // scripts: string[];\n /** path for css e.g. ['/assets/quill.snow.css'] */\n // css: string[];\n}\n\nexport const QUILL_CONFIG_TOKEN = new InjectionToken<QuillConfig>('config');\nexport const QUILL_DYNAMIC_CONFIG_TOKEN = new InjectionToken<QuillDynamicConfig>('Dynamic loading config');\n","import { inject, Injectable } from \"@angular/core\";\n\nimport { Observable } from 'rxjs';\nimport { QUILL_DYNAMIC_CONFIG_TOKEN, QuillDynamicConfig } from \"./quill-editor.interfaces\";\nimport { DOCUMENT } from \"@angular/common\";\n\ndeclare const window: { Quill: any | undefined; quillBetterTable: any | undefined };\n\n/**\n * @internal This service is not part of the public API of the component\n */\n@Injectable({ providedIn: 'root'})\nexport class LoaderService {\n private dynamicConfig: QuillDynamicConfig = inject(QUILL_DYNAMIC_CONFIG_TOKEN, { optional: true });\n\n /**\n * Load the Quill.js library\n *\n * @param path Path to the Quill.js library e.g. \"assets/quill/dist\". The path must contain the \"quill.js\"\n * and \"quillEditor.min.css\" files and also the css ones.\n */\n load(): Observable<boolean> {\n let loaded: boolean = false;\n return new Observable(observer => {\n\n // check if window.Quill is defined other load it\n if (window.Quill === undefined) {\n const loadResult = { mainScript: false, style: false, secondaryScript: false, };\n\n // style\n const quillEditorStyle: HTMLLinkElement = document.createElement('link');\n quillEditorStyle.href = `${this.dynamicConfig?.path}/quill.core.css`;\n quillEditorStyle.rel = 'stylesheet';\n const quillEditorStyleOnload = () => {\n quillEditorStyle.removeEventListener('load', quillEditorStyleOnload);\n quillEditorStyle.removeEventListener('error', quillEditorOnerror);\n loadResult.style = true;\n if (Object.values(loadResult).every(v => v === true)) {\n observer.next(true);\n observer.complete();\n loaded = true;\n }\n };\n const quillEditorSnowStyle: HTMLLinkElement = document.createElement('link');\n quillEditorSnowStyle.href = `${this.dynamicConfig?.path}/quill.snow.css`;\n quillEditorSnowStyle.rel = 'stylesheet';\n\n // script to inject into page the Quill.js\n let quillEditorScript: HTMLScriptElement = document.createElement('script');\n quillEditorScript.src = `${this.dynamicConfig?.path}/quill.js`;\n quillEditorScript.type = 'application/javascript';\n quillEditorScript.async = true;\n const quillEditorScriptOnload = () => {\n quillEditorScript.removeEventListener('load', quillEditorScriptOnload);\n quillEditorScript.removeEventListener('error', quillEditorOnerror);\n loadResult.mainScript = true;\n document.body.append(quillBetterTableScript);\n if (Object.values(loadResult).every(v => v === true)) {\n observer.next(true);\n observer.complete();\n loaded = true;\n }\n };\n\n // script to inject into page the Quill-better-table\"node_modules/quill-better-table/dist/quill-better-table.min.js\",\n const quillBetterTableScript: HTMLScriptElement = document.createElement('script');\n quillBetterTableScript.src = `${this.dynamicConfig?.path}/quill-better-table.js`;\n quillBetterTableScript.type = 'application/javascript';\n quillBetterTableScript.async = true;\n const quillBetterTableScriptOnload = () => {\n quillBetterTableScript.removeEventListener('load', quillBetterTableScriptOnload);\n quillBetterTableScript.removeEventListener('error', quillEditorOnerror);\n loadResult.secondaryScript = true;\n if (Object.values(loadResult).every(v => v === true)) {\n observer.next(true);\n observer.complete();\n loaded = true;\n }\n };\n\n const quillEditorOnerror = () => {\n quillEditorStyle.removeEventListener('load', quillEditorStyleOnload);\n quillEditorStyle.removeEventListener('error', quillEditorOnerror);\n quillEditorScript.removeEventListener('load', quillEditorScriptOnload);\n quillEditorScript.removeEventListener('error', quillEditorOnerror);\n observer.next(false);\n observer.complete();\n };\n\n quillEditorStyle.addEventListener('load', quillEditorStyleOnload);\n quillEditorStyle.addEventListener('error', quillEditorOnerror);\n quillEditorSnowStyle.addEventListener('load', quillEditorStyleOnload);\n quillEditorSnowStyle.addEventListener('error', quillEditorOnerror);\n quillEditorScript.addEventListener('load', quillEditorScriptOnload);\n quillEditorScript.addEventListener('error', quillEditorOnerror);\n quillBetterTableScript.addEventListener('load', quillBetterTableScriptOnload);\n quillBetterTableScript.addEventListener('error', quillEditorOnerror);\n\n // check if the script is already loaded. Take into account the Hostname on to src\n if (document.querySelector(`script[src=\"${this.dynamicConfig?.path}/quill.js\"]`) === null) {\n document.body.append(quillEditorScript);\n } else {\n // interval timer to check when the script is loaded\n const interval = setInterval(() => {\n if (loaded) {\n clearInterval(interval);\n } else if (window.Quill !== undefined && window.quillBetterTable !== undefined) {\n observer.next(true);\n observer.complete();\n loaded = true;\n clearInterval(interval);\n }\n }, 100);\n }\n // check if style is already loaded\n if (document.querySelector(`link[href=\"${this.dynamicConfig?.path}/quill.core.css\"]`) === null) {\n document.body.append(quillEditorStyle);\n }\n // check if style is already loaded\n if (document.querySelector(`link[href=\"${this.dynamicConfig?.path}/quill.snow.css\"]`) === null) {\n document.body.append(quillEditorSnowStyle);\n }\n } else {\n observer.next(true);\n observer.complete();\n }\n });\n }\n}\n","import { isPlatformServer } from '@angular/common';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nimport {\n QUILL_CONFIG_TOKEN,\n QuillConfig,\n QuillFormat,\n QuillModules,\n} from './quill-editor.interfaces';\n\nimport {\n AfterViewInit,\n booleanAttribute,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n Inject,\n Input,\n NgZone,\n OnChanges,\n OnDestroy,\n Output,\n PLATFORM_ID,\n Renderer2,\n SecurityContext,\n SimpleChanges,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { ControlValueAccessor, NG_VALIDATORS, NG_VALUE_ACCESSOR, Validator } from '@angular/forms';\n\nimport { DOCUMENT } from '@angular/common';\nimport { defaultModules } from './quill-defaults';\nimport { ContentChange, SelectionChange, Range } from './models/editor.model';\nimport { LoaderService } from './loader.service';\n\n// Because quill uses `document` directly, we cannot `import` during SSR\n// instead, we load dynamically via `require('quill')` in `ngAfterViewInit()`\n// eslint-disable-next-line no-var\ndeclare var require: any;\n// eslint-disable-next-line no-var\ndeclare var Quill: any;\n// let Quill: any = window['Quill'];\n\nexport interface CustomOption {\n import: string;\n whitelist: any[];\n}\n\nconst getFormat = (format?: QuillFormat, configFormat?: QuillFormat): QuillFormat => {\n const passedFormat = format || configFormat;\n return passedFormat || 'html';\n};\n\n@Component({\n encapsulation: ViewEncapsulation.None,\n standalone: false,\n providers: [\n {\n multi: true,\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => QuillEditorComponent),\n },\n {\n multi: true,\n provide: NG_VALIDATORS,\n useExisting: forwardRef(() => QuillEditorComponent),\n },\n ],\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'quill-editor',\n template: `<ng-content select=\"[quill-editor-toolbar]\"></ng-content>`,\n})\nexport class QuillEditorComponent implements AfterViewInit, ControlValueAccessor, OnChanges, OnDestroy, Validator {\n quillEditor: any;\n editorElem: HTMLElement | undefined;\n content: any;\n protected loaded = false;\n\n @Input() id: string;\n @Input() format?: 'object' | 'html' | 'text' | 'json';\n @Input() theme?: string;\n @Input() modules?: QuillModules;\n @Input() debug?: 'warn' | 'log' | 'error' | false;\n @Input() placeholder?: string;\n @Input() maxLength?: number;\n @Input() minLength?: number;\n @Input() formats?: string[] | null;\n @Input() customToolbarPosition: 'top' | 'bottom' = 'top';\n @Input() styles: any = null;\n @Input() scrollingContainer?: HTMLElement | string | null;\n @Input() bounds?: HTMLElement | string;\n @Input() customOptions: CustomOption[] = [];\n @Input() trackChanges?: 'user' | 'all';\n @Input() hasImageFeature: boolean;\n\n // eslint-disable-next-line @angular-eslint/no-output-on-prefix\n @Output() onEditorCreated: EventEmitter<any> = new EventEmitter();\n // eslint-disable-next-line @angular-eslint/no-output-on-prefix\n @Output() onContentChanged: EventEmitter<ContentChange> = new EventEmitter();\n // eslint-disable-next-line @angular-eslint/no-output-on-prefix\n @Output() onSelectionChanged: EventEmitter<SelectionChange> = new EventEmitter();\n // eslint-disable-next-line @angular-eslint/no-output-on-prefix\n @Output() onFocus: EventEmitter<{\n editor: any;\n source: string;\n }> = new EventEmitter();\n // eslint-disable-next-line @angular-eslint/no-output-on-prefix\n @Output() onBlur: EventEmitter<{\n editor: any;\n source: string;\n }> = new EventEmitter();\n\n @Input({ transform: booleanAttribute }) readOnly?: boolean;\n @Input({ transform: booleanAttribute }) required = false;\n @Input({ transform: booleanAttribute }) sanitize = false;\n @Input({ transform: booleanAttribute }) strict = true;\n @Input({ transform: booleanAttribute }) preserveWhitespace = false;\n\n private disabled = false; // used to store initial value before ViewInit\n\n constructor(\n private elementRef: ElementRef,\n private domSanitizer: DomSanitizer,\n @Inject(DOCUMENT) private doc: any,\n // eslint-disable-next-line @typescript-eslint/ban-types\n @Inject(PLATFORM_ID) private platformId: object,\n private renderer: Renderer2,\n private zone: NgZone,\n @Inject(QUILL_CONFIG_TOKEN) private config: QuillConfig,\n private loader: LoaderService,\n ) {}\n\n // eslint-disable-next-line no-empty,no-empty-function,@typescript-eslint/no-empty-function, @typescript-eslint/explicit-function-return-type\n onModelChange(_modelValue?: any) {}\n // eslint-disable-next-line no-empty, no-empty-function, @typescript-eslint/no-empty-function, @typescript-eslint/explicit-function-return-type\n onModelTouched() {}\n\n @Input()\n valueGetter = (quillEditor: any, editorElement: HTMLElement): string | any => {\n let html: string | null = editorElement.querySelector('.ql-editor')?.innerHTML;\n if (html === '<p><br></p>' || html === '<div><br><div>') {\n html = null;\n }\n let modelValue = html;\n const format = getFormat(this.format, this.config.format);\n\n if (format === 'text') {\n modelValue = quillEditor.getText();\n } else if (format === 'object') {\n modelValue = quillEditor.getContents();\n } else if (format === 'json') {\n try {\n modelValue = JSON.stringify(quillEditor.getContents());\n } catch (e) {\n modelValue = quillEditor.getText();\n }\n }\n\n return modelValue;\n };\n\n @Input()\n valueSetter = (quillEditor: any, value: any): any => {\n const format = getFormat(this.format, this.config.format);\n if (format === 'html') {\n if (this.sanitize) {\n value = this.domSanitizer.sanitize(SecurityContext.HTML, value);\n }\n return quillEditor.clipboard.convert({ html: value });\n } else if (format === 'json') {\n try {\n return JSON.parse(value);\n } catch (e) {\n return [{ insert: value }];\n }\n }\n\n return value;\n };\n\n ngAfterViewInit(): void {\n // const loader = new LoaderService();\n this.loader.load().subscribe({\n complete: () => {\n // setup keyboard bindings from BetterTable if present\n const QuillBetterTable = window['quillBetterTable'];\n if(QuillBetterTable) {\n // check if already registered\n if(!window['Quill'].imports.hasOwnProperty('modules/better-table')) {\n window['Quill'].register({ 'modules/better-table': QuillBetterTable });\n }\n if(!this.config.modules.keyboard) {\n this.config.modules.keyboard = {\n bindings: QuillBetterTable?.keyboardBindings,\n };\n }\n }\n\n if (isPlatformServer(this.platformId)) {\n return;\n }\n if (!Quill) {\n // Quill = require('quill')\n Quill = window['Quill'];\n }\n this.overrideScrollBehavior(Quill);\n\n this.loaded = true;\n\n this.elementRef.nativeElement.insertAdjacentHTML(\n this.customToolbarPosition === 'top' ? 'beforeend' : 'afterbegin',\n this.preserveWhitespace ? '<pre quill-editor-element></pre>' : '<div quill-editor-element></div>'\n );\n\n this.editorElem = this.elementRef.nativeElement.querySelector('[quill-editor-element]');\n\n const toolbarElem = this.elementRef.nativeElement.querySelector('[quill-editor-toolbar]');\n let modules = this.modules || this.config.modules || defaultModules;\n if (modules.toolbar === undefined) {\n modules.toolbar = defaultModules.toolbar;\n }\n\n let placeholder = this.placeholder !== undefined ? this.placeholder : this.config.placeholder;\n if (placeholder === undefined) {\n placeholder = 'Insert text here ...';\n }\n\n if (toolbarElem) {\n // eslint-disable-next-line dot-notation,@typescript-eslint/dot-notation\n modules['toolbar'] = toolbarElem;\n }\n\n if (!this.hasImageFeature) {\n modules['uploader'] = { handler: () => false };\n } else {\n modules['uploader'] = { mimetypes: ['image/png', 'image/jpeg'] };\n }\n\n if (this.styles) {\n Object.keys(this.styles).forEach((key: string) => {\n this.renderer.setStyle(this.editorElem, key, this.styles[key]);\n });\n }\n\n this.customOptions.forEach((customOption) => {\n const newCustomOption = Quill.import(customOption.import);\n newCustomOption.whitelist = customOption.whitelist;\n Quill.register(newCustomOption, true);\n });\n\n let bounds = this.bounds && this.bounds === 'self' ? this.editorElem : this.bounds;\n if (!bounds) {\n bounds = this.config.bounds ? this.config.bounds : this.doc.body;\n }\n\n let debug = this.debug;\n if (!debug && debug !== false && this.config.debug) {\n debug = this.config.debug;\n }\n\n let readOnly = this.readOnly;\n if (!readOnly && this.readOnly !== false) {\n readOnly = this.config.readOnly !== undefined ? this.config.readOnly : false;\n }\n\n let scrollingContainer = this.scrollingContainer;\n if (!scrollingContainer && this.scrollingContainer !== null) {\n scrollingContainer =\n this.config.scrollingContainer === null || this.config.scrollingContainer ? this.config.scrollingContainer : null;\n }\n\n let formats = this.formats;\n if (!formats && formats === undefined) {\n formats = this.config.formats || this.config.formats === null ? this.config.formats : undefined;\n }\n Quill.formats = { ...Quill.formats, [this.id]: formats };\n\n if (formats && formats.indexOf('table') !== -1) {\n modules = {\n ...modules,\n 'better-table': false,\n }\n }\n\n this.quillEditor = new Quill(this.editorElem, {\n bounds,\n debug,\n formats,\n modules,\n placeholder,\n readOnly,\n scrollingContainer,\n strict: this.strict,\n theme: this.theme || (this.config.theme ? this.config.theme : 'snow'),\n });\n this.quillEditor.container.firstChild.id = this.id;\n\n if (this.content) {\n const format = getFormat(this.format, this.config.format);\n if (format === 'object') {\n this.quillEditor.setContents(this.content, 'silent');\n } else if (format === 'text') {\n this.quillEditor.setText(this.content, 'silent');\n } else if (format === 'json') {\n try {\n this.quillEditor.setContents(JSON.parse(this.content), 'silent');\n } catch (e) {\n this.quillEditor.setText(this.content, 'silent');\n }\n } else {\n if (this.sanitize) {\n this.content = this.domSanitizer.sanitize(SecurityContext.HTML, this.content);\n }\n const contents = this.quillEditor.clipboard.convert(this.content);\n this.quillEditor.setContents(contents, 'silent');\n }\n\n this.quillEditor.history.clear();\n }\n\n // initialize disabled status based on this.disabled as default value\n this.setDisabledState();\n\n this.onEditorCreated.emit(this.quillEditor);\n\n // mark model as touched if editor lost focus\n this.quillEditor.on('selection-change', this.selectionChangeHandler);\n\n // update model if text changes\n this.quillEditor.on('text-change', this.textChangeHandler);\n }\n });\n }\n\n selectionChangeHandler = (range: Range | null, oldRange: Range | null, source: string): void => {\n this.zone.run(() => {\n if (range === null) {\n this.onBlur.emit({\n editor: this.quillEditor,\n source,\n });\n } else if (oldRange === null) {\n this.onFocus.emit({\n editor: this.quillEditor,\n source,\n });\n }\n\n this.onSelectionChanged.emit({\n editor: this.quillEditor,\n oldRange,\n range,\n source,\n });\n\n if (!range && this.onModelTouched) {\n this.onModelTouched();\n }\n });\n };\n\n textChangeHandler = (delta: any, oldDelta: any, source: string): void => {\n // only emit changes emitted by user interactions\n\n const text = this.quillEditor.getText();\n const content = this.quillEditor.getContents();\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n let html: string | null = this.editorElem!.querySelector('.ql-editor')!.innerHTML;\n if (html === '<p><br></p>' || html === '<div><br><div>') {\n html = null;\n }\n\n this.zone.run(() => {\n const trackChanges = this.trackChanges || this.config.trackChanges;\n if ((source === Quill.sources.USER || (trackChanges && trackChanges === 'all')) && this.onModelChange) {\n this.onModelChange(\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n this.valueGetter(this.quillEditor, this.editorElem!)\n );\n }\n\n this.onContentChanged.emit({\n content,\n delta,\n editor: this.quillEditor,\n html,\n oldDelta,\n source,\n text,\n });\n });\n };\n\n ngOnDestroy(): void {\n if (this.quillEditor) {\n this.quillEditor.off('selection-change', this.selectionChangeHandler);\n this.quillEditor.off('text-change', this.textChangeHandler);\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (!this.quillEditor) {\n return;\n }\n if (changes.id) {\n this.quillEditor.container.firstChild.id = changes.id.currentValue;\n Quill.formats = { ...Quill.formats, [this.id]: this.formats };\n }\n if (changes['readOnly']) {\n this.quillEditor.enable(!changes['readOnly'].currentValue);\n }\n if (changes['placeholder']) {\n this.quillEditor.root.dataset.placeholder = changes['placeholder'].currentValue;\n }\n if (changes['styles']) {\n const currentStyling = changes['styles'].currentValue;\n const previousStyling = changes['styles'].previousValue;\n\n if (previousStyling) {\n Object.keys(previousStyling).forEach((key: string) => {\n this.renderer.removeStyle(this.editorElem, key);\n });\n }\n if (currentStyling) {\n Object.keys(currentStyling).forEach((key: string) => {\n this.renderer.setStyle(this.editorElem, key, this.styles[key]);\n });\n }\n }\n if (changes['formats']) {\n const currentFormats = changes['formats'].currentValue;\n Quill.formats = { ...Quill.formats, [this.id]: currentFormats };\n }\n }\n\n writeValue(currentValue: any): void {\n this.content = currentValue;\n const format = getFormat(this.format, this.config.format);\n\n if (this.quillEditor) {\n if (currentValue) {\n if (format === 'text') {\n this.quillEditor.setText(currentValue);\n } else {\n this.quillEditor.setContents(this.valueSetter(this.quillEditor, this.content));\n }\n return;\n }\n this.quillEditor.setText('');\n }\n }\n\n setDisabledState(isDisabled: boolean = this.disabled): void {\n // store initial value to set appropriate disabled status after ViewInit\n this.disabled = isDisabled;\n if (this.quillEditor) {\n if (isDisabled) {\n this.quillEditor.disable();\n this.renderer.setAttribute(this.elementRef.nativeElement, 'disabled', 'disabled');\n } else {\n if (!this.readOnly) {\n this.quillEditor.enable();\n }\n this.renderer.removeAttribute(this.elementRef.nativeElement, 'disabled');\n }\n }\n }\n\n registerOnChange(fn: (modelValue: any) => void): void {\n this.onModelChange = fn;\n }\n\n registerOnTouched(fn: () => void): void {\n this.onModelTouched = fn;\n }\n\n validate(): any {\n if (!this.quillEditor) {\n return null;\n }\n\n const err: {\n minLengthError?: {\n given: number;\n minLength: number;\n };\n maxLengthError?: {\n given: number;\n maxLength: number;\n };\n requiredError?: { empty: boolean };\n } = {};\n let valid = true;\n\n const textLength = this.quillEditor.getText().trim().length;\n\n if (this.minLength && textLength && textLength < this.minLength) {\n err.minLengthError = {\n given: textLength,\n minLength: this.minLength,\n };\n\n valid = false;\n }\n\n if (this.maxLength && textLength > this.maxLength) {\n err.maxLengthError = {\n given: textLength,\n maxLength: this.maxLength,\n };\n\n valid = false;\n }\n\n if (this.required && !textLength) {\n err.requiredError = {\n empty: true,\n };\n\n valid = false;\n }\n\n return valid ? null : err;\n }\n\n /**\n * Override the default Quill scroll behavior to take into account the formats array and skip non-found ones. Then\n * registers the plugin to the Quill editor.\n *\n * @param QuillInstance The Quill class (not the instance)\n * @private\n */\n private overrideScrollBehavior(QuillInstance: any): void {\n // the Built-in Scroll Class is not exported, so we need to import it\n const BuiltinScroll = QuillInstance.import('blots/scroll');\n /**\n * Override the default Quill scroll behavior to take into account the formats array and skip non-found ones.\n */\n class Scroll extends BuiltinScroll {\n formatAt(index: number, length: number, format: string, value: any): void {\n const elementId = this.domNode.id;\n const instanceFormats = QuillInstance.formats[elementId];\n // checks the formats array to see if the format is blacklisted\n if (instanceFormats && instanceFormats.find((f) => f === format)) {\n return;\n }\n // continue with default behavior\n super.formatAt(index, length, format, value);\n }\n }\n /** register the Scroll override */\n QuillInstance.register('blots/scroll', Scroll, true);\n }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { defaultModules } from './quill-defaults';\nimport { QuillEditorComponent } from './quill-editor.component';\nimport { QUILL_CONFIG_TOKEN, QuillConfig } from './quill-editor.interfaces';\nimport { CommonModule } from \"@angular/common\";\n\n// TODO: integrate that module and all related code with the eui-editor module.\n// Remove this sub-entry and move all the code to the eui-editor.\n\n/**\n * @deprecated please don't use it. It will be removed\n */\n@NgModule({\n declarations: [QuillEditorComponent],\n exports: [QuillEditorComponent],\n imports: [CommonModule],\n providers: [\n {\n provide: QUILL_CONFIG_TOKEN,\n useValue: { modules: defaultModules },\n },\n ],\n})\nexport class QuillModule {\n static forRoot(config?: QuillConfig): ModuleWithProviders<QuillModule> {\n return {\n ngModule: QuillModule,\n providers: [\n {\n provide: QUILL_CONFIG_TOKEN,\n // eslint-disable-next-line prefer-arrow/prefer-arrow-functions\n useValue: config || { modules: defaultModules },\n },\n ],\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.LoaderService"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eui/components",
3
- "version": "19.1.1-snapshot-1740396995331",
3
+ "version": "19.1.1-snapshot-1740477848147",
4
4
  "tag": "snapshot",
5
5
  "description": "eUI components package",
6
6
  "homepage": "https://eui.ecdevops.eu",
@@ -10,8 +10,8 @@
10
10
  "url": "https://citnet.tech.ec.europa.eu/CITnet/stash/projects/CSDR/repos/eui/browse/packages/components"
11
11
  },
12
12
  "peerDependencies": {
13
- "@eui/core": "19.1.1-snapshot-1740396995331",
14
- "@eui/base": "19.1.1-snapshot-1740396995331",
13
+ "@eui/core": "19.1.1-snapshot-1740477848147",
14
+ "@eui/base": "19.1.1-snapshot-1740477848147",
15
15
  "@angular/common": "^18.0.0 || ^19.0.0",
16
16
  "@angular/core": "^18.0.0 || ^19.0.0",
17
17
  "@angular/forms": "^18.0.0 || ^19.0.0",