123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- /**
- * @description 编辑器 class
- * @author wangfupeng
- */
- import $, { DomElement, DomElementSelector } from '../utils/dom-core';
- import { ConfigType } from '../config';
- import SelectionAndRangeAPI from './selection';
- import CommandAPI from './command';
- import Text from '../text/index';
- import Menus from '../menus/index';
- import ZIndex from './z-index';
- import Change from './change/index';
- import History from './history/index';
- import SelectionChange from './selection-change';
- import { RegisterOptions, pluginsListType } from '../plugins';
- import { MenuListType } from '../menus/menu-list';
- import BtnMenu from '../menus/menu-constructors/BtnMenu';
- import DropList from '../menus/menu-constructors/DropList';
- import DropListMenu from '../menus/menu-constructors/DropListMenu';
- import Panel from '../menus/menu-constructors/Panel';
- import PanelMenu from '../menus/menu-constructors/PanelMenu';
- import Tooltip from '../menus/menu-constructors/Tooltip';
- declare class Editor {
- static $: typeof $;
- static BtnMenu: typeof BtnMenu;
- static DropList: typeof DropList;
- static DropListMenu: typeof DropListMenu;
- static Panel: typeof Panel;
- static PanelMenu: typeof PanelMenu;
- static Tooltip: typeof Tooltip;
- static globalCustomMenuConstructorList: MenuListType;
- static globalPluginsFunctionList: pluginsListType;
- pluginsFunctionList: pluginsListType;
- id: string;
- toolbarSelector: DomElementSelector;
- textSelector?: DomElementSelector;
- config: ConfigType;
- $toolbarElem: DomElement;
- $textContainerElem: DomElement;
- $textElem: DomElement;
- toolbarElemId: string;
- textElemId: string;
- isFocus: boolean;
- isComposing: boolean;
- isCompatibleMode: boolean;
- selection: SelectionAndRangeAPI;
- cmd: CommandAPI;
- txt: Text;
- menus: Menus;
- i18next: any;
- highlight: any;
- zIndex: ZIndex;
- change: Change;
- history: History;
- isEnable: Boolean;
- onSelectionChange: SelectionChange;
- private beforeDestroyHooks;
- /** 禁用api */
- disable: Function;
- /** 启用api */
- enable: Function;
- /**
- * 构造函数
- * @param toolbarSelector 工具栏 DOM selector
- * @param textSelector 文本区域 DOM selector
- */
- constructor(toolbarSelector: DomElementSelector, textSelector?: DomElementSelector);
- /**
- * 初始化选区
- * @param newLine 新建一行
- */
- initSelection(newLine?: boolean): void;
- /**
- * 创建编辑器实例
- */
- create(): void;
- /**
- * 提供给用户添加销毁前的钩子函数
- * @param fn 钩子函数
- */
- beforeDestroy(fn: Function): Editor;
- /**
- * 销毁当前编辑器实例
- */
- destroy(): void;
- /**
- * 将编辑器设置为全屏
- */
- fullScreen(): void;
- /**
- * 将编辑器退出全屏
- */
- unFullScreen(): void;
- /**
- * 滚动到指定标题锚点
- * @param id 标题锚点id
- */
- scrollToHead(id: string): void;
- /**
- * 自定义添加菜单
- * @param key 菜单 key
- * @param Menu 菜单构造函数
- */
- static registerMenu(key: string, Menu: any): void;
- /**
- * 自定义添加插件
- * @param { string } name 插件的名称
- * @param { RegisterOptions } options 插件的选项
- */
- registerPlugin(name: string, options: RegisterOptions): void;
- /**
- * 自定义添加插件
- * @param { string } name 插件的名称
- * @param { RegisterOptions } options 插件的选项
- */
- static registerPlugin(name: string, options: RegisterOptions): void;
- }
- export default Editor;
|