@ones-editor/editor 2.1.1 → 2.1.2-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (207) hide show
  1. package/@ones-editor/block-menu/src/block-menu-button/menu-button/index.d.ts +1 -1
  2. package/@ones-editor/block-padding/src/index.d.ts +1 -1
  3. package/@ones-editor/callout-block/src/callout-block/callout-quick-menu-item-filter.d.ts +3 -4
  4. package/@ones-editor/callout-block/src/index.d.ts +1 -0
  5. package/@ones-editor/comments/src/block-hook/block-comment-hook.d.ts +10 -0
  6. package/@ones-editor/comments/src/comments-helper/old-version-comment.d.ts +16 -0
  7. package/@ones-editor/comments/src/index.d.ts +5 -1
  8. package/@ones-editor/comments/src/text-comments/comments-command-provider.d.ts +4 -3
  9. package/@ones-editor/core/src/core/blocks/common/block-properties.d.ts +9 -9
  10. package/@ones-editor/core/src/core/blocks/common/execute-block-command.d.ts +2 -2
  11. package/@ones-editor/core/src/core/blocks/complex-blocks/child-blocks.d.ts +2 -1
  12. package/@ones-editor/core/src/core/blocks/complex-blocks/complex-block-helper.d.ts +3 -5
  13. package/@ones-editor/core/src/core/blocks/text-blocks/base/child.d.ts +1 -7
  14. package/@ones-editor/core/src/core/blocks/text-blocks/base/line-breaks.d.ts +1 -2
  15. package/@ones-editor/core/src/core/blocks/text-blocks/base/range.d.ts +1 -2
  16. package/@ones-editor/core/src/core/blocks/text-blocks/base/text-offset.d.ts +1 -2
  17. package/@ones-editor/core/src/core/command-providers/abstract-providers.d.ts +25 -0
  18. package/@ones-editor/core/src/core/command-providers/block-attributes.d.ts +16 -0
  19. package/@ones-editor/core/src/core/command-providers/commands/index.d.ts +2 -0
  20. package/@ones-editor/core/src/core/command-providers/commands/inject-source.d.ts +3 -0
  21. package/@ones-editor/core/src/core/command-providers/commands/merge-commands.d.ts +4 -0
  22. package/@ones-editor/core/src/core/command-providers/commands/range-commands.d.ts +2 -5
  23. package/@ones-editor/core/src/core/command-providers/editor-command-providers.d.ts +5 -14
  24. package/@ones-editor/core/src/core/command-providers/index.d.ts +3 -1
  25. package/@ones-editor/core/src/core/composition/editor-input.d.ts +1 -1
  26. package/@ones-editor/core/src/core/containers/root-container.d.ts +3 -2
  27. package/@ones-editor/core/src/core/doc/doc.d.ts +3 -0
  28. package/@ones-editor/core/src/core/doc/rich-text/text-style.d.ts +2 -0
  29. package/@ones-editor/core/src/core/editor/actions/clear-selected-contents.d.ts +2 -2
  30. package/@ones-editor/core/src/core/editor/editor-dom/editor-dom.d.ts +1 -0
  31. package/@ones-editor/core/src/core/editor/index.d.ts +1 -1
  32. package/@ones-editor/core/src/core/insertions/editor-insertions.d.ts +1 -0
  33. package/@ones-editor/core/src/core/selection/actions/index.d.ts +2 -1
  34. package/@ones-editor/core/src/core/selection/adjust-selection-pos.d.ts +5 -1
  35. package/@ones-editor/core/src/core/selection/index.d.ts +1 -0
  36. package/@ones-editor/core/src/core/selection/select-handler.d.ts +3 -3
  37. package/@ones-editor/core/src/core/types.d.ts +45 -28
  38. package/@ones-editor/core/src/helper/hovering-block.d.ts +3 -4
  39. package/@ones-editor/core/src/utils/animate-scroll.d.ts +2 -0
  40. package/@ones-editor/core/src/utils/dom.d.ts +4 -1
  41. package/@ones-editor/core/src/utils/drag-drop.d.ts +8 -3
  42. package/@ones-editor/embed-block-helper/src/block-properties/embed-block-properties.d.ts +6 -5
  43. package/@ones-editor/excalidraw/package.json +4 -0
  44. package/@ones-editor/file/src/locale/en-us.d.ts +1 -0
  45. package/@ones-editor/file/src/locale/ja-jp.d.ts +1 -0
  46. package/@ones-editor/file/src/locale/zh-cn.d.ts +1 -0
  47. package/@ones-editor/graph-embed/src/helper/graph-block-commands.d.ts +5 -19
  48. package/@ones-editor/html-to-doc/src/html-to-doc/index.d.ts +2 -0
  49. package/@ones-editor/html-to-doc/src/html-to-doc/normal-html/html-to-doc.d.ts +4 -0
  50. package/@ones-editor/image-embed/src/hovering-toolbar/index.d.ts +1 -1
  51. package/@ones-editor/image-embed/src/splitter-resizer/index.d.ts +3 -3
  52. package/@ones-editor/input-handlers/src/i18n/en-us.d.ts +1 -0
  53. package/@ones-editor/input-handlers/src/i18n/ja-jp.d.ts +1 -0
  54. package/@ones-editor/input-handlers/src/i18n/zh-cn.d.ts +1 -0
  55. package/@ones-editor/layout-block/src/command-filter.d.ts +6 -0
  56. package/@ones-editor/layout-block/src/index.d.ts +1 -0
  57. package/@ones-editor/list-block/src/index.d.ts +2 -1
  58. package/@ones-editor/media-embed/src/core/hovering-toolbar/index.d.ts +3 -10
  59. package/@ones-editor/media-embed/src/utils/dom.d.ts +2 -0
  60. package/@ones-editor/mention/src/locale/en-us.d.ts +3 -0
  61. package/@ones-editor/mention/src/locale/ja-jp.d.ts +3 -0
  62. package/@ones-editor/mention/src/locale/zh-cn.d.ts +3 -0
  63. package/@ones-editor/mention/src/mention.d.ts +24 -1
  64. package/@ones-editor/mobile-helper/src/cursor-toolbar.d.ts +15 -0
  65. package/@ones-editor/mobile-helper/src/embed-mask.d.ts +10 -0
  66. package/@ones-editor/mobile-helper/src/fixed-toolbar/active-observer.d.ts +11 -0
  67. package/@ones-editor/mobile-helper/src/fixed-toolbar/fixed-providers.d.ts +6 -0
  68. package/@ones-editor/mobile-helper/src/fixed-toolbar/index.d.ts +18 -0
  69. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/align-dropdown.d.ts +9 -0
  70. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/group.d.ts +7 -0
  71. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/insert-menu.d.ts +13 -0
  72. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/insert.d.ts +8 -0
  73. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/paragraph.d.ts +9 -0
  74. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/tab-provider.d.ts +10 -0
  75. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/text-dropdown.d.ts +9 -0
  76. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/turn-into.d.ts +8 -0
  77. package/@ones-editor/mobile-helper/src/fixed-toolbar/toolbar-handler.d.ts +15 -0
  78. package/@ones-editor/mobile-helper/src/index.d.ts +14 -2
  79. package/@ones-editor/mobile-helper/src/locale/en-us.d.ts +9 -0
  80. package/@ones-editor/mobile-helper/src/locale/ja-jp.d.ts +9 -0
  81. package/@ones-editor/mobile-helper/src/locale/zh-cn.d.ts +9 -0
  82. package/@ones-editor/mobile-helper/src/selection-gripper/index.d.ts +19 -0
  83. package/@ones-editor/mobile-helper/src/selection-gripper/select-handle.d.ts +3 -0
  84. package/@ones-editor/scroll-container/src/utils.d.ts +1 -1
  85. package/@ones-editor/sharedb-doc/src/doc/sharedb-client-base.d.ts +24 -0
  86. package/@ones-editor/sharedb-doc/src/doc/sharedb-client.d.ts +4 -1
  87. package/@ones-editor/sharedb-doc/src/doc/sharedb-doc.d.ts +1 -0
  88. package/@ones-editor/sharedb-doc/src/doc/sharedb-local-doc.d.ts +17 -0
  89. package/@ones-editor/sharedb-doc/src/index.d.ts +8 -1
  90. package/@ones-editor/sharedb-doc/src/types.d.ts +3 -1
  91. package/@ones-editor/table-block/src/commands/index.d.ts +2 -0
  92. package/@ones-editor/table-block/src/commands/mobile-command-provider.d.ts +12 -0
  93. package/@ones-editor/table-block/src/commands/table-block-commands.d.ts +4 -3
  94. package/@ones-editor/table-block/src/index.d.ts +2 -1
  95. package/@ones-editor/table-block/src/locale/en-us.d.ts +5 -0
  96. package/@ones-editor/table-block/src/locale/ja-jp.d.ts +5 -0
  97. package/@ones-editor/table-block/src/locale/zh-cn.d.ts +5 -0
  98. package/@ones-editor/table-block/src/table-block/cell-menu/table-cell-dom.d.ts +6 -0
  99. package/@ones-editor/table-block/src/table-block/table-resize/resize-drag-drop.d.ts +4 -4
  100. package/@ones-editor/text-commands/src/index.d.ts +1 -3
  101. package/@ones-editor/to-docx/src/doc2other/core.d.ts +1 -1
  102. package/@ones-editor/to-docx/src/doc2other/table.d.ts +1 -0
  103. package/@ones-editor/tsconfig.tsbuildinfo +1 -1
  104. package/@ones-editor/ui/src/block-menu/block-command-providers.d.ts +8 -0
  105. package/@ones-editor/{block-menu → ui}/src/block-menu/index.d.ts +3 -1
  106. package/@ones-editor/ui/src/box-helper/standard-box-commands.d.ts +10 -0
  107. package/@ones-editor/ui/src/box-helper/standard-box-provider.d.ts +9 -0
  108. package/@ones-editor/ui/src/index.d.ts +32 -8
  109. package/@ones-editor/ui/src/link-popup/mobile-link-popup.d.ts +22 -0
  110. package/@ones-editor/ui/src/link-popup/types.d.ts +34 -0
  111. package/@ones-editor/ui/src/link-popup/web-link-popup.d.ts +19 -0
  112. package/@ones-editor/ui/src/locale/en-us.d.ts +14 -0
  113. package/@ones-editor/ui/src/locale/ja-jp.d.ts +14 -0
  114. package/@ones-editor/ui/src/locale/zh-cn.d.ts +14 -0
  115. package/@ones-editor/ui/src/providers/align-dropdown.d.ts +10 -0
  116. package/@ones-editor/ui/src/providers/align.d.ts +11 -0
  117. package/@ones-editor/ui/src/providers/block-hook-provider.d.ts +16 -0
  118. package/@ones-editor/ui/src/providers/clipboard-provider.d.ts +20 -0
  119. package/@ones-editor/ui/src/providers/color-provider.d.ts +18 -0
  120. package/@ones-editor/ui/src/providers/edit-link-provider.d.ts +6 -0
  121. package/@ones-editor/ui/src/providers/heading.d.ts +13 -0
  122. package/@ones-editor/ui/src/providers/inline-code-provider.d.ts +10 -0
  123. package/@ones-editor/ui/src/providers/inline-style-provider.d.ts +10 -0
  124. package/@ones-editor/ui/src/providers/insert-above.d.ts +9 -0
  125. package/@ones-editor/ui/src/providers/insert-after.d.ts +9 -0
  126. package/@ones-editor/ui/src/providers/insert-box-provider.d.ts +12 -0
  127. package/@ones-editor/ui/src/providers/insert-group.d.ts +7 -0
  128. package/@ones-editor/ui/src/providers/insert-menu.d.ts +16 -0
  129. package/@ones-editor/ui/src/providers/link.d.ts +12 -0
  130. package/@ones-editor/ui/src/providers/list.d.ts +13 -0
  131. package/@ones-editor/ui/src/providers/mobile-link-provider.d.ts +13 -0
  132. package/@ones-editor/ui/src/providers/paragraph.d.ts +9 -0
  133. package/@ones-editor/ui/src/providers/proxy-provider.d.ts +9 -0
  134. package/@ones-editor/ui/src/providers/quoted.d.ts +10 -0
  135. package/@ones-editor/ui/src/providers/script-with-dropdown.d.ts +9 -0
  136. package/@ones-editor/ui/src/providers/selection-provider.d.ts +9 -0
  137. package/@ones-editor/ui/src/providers/text-command-provider.d.ts +16 -0
  138. package/@ones-editor/ui/src/providers/text-fixed-provider.d.ts +16 -0
  139. package/@ones-editor/ui/src/providers/text-script-provider.d.ts +10 -0
  140. package/@ones-editor/ui/src/providers/text-styles.d.ts +9 -0
  141. package/@ones-editor/ui/src/providers/turn-into.d.ts +9 -0
  142. package/@ones-editor/ui/src/providers/utils/add-section.d.ts +2 -0
  143. package/@ones-editor/ui/src/{quick-menu → providers/utils}/basic-commands.d.ts +1 -2
  144. package/@ones-editor/ui/src/providers/utils/clipboard.d.ts +6 -0
  145. package/@ones-editor/ui/src/providers/utils/index.d.ts +2 -0
  146. package/@ones-editor/ui/src/providers/utils/inject-block-options.d.ts +8 -0
  147. package/@ones-editor/ui/src/providers/utils/text-styles.d.ts +6 -0
  148. package/@ones-editor/ui/src/quick-menu/index.d.ts +7 -19
  149. package/@ones-editor/ui/src/quick-menu/quick-command-providers.d.ts +8 -0
  150. package/@ones-editor/ui/src/quick-menu/types.d.ts +2 -5
  151. package/@ones-editor/ui/src/readonly-toolbar/add-comment-to-old-doc.d.ts +25 -0
  152. package/@ones-editor/ui/src/readonly-toolbar/helper.d.ts +2 -0
  153. package/@ones-editor/ui/src/readonly-toolbar/index.d.ts +29 -0
  154. package/@ones-editor/ui/src/readonly-toolbar/types.d.ts +12 -0
  155. package/@ones-editor/ui/src/toolbar/link-commands.d.ts +11 -0
  156. package/@ones-editor/ui/src/toolbar/text-commands.d.ts +2 -2
  157. package/@ones-editor/ui/src/toolbar/toolbar-handler.d.ts +2 -1
  158. package/@ones-editor/ui/src/utils/hide-toolbar.d.ts +2 -0
  159. package/@ones-editor/ui-base/src/auto-suggest/auto-suggest-menu.d.ts +5 -2
  160. package/@ones-editor/ui-base/src/auto-suggest/auto-suggest.d.ts +3 -1
  161. package/@ones-editor/ui-base/src/color-button/text-color-item.d.ts +1 -0
  162. package/@ones-editor/ui-base/src/command-bar/active-observer.d.ts +11 -0
  163. package/@ones-editor/ui-base/src/command-bar/command-bar.d.ts +5 -3
  164. package/@ones-editor/ui-base/src/command-bar/fixed-toolbar.d.ts +2 -1
  165. package/@ones-editor/ui-base/src/command-bar/init-toolbar-item.d.ts +1 -0
  166. package/@ones-editor/ui-base/src/command-bar/manual-command-bar.d.ts +1 -0
  167. package/@ones-editor/ui-base/src/command-bar/types.d.ts +8 -3
  168. package/@ones-editor/ui-base/src/dialog/manual-close-dialog.d.ts +1 -1
  169. package/@ones-editor/ui-base/src/icons/index.d.ts +5 -1
  170. package/@ones-editor/ui-base/src/index.d.ts +3 -0
  171. package/@ones-editor/ui-base/src/input/create-input.d.ts +24 -3
  172. package/@ones-editor/ui-base/src/mobile-command-bar/init-menu-item.d.ts +3 -0
  173. package/@ones-editor/ui-base/src/mobile-command-bar/mobile-bottom-menu.d.ts +21 -0
  174. package/@ones-editor/ui-base/src/mobile-command-bar/scroll-into-view.d.ts +3 -0
  175. package/@ones-editor/ui-base/src/popup/popup.d.ts +1 -1
  176. package/@ones-editor/{ui → ui-base}/src/text-button/index.d.ts +1 -1
  177. package/dist/auto-new-line.d.ts +7 -0
  178. package/dist/comments/local-doc-comments-provider.d.ts +2 -1
  179. package/dist/index.d.ts +9 -3
  180. package/dist/index.js +28970 -24087
  181. package/dist/lang/en-us.d.ts +1 -1
  182. package/dist/lang/ja-jp.d.ts +1 -1
  183. package/dist/lang/zh-cn.d.ts +1 -1
  184. package/dist/types.d.ts +7 -2
  185. package/package.json +1 -3
  186. package/@ones-editor/block-menu/src/block-menu/items/block-command-items.d.ts +0 -3
  187. package/@ones-editor/block-menu/src/block-menu/items/index.d.ts +0 -5
  188. package/@ones-editor/block-menu/src/block-menu/items/insert-block-items/index.d.ts +0 -5
  189. package/@ones-editor/block-menu/src/block-menu/items/text-styles/text-style-item.d.ts +0 -30
  190. package/@ones-editor/block-menu/src/block-menu/items/types.d.ts +0 -5
  191. package/@ones-editor/text-commands/src/locale/en-us.d.ts +0 -13
  192. package/@ones-editor/text-commands/src/locale/ja-jp.d.ts +0 -13
  193. package/@ones-editor/text-commands/src/locale/zh-cn.d.ts +0 -13
  194. package/@ones-editor/text-commands/src/text-command-provider.d.ts +0 -24
  195. package/@ones-editor/text-commands/src/text-commands.d.ts +0 -4
  196. package/@ones-editor/text-commands/src/text-styles.d.ts +0 -4
  197. package/@ones-editor/ui/src/quick-menu/basic-menu-items.d.ts +0 -16
  198. package/@ones-editor/ui/src/quick-menu/inline-box-items.d.ts +0 -8
  199. package/@ones-editor/ui/src/quick-menu/insert-empty-block.d.ts +0 -4
  200. package/@ones-editor/ui/src/quick-menu/order.d.ts +0 -1
  201. package/@ones-editor/ui/src/quick-menu/quick-menu-items.d.ts +0 -9
  202. package/@ones-editor/ui/src/toolbar/commands/align.d.ts +0 -10
  203. package/@ones-editor/ui/src/toolbar/commands/paragraph.d.ts +0 -11
  204. package/@ones-editor/ui/src/toolbar/commands/turn-into.d.ts +0 -10
  205. package/@ones-editor/ui/src/toolbar/merge-commands.d.ts +0 -2
  206. /package/@ones-editor/{text-commands → mobile-helper}/src/locale/index.d.ts +0 -0
  207. /package/@ones-editor/{block-menu → ui}/src/block-menu/standard-block-actions/hook.d.ts +0 -0
@@ -1,6 +1,6 @@
1
1
  import { BlockElement, OnesEditor } from '../../../../../@ones-editor/core';
2
+ import { BlockMenu } from '../../../../../@ones-editor/ui';
2
3
  import EmptyBlockMenu from '../../empty-block-menu';
3
- import BlockMenu from '../../block-menu';
4
4
  export default class OnesEditorBlockMenuButton {
5
5
  private editor;
6
6
  buttonElement: HTMLButtonElement;
@@ -7,4 +7,4 @@ declare const BlockPaddingShortcuts: {
7
7
  Backspace: typeof handleBackspace;
8
8
  };
9
9
  export * from './utils';
10
- export { BlockPaddingRender, BlockPaddingShortcuts, };
10
+ export { BlockPaddingRender, BlockPaddingShortcuts, handleShiftTab, handleTab, };
@@ -1,8 +1,7 @@
1
- import { OnesEditor, OnesEditorCustom } from '../../../../@ones-editor/core';
2
- import type { QuickMenuItem, QuickMenuItemFilter } from '../../../../@ones-editor/ui';
3
- export declare class CalloutQuickMenuItemFilter implements QuickMenuItemFilter, OnesEditorCustom {
1
+ import { CommandFilter, CommandItemWithSource, OnesEditor, OnesEditorCustom, SelectionRange } from '../../../../@ones-editor/core';
2
+ export declare class CalloutQuickMenuItemFilter implements CommandFilter, OnesEditorCustom {
4
3
  constructor(editor: OnesEditor);
5
- filter(editor: OnesEditor, items: QuickMenuItem[], from: string): QuickMenuItem[];
4
+ filter(editor: OnesEditor, range: SelectionRange, items: CommandItemWithSource[], source: string[]): CommandItemWithSource[];
6
5
  destroy(): void;
7
6
  static init(editor: OnesEditor): CalloutQuickMenuItemFilter;
8
7
  }
@@ -1,3 +1,4 @@
1
1
  import './index.scss';
2
2
  import './locale';
3
3
  export { CalloutBlock } from './callout-block';
4
+ export { CalloutQuickMenuItemFilter } from './callout-block/callout-quick-menu-item-filter';
@@ -0,0 +1,10 @@
1
+ import { BlockCommands, BlockElement, CommandItem, OnesEditor, OnesEditorBlockHook, TextBlockContentChild } from '../../../../@ones-editor/core';
2
+ import type { OnesEditorComments } from '../comments';
3
+ import { OnesEditorCommentsProvider } from '../types';
4
+ export default class HoveringCommentBlockHook implements OnesEditorBlockHook {
5
+ private provider;
6
+ private editorComments;
7
+ constructor(provider: OnesEditorCommentsProvider, editorComments: OnesEditorComments);
8
+ commands(editor: OnesEditor, blockElement: BlockElement, child: TextBlockContentChild | null): BlockCommands | undefined;
9
+ executeCommand: (editor: OnesEditor, block: BlockElement, item: CommandItem) => void;
10
+ }
@@ -0,0 +1,16 @@
1
+ import { DocObject, OnesEditor, OnesEditorComment, OnesEditorDocRange, SelectionRange } from '../../../../@ones-editor/core';
2
+ export interface AddCommentToOldVersionBody {
3
+ avatarUrl: string;
4
+ containerId: string;
5
+ rangeType: 'simple' | 'complex';
6
+ range: OnesEditorDocRange;
7
+ selectedContainers: string[];
8
+ commentId?: string;
9
+ commentGroupId?: string;
10
+ comment: DocObject;
11
+ abstract?: string;
12
+ }
13
+ export declare function addCommentToOldVersion(editor: OnesEditor, version: number, range: SelectionRange, comment: OnesEditorComment, commentDoc: DocObject): Promise<void>;
14
+ export declare function replyCommentToOldVersion(editor: OnesEditor, version: number, comment: OnesEditorComment, commentDoc: DocObject): Promise<unknown>;
15
+ export declare function updateCommentToOldDoc(editor: OnesEditor, version: number, commentId: string, commentDoc: DocObject): Promise<unknown>;
16
+ export declare function deleteCommentFromOldDoc(editor: OnesEditor, version: number, commentId: string): Promise<unknown>;
@@ -1,11 +1,15 @@
1
1
  import { OnesEditorComments } from './comments';
2
2
  import './style.scss';
3
+ import CommentsCommandProvider from './text-comments/comments-command-provider';
3
4
  import './locale';
4
5
  export * from './types';
5
6
  export { OnesEditorCommentsRender } from './comments-render';
6
7
  export { OnesEditorCommentPlaceholderHandler } from './comment-placeholder-handler';
7
- export { OnesEditorComments };
8
+ export { OnesEditorComments, CommentsCommandProvider };
8
9
  export type { CommentItem } from './comment-item';
9
10
  export type { CommentGroupItem } from './comments-list/group-item';
10
11
  export { removeCommentFromBlock } from './actions/remove-comment-from-block';
12
+ export { addCommentToTextBlocks } from './actions/add-comment-to-text-block';
13
+ export { addCommentToBlock } from './actions/add-comment-to-block';
11
14
  export { editorAddComment } from './actions/editor-add-comment';
15
+ export * from './comments-helper/old-version-comment';
@@ -1,12 +1,13 @@
1
- import { BlockCommandItem, BlockCommandItemWithSource, BlockElement, CommandParams, CommandResult, OnesEditor, OnesEditorCommandProvider, SelectionRange } from '../../../../@ones-editor/core';
1
+ import { BlockElement, CommandItem, CommandItemWithSource, CommandParams, CommandResult, OnesEditor, OnesEditorCommandProvider, SelectionRange } from '../../../../@ones-editor/core';
2
2
  import { OnesEditorCommentsProvider } from '../types';
3
3
  import type { OnesEditorComments } from '../comments';
4
4
  export default class CommentsCommandProvider implements OnesEditorCommandProvider {
5
5
  private provider;
6
6
  private editorComments;
7
7
  id: string;
8
+ groupIndex: number;
8
9
  constructor(provider: OnesEditorCommentsProvider, editorComments: OnesEditorComments);
9
- getAvailableCommands(editor: OnesEditor, block: BlockElement, range: SelectionRange): BlockCommandItem[];
10
+ getAvailableCommands(editor: OnesEditor, block: BlockElement, range: SelectionRange, params?: CommandParams): CommandItem[];
10
11
  hideToolbar(editor: OnesEditor): void;
11
- executeRangeCommand(editor: OnesEditor, range: SelectionRange, command: BlockCommandItemWithSource, params: CommandParams, result: CommandResult): boolean;
12
+ executeRangeCommand(editor: OnesEditor, range: SelectionRange, command: CommandItemWithSource, params: CommandParams, result?: CommandResult): boolean;
12
13
  }
@@ -1,10 +1,10 @@
1
- import { BlockCommands, BlockElement, OnesEditor } from '../../types';
1
+ import { BlockCommands, BlockElement, BoxCommands, OnesEditor, TextBlockContentChild } from '../../types';
2
2
  export declare function getBlockProperties(editor: OnesEditor, block: BlockElement): import("../../types").BlockProperties | undefined;
3
- export declare function getBlockCommandsWithHook(editor: OnesEditor, block: BlockElement): Record<string, BlockCommands>;
4
- export declare function getSpecialBlockCommands(editor: OnesEditor, blockElement: BlockElement, group: string): {
5
- element: import("../../types").BlockContentElement;
6
- commands: import("../../types").CommandItem[];
7
- } | {
8
- element: null;
9
- commands: never[];
10
- };
3
+ export declare function getBlockCommandsWithHook(editor: OnesEditor, block: BlockElement, child: TextBlockContentChild | null): Record<string, BlockCommands>;
4
+ interface SpecialBlockCommands {
5
+ element: HTMLElement | null;
6
+ blockCommands: BlockCommands[];
7
+ boxCommands: BoxCommands[];
8
+ }
9
+ export declare function getSpecialBlockCommands(editor: OnesEditor, blockElement: BlockElement, child: TextBlockContentChild | null, group: string): SpecialBlockCommands;
10
+ export {};
@@ -1,3 +1,3 @@
1
- import { BlockCommandItemWithSource, BlockElement, CommandItem, OnesEditor } from '../../types';
1
+ import { BlockElement, CommandItem, CommandItemWithSource, OnesEditor } from '../../types';
2
2
  export declare function executeEmbedBlockCommand(editor: OnesEditor, block: BlockElement, commandGroup: string, item: CommandItem): unknown;
3
- export declare function executeBlockCommand(editor: OnesEditor, block: BlockElement, commandGroup: string, item: BlockCommandItemWithSource): unknown;
3
+ export declare function executeBlockCommand(editor: OnesEditor, block: BlockElement, commandGroup: string, item: CommandItemWithSource): unknown;
@@ -1,7 +1,8 @@
1
- import { BlockElement, OnesEditor, SelectedBlock } from '../../types';
1
+ import { BlockElement, OnesEditor, SelectedBlock, SelectionRange } from '../../types';
2
2
  export type GetAllChildBlocksOptions = {
3
3
  simpleBlockOnly?: boolean;
4
4
  visibleOnly?: boolean;
5
+ range?: SelectionRange;
5
6
  };
6
7
  export declare function getAllChildBlocks(editor: OnesEditor, options?: GetAllChildBlocksOptions): BlockElement[];
7
8
  export declare function getAllSelectedBlocks(editor: OnesEditor, options?: GetAllChildBlocksOptions): SelectedBlock[];
@@ -1,4 +1,5 @@
1
- import { OnesEditor, BlockElement, BlockPosition, ContainerElement, ComplexBlockPosition, GetChildContainerOptions } from '../../types';
1
+ import { OnesEditor, BlockElement, BlockPosition, ContainerElement, GetChildContainerOptions, ComplexSelectionRange } from '../../types';
2
+ export declare const logger: import("../../../utils").Logger;
2
3
  export declare function complexBlockGetAllChildContainers(editor: OnesEditor, block: BlockElement, options?: GetChildContainerOptions): ContainerElement[];
3
4
  export declare function complexBlockGetSelectedContainers(editor: OnesEditor, block: BlockElement, start: BlockPosition, end: BlockPosition): ContainerElement[];
4
5
  export declare function isFirstChildBlockInComplexBlock(editor: OnesEditor, childBlock: BlockElement): boolean;
@@ -9,7 +10,4 @@ export declare function findPrevSimpleBlockBeforeChildContainer(editor: OnesEdit
9
10
  export declare function complexBlockGetTopChildContainers(editor: OnesEditor, complexBlock: BlockElement): ContainerElement[];
10
11
  export declare function complexBlockGetBottomChildContainers(editor: OnesEditor, complexBlock: BlockElement): ContainerElement[];
11
12
  export declare function complexBlockFindNearestChildBlock(editor: OnesEditor, complexBlock: BlockElement, x: number, y: number): BlockElement;
12
- export declare function complexBlockAdjustSelectionPos(editor: OnesEditor, complexBlock: BlockElement, anchor: ComplexBlockPosition, focus: ComplexBlockPosition): {
13
- anchor: ComplexBlockPosition;
14
- focus: ComplexBlockPosition;
15
- };
13
+ export declare function isFullSelectedOneComplexBlock(editor: OnesEditor, complexRange?: ComplexSelectionRange): boolean;
@@ -1,10 +1,4 @@
1
- import { BlockElement, BoxElement, InsertionElement } from '../../../types';
2
- export type TextBlockContentTextChild = HTMLSpanElement & {
3
- __neverUse: 'TextBlockContentTextChild';
4
- };
5
- export type TextBlockContentInsertionChild = InsertionElement;
6
- export type TextBlockContentBoxChild = BoxElement;
7
- export type TextBlockContentChild = TextBlockContentTextChild | TextBlockContentBoxChild | TextBlockContentInsertionChild;
1
+ import { BlockElement, TextBlockContentChild } from '../../../types';
8
2
  export type TextBlockContentChildren = TextBlockContentChild[];
9
3
  export type TextBlockContentChildType = 'text' | 'box' | 'insertion';
10
4
  export declare function isTextBlockContentChild(elem: Element): boolean;
@@ -1,5 +1,4 @@
1
- import { BlockElement, SimpleBlockPosition } from '../../../types';
2
- import { TextBlockContentChild } from './child';
1
+ import { BlockElement, SimpleBlockPosition, TextBlockContentChild } from '../../../types';
3
2
  export interface LineBreakInfo {
4
3
  offset: number;
5
4
  type: 'betweenChild' | 'textBreakWord';
@@ -1,5 +1,4 @@
1
- import { BlockElement, BoxElement, InsertionElement } from '../../../types';
2
- import { TextBlockContentChild } from './child';
1
+ import { BlockElement, BoxElement, InsertionElement, TextBlockContentChild } from '../../../types';
3
2
  export interface BlockRangeInfo {
4
3
  child: TextBlockContentChild;
5
4
  container: Text | BoxElement | HTMLBRElement | InsertionElement;
@@ -1,5 +1,4 @@
1
- import { BlockElement } from '../../../types';
2
- import { TextBlockContentChild } from './child';
1
+ import { BlockElement, TextBlockContentChild } from '../../../types';
3
2
  export declare function getChildOffset(block: BlockElement, child: TextBlockContentChild): {
4
3
  start: number;
5
4
  end: number;
@@ -0,0 +1,25 @@
1
+ import { OnesEditor, OnesEditorCommandProviders, OnesEditorCommandProvider, SelectionRange, CommandParams, CommandItemWithSource, CommandFilterId, CommandFilter, CommandResult, BlockElement } from '../types';
2
+ type RangeCommandResult = {
3
+ [index: string]: CommandResult;
4
+ };
5
+ export declare abstract class AbstractProvider implements OnesEditorCommandProviders {
6
+ protected editor: OnesEditor;
7
+ abstract id: string;
8
+ commandProviders: OnesEditorCommandProvider[];
9
+ commandFilters: Map<string | number | symbol, CommandFilter>;
10
+ constructor(editor: OnesEditor);
11
+ addFilter(id: CommandFilterId, filter: CommandFilter): void;
12
+ registerCommandProvider: (provider: OnesEditorCommandProvider) => void;
13
+ getCommandProviders: () => OnesEditorCommandProvider[];
14
+ getCommandProvider: (id: string) => OnesEditorCommandProvider;
15
+ filterItems: (range: SelectionRange, items: CommandItemWithSource[]) => CommandItemWithSource[];
16
+ getCommands(range: SelectionRange): CommandItemWithSource[];
17
+ executeBlockCommand: (editor: OnesEditor, block: BlockElement, range: SelectionRange, command: CommandItemWithSource, params: CommandParams, result: RangeCommandResult) => boolean;
18
+ executeRangeCommand: (range: SelectionRange, command: CommandItemWithSource, params: CommandParams) => {
19
+ [index: string]: CommandResult;
20
+ };
21
+ executeCommand(range: SelectionRange, command: CommandItemWithSource, params: CommandParams): {
22
+ [index: string]: CommandResult;
23
+ };
24
+ }
25
+ export {};
@@ -0,0 +1,16 @@
1
+ import { DocBlockTextAttributes } from '../doc';
2
+ import { CommandParams, OnesEditor, OnesEditorCustom } from '../types';
3
+ export default class BlockAttributesHandler implements OnesEditorCustom {
4
+ private editor;
5
+ private textBlockAttributes;
6
+ private activeBlockAttributes;
7
+ private lastRange;
8
+ constructor(editor: OnesEditor);
9
+ clear: () => void;
10
+ handleSelectionChanged: () => void;
11
+ destroy(): void;
12
+ getEmptyBlockTextAttributes(blockId: string): DocBlockTextAttributes | undefined;
13
+ setActiveBlockAttributes: (attributes: CommandParams) => void;
14
+ setEmptyBlockTextAttributes: (blockId: string, attributes: CommandParams) => void;
15
+ setActiveAttribute: (attribute: string, value: unknown) => void;
16
+ }
@@ -1,2 +1,4 @@
1
1
  export * from './intersection-commands';
2
2
  export * from './range-commands';
3
+ export * from './merge-commands';
4
+ export * from './inject-source';
@@ -0,0 +1,3 @@
1
+ import { CommandItemWithSource } from '../../types';
2
+ export declare const injectSource: (commands: CommandItemWithSource[], source?: string[]) => void;
3
+ export declare const getSourceList: (source: string) => string[];
@@ -0,0 +1,4 @@
1
+ import { CommandItem } from '../../types';
2
+ export declare function mergeCommands(blockCommands: CommandItem[]): CommandItem[];
3
+ export declare const flatCommands: (allCommands: Map<number, CommandItem[]>, sort?: boolean) => CommandItem[];
4
+ export declare const groupEachCommand: (allCommands: CommandItem[]) => CommandItem[];
@@ -1,5 +1,2 @@
1
- import { BlockCommandItemWithSource, CommandParams, CommandResult, SelectionRange } from '../../types';
2
- export declare function getRangeCommands(range: SelectionRange, source: string): BlockCommandItemWithSource[];
3
- export declare function executeRangeCommand(range: SelectionRange, command: BlockCommandItemWithSource, params: CommandParams): {
4
- [index: string]: CommandResult;
5
- };
1
+ import { CommandItemWithSource, BlockElement, OnesEditor, SelectionRange, OnesEditorCommandProvider } from '../../types';
2
+ export declare function getBlockCommands(providers: OnesEditorCommandProvider[], editor: OnesEditor, block: BlockElement, range: SelectionRange, source: string): CommandItemWithSource[];
@@ -1,15 +1,6 @@
1
- import { DocBlockTextAttributes } from '../doc';
2
- import { OnesEditor, OnesEditorCommandProviders, OnesEditorCommandProvider, SelectionRange, CommandParams, BlockCommandItemWithSource } from '../types';
3
- export default class EditorCommandProviders implements OnesEditorCommandProviders {
4
- private editor;
5
- private providers;
6
- constructor(editor: OnesEditor);
7
- registerCommandProvider(provider: OnesEditorCommandProvider): void;
8
- getCommandProviders(): OnesEditorCommandProvider[];
9
- getCommandProvider(id: string): OnesEditorCommandProvider;
10
- getCommands(range: SelectionRange, source: string): BlockCommandItemWithSource[];
11
- executeCommand(range: SelectionRange, command: BlockCommandItemWithSource, params: CommandParams): {
12
- [index: string]: import("../types").CommandResult;
13
- };
14
- getEmptyBlockTextAttributes(editor: OnesEditor, blockId: string): DocBlockTextAttributes | undefined;
1
+ import { CommandItemWithSource, OnesEditorCommandProviders, SelectionRange } from '../types';
2
+ import { AbstractProvider } from './abstract-providers';
3
+ export default class EditorCommandProviders extends AbstractProvider implements OnesEditorCommandProviders {
4
+ id: string;
5
+ getCommands(range: SelectionRange): CommandItemWithSource[];
15
6
  }
@@ -1,3 +1,5 @@
1
1
  import EditorCommandProviders from './editor-command-providers';
2
+ import BlockAttributesHandler from './block-attributes';
3
+ import { AbstractProvider } from './abstract-providers';
2
4
  export * from './commands';
3
- export { EditorCommandProviders };
5
+ export { EditorCommandProviders, BlockAttributesHandler, AbstractProvider };
@@ -34,7 +34,7 @@ export declare class EditorInput implements OnesEditorInput {
34
34
  isInDisableScrollMask(target: Node): boolean;
35
35
  handleWindowBlur: () => void;
36
36
  handleWindowFocus: () => void;
37
- handleDocumentClick: (event: MouseEvent) => void;
37
+ handleDocumentClick: (event: MouseEvent | TouchEvent) => void;
38
38
  handleDocumentSelectionChange: () => void;
39
39
  handleEditorSelectionChanged: () => void;
40
40
  handleReadonlyChanged: () => void;
@@ -6,6 +6,7 @@ export declare class RootContainer {
6
6
  resizeObserver: ResizeObserver;
7
7
  private isMoved;
8
8
  private mouseDownEvent;
9
+ private dbClickRef;
9
10
  constructor(editor: OnesEditor, rootContainer: ContainerElement);
10
11
  private bindEvents;
11
12
  private unbindEvents;
@@ -15,9 +16,9 @@ export declare class RootContainer {
15
16
  handleClick: (event: MouseEvent) => void;
16
17
  handleBlockClick: (event: MouseEvent, block: BlockElement, elem: Element) => void;
17
18
  handleDblClick: (event: MouseEvent) => void;
18
- handleMouseDown: (event: MouseEvent) => void;
19
+ handleMouseDown: (event: TouchEvent | MouseEvent) => void;
19
20
  handleMouseMove: (event: MouseEvent) => void;
20
- handleMouseUp: (event: MouseEvent) => void;
21
+ handleMouseUp: (event: MouseEvent | TouchEvent) => void;
21
22
  handleCaptureClick: (event: MouseEvent) => void;
22
23
  handleCaptureDbClick: (event: MouseEvent) => void;
23
24
  reload(): void;
@@ -110,10 +110,12 @@ export interface OnesEditorDocComplexBlockPos {
110
110
  }
111
111
  export type OnesEditorDocBlockPos = OnesEditorDocSimpleBlockPos | OnesEditorDocComplexBlockPos;
112
112
  export interface OnesEditorDocSimpleRange {
113
+ reverse?: boolean;
113
114
  anchor: OnesEditorDocSimpleBlockPos;
114
115
  focus: OnesEditorDocSimpleBlockPos;
115
116
  }
116
117
  export interface OnesEditorDocComplexRange {
118
+ reverse?: boolean;
117
119
  anchor: OnesEditorDocComplexBlockPos;
118
120
  focus: OnesEditorDocComplexBlockPos;
119
121
  }
@@ -202,6 +204,7 @@ export interface OnesEditorDocServerMeta {
202
204
  serverId?: string;
203
205
  docId?: string;
204
206
  appId?: string;
207
+ apiServer?: string;
205
208
  }
206
209
  export interface RecognizeLinkResult {
207
210
  type?: 'iframe' | 'video' | 'audio' | 'image';
@@ -14,6 +14,8 @@ export declare function rangeRemoveAttribute(offset: number, length: number, tex
14
14
  export declare function getAttributesAt(text: DocBlockText, offset: number): DocBlockTextAttributes | undefined;
15
15
  export type DocBlockTextProcessor = (op: DocBlockTextOp) => DocBlockTextOp;
16
16
  export declare function rangeTransformText(offset: number, length: number, text: DocBlockText, processor: DocBlockTextProcessor): DocBlockText;
17
+ export declare function deleteColor(op: DocBlockTextOp, type: 'color' | 'backgroundColor'): void;
18
+ export declare function addColor(op: DocBlockTextOp, type: 'color' | 'backgroundColor', value: number): void;
17
19
  export declare function rangeSetTextColor(offset: number, length: number, docText: DocBlockText, type: 'color' | 'backgroundColor', value: number | null): DocBlockText;
18
20
  export declare function getColorFromAttributes(attributes?: DocBlockTextAttributes): [number | null, number | null];
19
21
  export declare function setColorToAttributes(attributes: DocBlockTextAttributes, type: 'color' | 'backgroundColor', value: number | null): void;
@@ -1,2 +1,2 @@
1
- import { OnesEditor } from '../../types';
2
- export declare function editorClearSelectedContents(editor: OnesEditor): void;
1
+ import { OnesEditor, SelectionRange } from '../../types';
2
+ export declare function editorClearSelectedContents(editor: OnesEditor, selectionRange?: SelectionRange): void;
@@ -7,5 +7,6 @@ export declare function isBlockPositionVisible(editor: OnesEditor, pos: SimpleBl
7
7
  export declare function scrollIntoView(editor: OnesEditor, target: HTMLElement, options?: {
8
8
  animation?: boolean;
9
9
  verticalOffset?: number;
10
+ elementToScroll?: HTMLElement;
10
11
  }): void;
11
12
  export declare function editorScrollIntoView(editor: OnesEditor): void;
@@ -1,3 +1,3 @@
1
1
  export * from './editor';
2
2
  export * from './actions';
3
- export { scrollIntoView } from './editor-dom';
3
+ export { scrollIntoView, editorScrollIntoView } from './editor-dom';
@@ -6,5 +6,6 @@ export default class EditorInsertions {
6
6
  constructor(editor: OnesEditor);
7
7
  registerInsertionClass(insertionClass: Insertion): void;
8
8
  getInsertionClass(type: string): Insertion;
9
+ private createInsertionElement;
9
10
  createInsertion(blockContent: BlockContentElement, insertion: DocInsertion): InsertionElement;
10
11
  }
@@ -23,4 +23,5 @@ import { editorMovePageDown } from './move-page-down';
23
23
  import { editorSelectPageUp } from './select-page-up';
24
24
  import { editorSelectPageDown } from './select-page-down';
25
25
  import { editorSelectAll, editorSelectContainer, isContainerSelectedAllChildBlocks } from './select-all';
26
- export { editorMoveLeft, editorMoveRight, editorMoveUp, editorMoveDown, editorSelectDown, editorSelectUp, editorSelectLeft, editorSelectRight, editorMoveWordLeft, editorMoveWordEnd, editorSelectWordLeft, editorSelectWordEnd, editorMoveHome, editorMoveEnd, editorSelectHome, editorSelectEnd, editorMovePageUp, editorMovePageDown, editorSelectPageUp, editorSelectPageDown, editorSelectLineHome, editorSelectLineEnd, editorMoveLineHome, editorMoveLineEnd, editorSelectAll, editorSelectContainer, isContainerSelectedAllChildBlocks, };
26
+ import { editorSelectWord } from './select-word';
27
+ export { editorMoveLeft, editorMoveRight, editorMoveUp, editorMoveDown, editorSelectDown, editorSelectUp, editorSelectLeft, editorSelectRight, editorSelectWord, editorMoveWordLeft, editorMoveWordEnd, editorSelectWordLeft, editorSelectWordEnd, editorMoveHome, editorMoveEnd, editorSelectHome, editorSelectEnd, editorMovePageUp, editorMovePageDown, editorSelectPageUp, editorSelectPageDown, editorSelectLineHome, editorSelectLineEnd, editorMoveLineHome, editorMoveLineEnd, editorSelectAll, editorSelectContainer, isContainerSelectedAllChildBlocks, };
@@ -1,4 +1,4 @@
1
- import { BlockPosition, OnesEditor } from '../types';
1
+ import { BlockElement, BlockPosition, OnesEditor, ComplexBlockPosition } from '../types';
2
2
  import { EditorComplexBlockPosition, EditorSimpleBlockPosition } from './editor-position';
3
3
  type AdjustSelectionPosResult = {
4
4
  anchor: EditorSimpleBlockPosition;
@@ -7,5 +7,9 @@ type AdjustSelectionPosResult = {
7
7
  anchor: EditorComplexBlockPosition;
8
8
  focus: EditorComplexBlockPosition;
9
9
  };
10
+ export declare function complexBlockAdjustSelectionPos(editor: OnesEditor, complexBlock: BlockElement, anchor: ComplexBlockPosition, focus: ComplexBlockPosition): {
11
+ anchor: ComplexBlockPosition;
12
+ focus: ComplexBlockPosition;
13
+ };
10
14
  export declare function adjustSelectionPos(editor: OnesEditor, anchor: BlockPosition, focus: BlockPosition): AdjustSelectionPosResult | null;
11
15
  export {};
@@ -1,3 +1,4 @@
1
1
  export * from './editor-position';
2
2
  export * from './range';
3
3
  export * from './range-from-point';
4
+ export * from './adjust-selection-pos';
@@ -4,16 +4,16 @@ export declare class EditorSelectionHandler implements OnesEditorSelectionHandle
4
4
  editor: OnesEditor;
5
5
  startPos: BlockPosition | null;
6
6
  lastCaretRect: DOMRect;
7
- mouseDownEvent: MouseEvent | null;
7
+ mouseDownEvent: TouchEvent | MouseEvent | null;
8
8
  autoScroll: AutoScroll | null;
9
9
  constructor(editor: OnesEditor);
10
10
  isSelecting(): boolean;
11
11
  stopSelection(): void;
12
- handleMouseDown: (event: MouseEvent, options: {
12
+ handleMouseDown: (event: MouseEvent | TouchEvent, options: {
13
13
  autoScroll: boolean;
14
14
  }) => void;
15
15
  handleMouseMove: (event: MouseEvent) => void;
16
- handleMouseUp: (event: MouseEvent) => void;
16
+ handleMouseUp: (event: MouseEvent | TouchEvent) => void;
17
17
  handleDblClick(event: MouseEvent): void;
18
18
  handleTripleClick(event: MouseEvent): void;
19
19
  }
@@ -1,5 +1,11 @@
1
1
  import { TypedEmitter } from 'tiny-typed-emitter';
2
2
  import { DocBlock, DocBlockAttributes, DocBlockDelta, DocBlocks, DocBlockText, DocBlockTextAttributes, DocBox, DocEmbedBlock, DocEmbedData, DocInsertion, DocObject, InsertBlockOptions, OnesEditorDoc, OnesEditorDocRange, UpdateBlockOptions } from './doc';
3
+ export type TextBlockContentTextChild = HTMLSpanElement & {
4
+ __neverUse: 'TextBlockContentTextChild';
5
+ };
6
+ export type TextBlockContentInsertionChild = InsertionElement;
7
+ export type TextBlockContentBoxChild = BoxElement;
8
+ export type TextBlockContentChild = TextBlockContentTextChild | TextBlockContentBoxChild | TextBlockContentInsertionChild;
3
9
  export type ContainerElement = HTMLDivElement & {
4
10
  __neverUse: 'ContainerElement';
5
11
  };
@@ -119,7 +125,6 @@ export interface Closeable {
119
125
  click: (item: CommandItem, target: HTMLElement) => void;
120
126
  }
121
127
  export type CommandItemChildrenPlacement = 'auto' | 'top' | 'left' | 'right' | 'bottom' | 'auto-start' | 'auto-end' | 'top-start' | 'top-end' | 'bottom-start' | 'bottom-end' | 'right-start' | 'right-end' | 'left-start' | 'left-end';
122
- export type CommandItemMenuType = 'inline' | 'sibling';
123
128
  export interface CommandItem {
124
129
  id: string;
125
130
  name: string;
@@ -130,7 +135,7 @@ export interface CommandItem {
130
135
  type?: CommandItemType;
131
136
  element?: HTMLElement | ((item: CommandItem) => HTMLElement);
132
137
  icon?: string;
133
- childrenType?: 'menu' | 'toolbar';
138
+ childrenType?: 'menu' | 'toolbar' | 'mobile-bottom-menu';
134
139
  children?: CommandItem[];
135
140
  childrenMenuId?: string;
136
141
  data?: unknown;
@@ -145,25 +150,17 @@ export interface CommandItem {
145
150
  defaultCheckedChildren?: string[];
146
151
  ellipsisTooltip?: string;
147
152
  disableTooltip?: boolean;
153
+ tooltipPlacement?: CommandItemChildrenPlacement;
148
154
  disableReason?: string;
149
155
  hideGroupItem?: boolean;
150
156
  setCloseable?: (closeable: Closeable) => void;
151
157
  beforePopup?: (parent: unknown) => void;
152
- /**
153
- * defaults to true
154
- */
155
- shouldShown?: (currentBlock: BlockElement | undefined, menuType: CommandItemMenuType) => boolean;
158
+ switchable?: boolean;
156
159
  /**
157
160
  * defaults to true
158
161
  */
159
162
  clickToClose?: boolean;
160
163
  }
161
- export interface BlockCommandItem extends CommandItem {
162
- blockId: string;
163
- blockType: string;
164
- blockKind: BlockKind;
165
- groupIndex: number;
166
- }
167
164
  export type StyleType = boolean | string | number;
168
165
  export type BlockStyles = {
169
166
  [index: string]: StyleType;
@@ -174,9 +171,10 @@ export type BlockPathComponent = {
174
171
  };
175
172
  export type BlockPath = BlockPathComponent[];
176
173
  export interface BlockCommands {
174
+ element?: HTMLElement;
177
175
  group: string;
178
176
  commands: CommandItem[];
179
- executeCommand: (editor: OnesEditor, block: BlockElement, item: CommandItem) => unknown;
177
+ executeCommand: (editor: OnesEditor, block: BlockElement, item: CommandItem, child: TextBlockContentChild | null) => unknown;
180
178
  }
181
179
  export interface BlockProperties {
182
180
  blockCommands?: Record<string, BlockCommands>;
@@ -640,6 +638,7 @@ export type PasteOptions = {
640
638
  };
641
639
  export interface OnesEditorInput {
642
640
  readonly inputElement: HTMLTextAreaElement;
641
+ getInput: () => HTMLTextAreaElement;
643
642
  destroy: () => void;
644
643
  focus: () => void;
645
644
  handleDocumentSelectionChange: () => void;
@@ -659,11 +658,11 @@ export interface OnesEditorInput {
659
658
  export interface OnesEditorSelectionHandler {
660
659
  isSelecting: () => boolean;
661
660
  stopSelection: () => void;
662
- handleMouseDown: (event: MouseEvent, options: {
661
+ handleMouseDown: (event: MouseEvent | TouchEvent, options: {
663
662
  autoScroll: boolean;
664
663
  }) => void;
665
664
  handleMouseMove: (event: MouseEvent) => void;
666
- handleMouseUp: (event: MouseEvent) => void;
665
+ handleMouseUp: (event: MouseEvent | TouchEvent) => void;
667
666
  handleDblClick: (event: MouseEvent) => void;
668
667
  handleTripleClick: (event: MouseEvent) => void;
669
668
  }
@@ -714,32 +713,43 @@ export interface OnesEditorInsertions {
714
713
  }
715
714
  export type CommandParams = {
716
715
  [index: string]: unknown;
716
+ } & {
717
+ source?: string[];
718
+ isFilter?: boolean;
717
719
  };
718
720
  export type CommandResult = {
719
721
  [index: string]: unknown;
720
722
  };
721
723
  export interface OnesEditorCommandProvider {
722
724
  id: string;
723
- getAvailableCommands: (editor: OnesEditor, block: BlockElement, range: SelectionRange) => BlockCommandItem[];
724
- executeCommand?: (editor: OnesEditor, block: BlockElement, range: SelectionRange, item: BlockCommandItem, params: CommandParams, result: CommandResult) => boolean;
725
- filterCommands?: (editor: OnesEditor, block: BlockElement, range: SelectionRange, commands: BlockCommandItemWithSource[]) => BlockCommandItemWithSource[] | undefined;
726
- beforeExecuteCommand?: (editor: OnesEditor, block: BlockElement, range: SelectionRange, item: BlockCommandItem, params: CommandParams) => boolean | undefined;
727
- afterExecuteCommand?: (editor: OnesEditor, block: BlockElement, range: SelectionRange, item: BlockCommandItem, params: CommandParams, result: CommandResult) => void;
728
- getEmptyBlockTextAttributes?: (editor: OnesEditor, blockId: string) => DocBlockTextAttributes | undefined;
729
- executeRangeCommand?: (editor: OnesEditor, range: SelectionRange, command: BlockCommandItemWithSource, params: CommandParams, result: CommandResult) => boolean;
730
- }
731
- export interface BlockCommandItemWithSource extends BlockCommandItem {
725
+ groupIndex?: number;
726
+ getAvailableCommands: (editor: OnesEditor, block: BlockElement, range: SelectionRange, params?: CommandParams) => CommandItem[];
727
+ getInsertCommands?: (editor: OnesEditor, containerId: string) => CommandItem[];
728
+ executeInsertCommand?: (editor: OnesEditor, containerId: string, blockIndex: number, item: CommandItemWithSource, params: CommandParams, result?: CommandResult) => boolean;
729
+ executeRangeCommand?: (editor: OnesEditor, range: SelectionRange, command: CommandItemWithSource, params: CommandParams, result?: CommandResult) => boolean;
730
+ executeCommand?: (editor: OnesEditor, block: BlockElement, range: SelectionRange, item: CommandItemWithSource, params: CommandParams, result?: CommandResult) => boolean;
731
+ filterCommands?: (editor: OnesEditor, block: BlockElement, range: SelectionRange, commands: CommandItemWithSource[]) => CommandItemWithSource[] | undefined;
732
+ beforeExecuteCommand?: (editor: OnesEditor, block: BlockElement, range: SelectionRange, item: CommandItemWithSource, params: CommandParams) => boolean | undefined;
733
+ afterExecuteCommand?: (editor: OnesEditor, block: BlockElement, range: SelectionRange, item: CommandItemWithSource, params: CommandParams, result: CommandResult) => void;
734
+ }
735
+ export interface CommandItemWithSource extends CommandItem {
732
736
  source: string;
733
737
  }
738
+ export interface CommandFilter {
739
+ filter: (editor: OnesEditor, range: SelectionRange, items: CommandItemWithSource[], source: string[]) => CommandItemWithSource[];
740
+ }
741
+ export type CommandFilterId = keyof any;
734
742
  export interface OnesEditorCommandProviders {
743
+ commandFilters?: Map<CommandFilterId, CommandFilter>;
744
+ addFilter?: (id: CommandFilterId, filter: CommandFilter) => void;
745
+ filterItems?: (range: SelectionRange, items: CommandItemWithSource[]) => CommandItemWithSource[];
735
746
  registerCommandProvider: (provider: OnesEditorCommandProvider) => void;
736
747
  getCommandProviders: () => OnesEditorCommandProvider[];
737
748
  getCommandProvider: (id: string) => OnesEditorCommandProvider;
738
- getCommands: (range: SelectionRange, source: string) => BlockCommandItemWithSource[];
739
- executeCommand: (range: SelectionRange, item: BlockCommandItemWithSource, params: CommandParams) => {
749
+ getCommands: (range: SelectionRange) => CommandItemWithSource[];
750
+ executeCommand: (range: SelectionRange, item: CommandItemWithSource, params: CommandParams) => {
740
751
  [index: string]: CommandResult;
741
752
  };
742
- getEmptyBlockTextAttributes: (editor: OnesEditor, blockId: string) => DocBlockTextAttributes | undefined;
743
753
  }
744
754
  export interface EditorDocLocalActionCallbacks {
745
755
  onBeforeUpdateBlockText: (containerId: string, blockId: string, oldText: DocBlockText, newText: DocBlockText, newRange: OnesEditorDocRange) => void;
@@ -753,5 +763,12 @@ export interface OnesEditorBlockHook {
753
763
  create?: (editor: OnesEditor, path: BlockPath, container: ContainerElement, blockElement: BlockElement, blockData: DocBlock) => void;
754
764
  update?: (editor: OnesEditor, path: BlockPath, container: ContainerElement, blockElement: BlockElement, blockData: DocBlock) => void;
755
765
  writable?: (editor: OnesEditor, blockElement: BlockElement | BlockElement[]) => boolean | undefined;
756
- commands?: (editor: OnesEditor, blockElement: BlockElement) => BlockCommands;
766
+ commands?: (editor: OnesEditor, blockElement: BlockElement, child: TextBlockContentChild | null) => BlockCommands | undefined;
767
+ }
768
+ export interface MobileClient {
769
+ getViewPortHeight: () => number;
770
+ getOffsetHeight: () => number;
771
+ virtualViewportHeight: number;
772
+ virtualViewportOffsetTop: number;
773
+ isAndroidApp: boolean;
757
774
  }