UNPKG

devexpress-richedit

Version:

DevExpress Rich Text Editor is an advanced word-processing tool designed for working with rich text documents.

78 lines (77 loc) 3.75 kB
import { IMeasurer } from '../../../measurer/measurer'; import { IModelManager } from '../../../model-manager'; import { FontInfoCache } from '../../../model/caches/hashed-caches/font-info-cache'; import { SubDocument, SubDocumentPosition } from '../../../model/sub-document'; import { MaskedCharacterPropertiesBundle } from '../../../rich-utils/properties-bundle'; import { Size } from '@devexpress/utils/lib/geometry/size'; import { FixedInterval } from '@devexpress/utils/lib/intervals/fixed'; import { RunInfo, ImportedParagraphListInfo } from './containers/runs'; import { TableInfo } from './containers/tables'; import { HtmlTagImporterBase } from './importers/base'; import { LoadFontInfo } from './load-font-info'; import { HtmlImporterMaskedCharacterProperties } from './utils/character-properties-utils'; import { ParagraphListPropertiesUtils } from './utils/paragraph-list-properties-utils'; import { FormatImagesImporter } from '../../utils/images-import'; export type TypeOfTagImporterConstructor = new (importer: HtmlImporter) => HtmlTagImporterBase; export declare class LevelInfo { element: HTMLElement; childElements: HTMLElement[]; tagImporter: HtmlTagImporterBase; allowInsertRuns: boolean; constructor(element: HTMLElement, childElements: HTMLElement[], allowInsertRuns: boolean); initTagImporter(importer: HtmlImporter): this; static getElementTag(elem: HTMLElement | ChildNode): string; } export declare class HtmlImportData { runsInfo: RunInfo[]; tablesInfo: TableInfo[]; constructor(runsInfo: RunInfo[], tablesInfo: TableInfo[]); } export declare class HtmlImporter { currPosition: number; htmlImporterMaskedCharacterProperties: HtmlImporterMaskedCharacterProperties; paragraphListPropertiesUtils: ParagraphListPropertiesUtils; private importedRunsInfo; importedTablesInfo: TableInfo[]; loadFontInfos: LoadFontInfo[]; tempFontInfoCache: FontInfoCache; get currElement(): HTMLElement; get currElementChildren(): HTMLElement[]; levelInfo: LevelInfo[]; get prevLevelInfo(): LevelInfo; get currLevelInfo(): LevelInfo; get currListItemLevelInfo(): LevelInfo | null; fieldsId: number; prevRunIsParagraph: boolean; listIndex: number; listInfos: ImportedParagraphListInfo[]; get currListInfo(): ImportedParagraphListInfo; importStarted: boolean; modelManager: IModelManager; private subDocPosition; get subDocument(): SubDocument; charPropsBundle: MaskedCharacterPropertiesBundle; measurer: IMeasurer; tagImporters: Record<string, TypeOfTagImporterConstructor>; private static importers; private formatImagesImporter?; constructor(modelManager: IModelManager, measurer: IMeasurer, subDocPosition: SubDocumentPosition, initElements: HTMLElement[], charPropsBundle: MaskedCharacterPropertiesBundle, formatImagesImporter?: FormatImagesImporter); import(): FixedInterval; private convertChildElements; private getSortedTables; private convertElement; private putDownParentPropertiesToChild; private getStyles; addRun(run: RunInfo, forceAdd?: boolean): void; addParagraphRun(element: HTMLElement, listInfo?: ImportedParagraphListInfo, isTableCellTag?: boolean): void; addCurrLevelParagraphRunIfNeeded(): void; removeAllTrailingLineBreaks(): void; getLastImportedRun(): RunInfo; columnSize(): Size; private registerImageRuns; private findIndexImportedInlinePictureRunInfo; static convertHtml(html: string): string; private static extractBodyContent; private static MapMissTablePropertiesByTagNames; private static MapShorthandProperty; }