truly-ui
Version:
Web Components for Desktop Applications.
147 lines • 5.06 kB
TypeScript
import { AfterContentInit, ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, Renderer2, SimpleChanges, TemplateRef } from '@angular/core';
import { ToolbarConfig } from './interfaces/toolbar-config';
import { I18nService } from '../i18n/i18n.service';
import { ControlValueAccessor, NgControl } from '@angular/forms';
import { DomSanitizer, SafeHtml } from '@angular/platform-browser';
import { EditorService } from './services/editor.service';
import { FieldContent } from './interfaces/field-content';
import * as i0 from "@angular/core";
export declare class TlEditor implements ControlValueAccessor, AfterContentInit, OnChanges {
private i18n;
private renderer;
private editorService;
private sanitizer;
private cd;
ngControl: NgControl;
content: SafeHtml;
color: string;
tags: any[];
fields: FieldContent[];
toolbarConfig: ToolbarConfig;
height: string;
labelPlacement: string;
labelSize: string;
label: string;
editable: boolean;
disabled: boolean;
contentEditor: ElementRef;
linkBox: any;
wrapper: any;
fieldTemplate: TemplateRef<any>;
saveContent: EventEmitter<any>;
fontCollection: any[];
fontSizeCollection: any[];
font: string;
fontSize: string;
toggleLink: boolean;
toggleImage: boolean;
saved: boolean;
descriptionLink: string;
linkItself: string;
colorSelected: string;
anchorNodeCursor: any;
cursorHighlight: boolean;
selectedContent: boolean;
cursorSelection: any;
activeTools: {
bold: boolean;
italic: boolean;
underline: boolean;
listUnordered: boolean;
listOrdered: boolean;
alignLeft: boolean;
alignCenter: boolean;
alignRight: boolean;
alignJustify: boolean;
blockQuote: boolean;
};
image: {
imageUrl: string;
};
selection: {
start: number;
end: number;
baseNode: any;
extentNode: any;
};
private interval;
private listenerRegistered;
private subscription;
labelAddField: string;
private onChange;
private onTouched;
constructor(i18n: I18nService, renderer: Renderer2, editorService: EditorService, sanitizer: DomSanitizer, cd: ChangeDetectorRef, ngControl: NgControl);
get control(): import("@angular/forms").AbstractControl<any, any>;
setControl(): void;
ngAfterContentInit(): void;
handleFieldsPropagation(): void;
alignContent(align: any): void;
setBold(): void;
setQuote(): void;
setItalic(): void;
setUnorderedList(): void;
setOrderedList(): void;
setImage($event: any): void;
setDescriptionLink(): void;
addField(idField: any): void;
addTag(value: string): void;
setLink($event: any): void;
setUnderline(): void;
setHighlight(): void;
onChangeColor($event: any): void;
onChangeFontSize($event: any): void;
onChangeFont($event: any): void;
onMouseUp(): void;
onKeyDownSave(event: any): boolean;
toggleLinkBox(): void;
toggleImageBox(): void;
save(): void;
setCursorSelection(): void;
private showSavedMessage;
private handleActiveTools;
private handleFontName;
private hasFontFace;
private hasFontSize;
private setFontNodeSelected;
private setDefaultFont;
private setFontSizeNodeSelected;
private setDefaultFontSize;
setAnchorNode(): void;
private handleNoSelection;
private hasSelection;
private handleFontSize;
private handleAlignLeft;
private handleAlignCenter;
private handleAlignRight;
private handleAlignJustify;
private handleListOrdered;
private handleListUnordered;
private handleColorParent;
private setColorWithColorElement;
private handleClosestBold;
private handleClosestUnderline;
private handleClosestItalic;
private handleBlockQuote;
private hasStyleParentElement;
private isClosestParentElement;
private preventPropagation;
private createFieldText;
private createHashTag;
private createImageElement;
private createElementLink;
private handleAddElementRange;
private recoverSelection;
private recoverCursorPosition;
private resetCursor;
setContentFocus(): void;
clearContent(): void;
writeValue(value: any): void;
registerOnChange(fn: any): void;
registerOnTouched(fn: any): void;
touch(): void;
change(): void;
ngOnChanges(data: SimpleChanges): void;
static ɵfac: i0.ɵɵFactoryDeclaration<TlEditor, [null, null, null, null, null, { optional: true; self: true; }]>;
static ɵcmp: i0.ɵɵComponentDeclaration<TlEditor, "tl-editor", never, { "content": "content"; "color": "color"; "tags": "tags"; "fields": "fields"; "toolbarConfig": "toolbarConfig"; "height": "height"; "labelPlacement": "labelPlacement"; "labelSize": "labelSize"; "label": "label"; "editable": "editable"; "disabled": "disabled"; }, { "saveContent": "saveContent"; }, never, never, false, never>;
}
//# sourceMappingURL=editor.d.ts.map