@joniras/ngx-editor2
Version:
WYSIWYG Editor for Angular 8+
135 lines (134 loc) • 5.93 kB
TypeScript
import { EventEmitter, OnInit } from '@angular/core';
import { FormBuilder, FormGroup } from '@angular/forms';
import { PopoverConfig } from 'ngx-bootstrap/popover';
import { CommandExecutorService } from '../common/services/command-executor.service';
import { MessageService } from '../common/services/message.service';
export declare class NgxTextEditorToolbarComponent implements OnInit {
private _popOverConfig;
private _formBuilder;
private _messageService;
private _commandExecutorService;
/** holds values of the insert link form */
urlForm: FormGroup;
/** holds values of the insert image form */
imageForm: FormGroup;
/** holds values of the insert video form */
videoForm: FormGroup;
/** set to false when image is being uploaded */
uploadComplete: boolean;
/** upload percentage */
updloadPercentage: number;
/** set to true when the image is being uploaded */
isUploading: boolean;
/** which tab to active for color insertion */
selectedColorTab: string;
/** font family name */
fontName: string;
/** font size */
fontSize: string;
/** hex color code */
hexColor: string;
/** show/hide image uploader */
isImageUploader: boolean;
wasH1Pressed: boolean;
/** Icons for the Toolbar */
icons: {
heading: import("@fortawesome/fontawesome-common-types").IconDefinition;
bold: import("@fortawesome/fontawesome-common-types").IconDefinition;
italic: import("@fortawesome/fontawesome-common-types").IconDefinition;
underline: import("@fortawesome/fontawesome-common-types").IconDefinition;
strikethrough: import("@fortawesome/fontawesome-common-types").IconDefinition;
superscript: import("@fortawesome/fontawesome-common-types").IconDefinition;
subscript: import("@fortawesome/fontawesome-common-types").IconDefinition;
font: import("@fortawesome/fontawesome-common-types").IconDefinition;
textheight: import("@fortawesome/fontawesome-common-types").IconDefinition;
tint: import("@fortawesome/fontawesome-common-types").IconDefinition;
alignleft: import("@fortawesome/fontawesome-common-types").IconDefinition;
aligncenter: import("@fortawesome/fontawesome-common-types").IconDefinition;
alignright: import("@fortawesome/fontawesome-common-types").IconDefinition;
alignjustify: import("@fortawesome/fontawesome-common-types").IconDefinition;
indent: import("@fortawesome/fontawesome-common-types").IconDefinition;
outdent: import("@fortawesome/fontawesome-common-types").IconDefinition;
scissors: import("@fortawesome/fontawesome-common-types").IconDefinition;
fileso: import("@fortawesome/fontawesome-common-types").IconDefinition;
trash: import("@fortawesome/fontawesome-common-types").IconDefinition;
eraser: import("@fortawesome/fontawesome-common-types").IconDefinition;
undo: import("@fortawesome/fontawesome-common-types").IconDefinition;
repeat: import("@fortawesome/fontawesome-common-types").IconDefinition;
paragraph: import("@fortawesome/fontawesome-common-types").IconDefinition;
quoteleft: import("@fortawesome/fontawesome-common-types").IconDefinition;
quoteright: import("@fortawesome/fontawesome-common-types").IconDefinition;
minus: import("@fortawesome/fontawesome-common-types").IconDefinition;
listul: import("@fortawesome/fontawesome-common-types").IconDefinition;
listol: import("@fortawesome/fontawesome-common-types").IconDefinition;
link: import("@fortawesome/fontawesome-common-types").IconDefinition;
chainbroken: import("@fortawesome/fontawesome-common-types").IconDefinition;
pictureo: import("@fortawesome/fontawesome-common-types").IconDefinition;
youtubeplay: import("@fortawesome/fontawesome-common-types").IconDefinition;
upload: import("@fortawesome/fontawesome-common-types").IconDefinition;
};
/**
* Editor configuration
*/
config: any;
urlPopover: any;
imagePopover: any;
videoPopover: any;
fontSizePopover: any;
colorPopover: any;
/**
* Emits an event when a toolbar button is clicked
*/
execute: EventEmitter<string>;
/**
* Emits an event then an image is selected
*/
uploadImage: EventEmitter<HTMLInputElement>;
constructor(_popOverConfig: PopoverConfig, _formBuilder: FormBuilder, _messageService: MessageService, _commandExecutorService: CommandExecutorService);
/**
* enable or diable toolbar based on configuration
*
* @param value name of the toolbar buttons
*/
canEnableToolbarOptions(value: any): boolean;
/**
* triggers command from the toolbar to be executed and emits an event
*
* @param command name of the command to be executed
*/
triggerCommand(command: string): void;
/**
* create URL insert form
*/
buildUrlForm(): void;
/**
* inserts link in the editor
*/
insertLink(): void;
/**
* create insert image form
*/
buildImageForm(): void;
/**
* create insert image form
*/
buildVideoForm(): void;
/**
* Executed when file is selected
*
* @param e onChange event
*/
onFileChange(e: any): void;
/** insert image in the editor */
insertImage(): void;
/** insert image in the editor */
insertVideo(): void;
/** inser text/background color */
insertColor(color: string, where: string): void;
/** set font size */
setFontSize(fontSize: string): void;
/** set font Name/family */
setFontName(fontName: string): void;
ngOnInit(): void;
toggleHeading(heading: string): void;
}