UNPKG

devexpress-richedit

Version:

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

147 lines (146 loc) 5.38 kB
import { Store } from 'devextreme/data/abstract_store'; import { CustomStoreOptions } from 'devextreme/data/custom_store'; import DataSource, { DataSourceOptions } from 'devextreme/data/data_source'; import { RichEditUnit } from '../common/utils/unit-converter'; import { IRibbonItemOptions } from './ribbon/i-ribbon-item-options'; import { IRibbonContextItemsCategory } from './ribbon/ribbon'; import { IRichEditFontsSettings } from '../common/model/options/fonts'; import { DocumentFormatApi } from './model-api/formats/enum'; import { ContextMenuItem } from './public/context-menu/item'; import { EventArgs } from './public/events'; import { EventHandlers } from './public/options'; import { Ribbon } from './public/ribbon/ribbon'; import { PrintMode, RichEdit, ViewType } from './public/rich-edit'; import { IInterval } from './model-api/interval'; import { SubDocumentClientApi } from './api/sub-document'; export type InnerEventHandlers = EventHandlers & { init?: string | ((s: RichEdit, e: EventArgs) => void); }; export interface IRichEditSettings { width?: string; height?: string; nonce?: string; readOnly?: boolean; unit?: RichEditUnit; exportUrl?: string; autoCorrect?: IRichEditAutocorrectSettings; bookmarks?: IRichEditBookmarksSettings; authentication?: IRichEditAuthenticationSettings; rangePermissions?: IRichEditRangePermissionsSettings; fields?: IRichEditFieldsSettings; fonts?: IRichEditFontsSettings; printing?: IRichEditPrintingSettings; ribbon?: IRichEditRibbonSettings | Ribbon; view?: IRichEditViewSettings; pdf?: IRichEditPdfSettings; search?: IRichEditSearchSettings; confirmOnLosingChanges?: IRichEditConfirmOnLosingChangesSettings; mailMerge?: IRichEditMailMergeSettings; contextMenu?: IContextMenuInnerSettings; events?: InnerEventHandlers; spellCheck?: ISpellCheck; document?: IInitialDocumentSettings; } export interface IInitialDocumentSettings { content?: File | Blob | ArrayBuffer | string; name?: string; format?: DocumentFormatApi; onLoaded?: string | ((importSuccess: boolean) => void); } export interface IRichEditConfirmOnLosingChangesSettings { enabled?: boolean; message?: string; } export interface IRichEditViewSettings { viewType?: ViewType; simpleViewSettings?: IRichEditSimpleViewSettings; printLayoutViewSettings?: IRichEditPrintLayoutViewSettings; } export interface IRichEditSimpleViewSettings { paddings?: IPaddings; fixedWidth?: number; } export interface IRichEditPrintLayoutViewSettings { showHorizontalRuler?: boolean; } export interface IRichEditRibbonSettings { visible?: boolean; activeTabIndex?: number; tabs?: IRibbonItemOptions[]; contextTabCategories?: IRibbonContextItemsCategory[]; } export interface IRichEditPrintingSettings { mode?: PrintMode; closePrintDialogWithHtmlPreview?: boolean; } export interface IRichEditFieldsSettings { updateFieldsBeforePrint?: boolean; updateFieldsOnPaste?: boolean; defaultTimeFormat?: string; defaultDateFormat?: string; openHyperlinkOnClick?: boolean; keepHyperlinkResultForInvalidReference?: boolean; allowedHyperlinkUriSchemes?: string[]; createHyperlinkTooltip?: (hyperlinkTooltip: string, hint: string) => string; } export interface IRichEditRangePermissionsSettings { bracketsColor?: string; highlightColor?: string; highlightRanges?: boolean; showBrackets?: boolean; } export interface IRichEditAuthenticationSettings { userName?: string; group?: string; } export interface IRichEditAutocorrectSettings { correctTwoInitialCapitals?: boolean; detectUrls?: boolean; enableAutomaticNumbering?: boolean; replaceTextAsYouType?: boolean; caseSensitiveReplacement?: boolean; replaceInfoCollection?: IRichEditAutocorrectCollectionItem[]; } export interface IRichEditAutocorrectCollectionItem { replace: string; with: string; } export interface IRichEditBookmarksSettings { color?: string; visibility?: boolean; } export interface IRichEditMailMergeSettings { viewMergedData?: boolean; activeRecord?: number; dataSource?: any[] | string | CustomStoreOptions | DataSourceOptions | Store | DataSource; } export interface IPaddings { left?: number; right?: number; top?: number; bottom?: number; } export interface IRichEditPdfSettings { pdfDocument?: new (options?: { autoFirstPage: boolean; defaultFont: any; }) => any; blobStream?: new () => any; exportUrl?: string; defaultFontName?: string; pdfKitScriptUrl?: string; convertImageToCompatibleFormat?: (base64: string) => Promise<string>; } export interface IRichEditSearchSettings { filterInterval?: (subDocument: SubDocumentClientApi, interval: IInterval) => boolean; } export interface ISpellCheck { enabled?: boolean; suggestionCount?: number; checkWordSpelling?: ((word: string, callback: (isCorrect: boolean, suggestions: string[]) => void) => void) | string; addWordToDictionary?: ((word: string) => void) | string; } export interface IContextMenuInnerSettings { enabled?: boolean; items?: ContextMenuItem[]; }