@ones-editor/editor 2.1.1-beta.14 → 2.1.1-beta.16

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 (144) 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/comments/src/comments-helper/old-version-comment.d.ts +16 -0
  5. package/@ones-editor/comments/src/index.d.ts +3 -0
  6. package/@ones-editor/comments/src/text-comments/comments-command-provider.d.ts +4 -3
  7. package/@ones-editor/core/src/core/blocks/common/block-properties.d.ts +9 -9
  8. package/@ones-editor/core/src/core/blocks/common/execute-block-command.d.ts +2 -2
  9. package/@ones-editor/core/src/core/blocks/complex-blocks/child-blocks.d.ts +2 -1
  10. package/@ones-editor/core/src/core/blocks/complex-blocks/complex-block-helper.d.ts +2 -1
  11. package/@ones-editor/core/src/core/blocks/text-blocks/base/child.d.ts +2 -7
  12. package/@ones-editor/core/src/core/command-providers/abstract-providers.d.ts +25 -0
  13. package/@ones-editor/core/src/core/command-providers/block-attributes.d.ts +14 -0
  14. package/@ones-editor/core/src/core/command-providers/commands/index.d.ts +2 -0
  15. package/@ones-editor/core/src/core/command-providers/commands/inject-source.d.ts +3 -0
  16. package/@ones-editor/core/src/core/command-providers/commands/merge-commands.d.ts +3 -0
  17. package/@ones-editor/core/src/core/command-providers/commands/range-commands.d.ts +2 -5
  18. package/@ones-editor/core/src/core/command-providers/editor-command-providers.d.ts +4 -14
  19. package/@ones-editor/core/src/core/command-providers/index.d.ts +3 -1
  20. package/@ones-editor/core/src/core/composition/editor-input.d.ts +1 -1
  21. package/@ones-editor/core/src/core/containers/root-container.d.ts +4 -4
  22. package/@ones-editor/core/src/core/doc/doc.d.ts +3 -0
  23. package/@ones-editor/core/src/core/doc/rich-text/text-style.d.ts +2 -0
  24. package/@ones-editor/core/src/core/editor/actions/clear-selected-contents.d.ts +2 -2
  25. package/@ones-editor/core/src/core/selection/actions/index.d.ts +2 -1
  26. package/@ones-editor/core/src/core/selection/index.d.ts +1 -0
  27. package/@ones-editor/core/src/core/selection/select-handler.d.ts +3 -3
  28. package/@ones-editor/core/src/core/types.d.ts +36 -28
  29. package/@ones-editor/core/src/helper/hovering-block.d.ts +1 -1
  30. package/@ones-editor/core/src/utils/dom.d.ts +3 -0
  31. package/@ones-editor/core/src/utils/drag-drop.d.ts +8 -3
  32. package/@ones-editor/embed-block-helper/src/block-properties/embed-block-properties.d.ts +6 -5
  33. package/@ones-editor/graph-embed/src/helper/graph-block-commands.d.ts +5 -19
  34. package/@ones-editor/image-embed/src/hovering-toolbar/index.d.ts +1 -1
  35. package/@ones-editor/image-embed/src/splitter-resizer/index.d.ts +3 -3
  36. package/@ones-editor/layout-block/src/command-filter.d.ts +7 -0
  37. package/@ones-editor/media-embed/src/core/hovering-toolbar/index.d.ts +1 -1
  38. package/@ones-editor/media-embed/src/utils/dom.d.ts +2 -0
  39. package/@ones-editor/mention/src/locale/en-us.d.ts +1 -0
  40. package/@ones-editor/mention/src/locale/ja-jp.d.ts +1 -0
  41. package/@ones-editor/mention/src/locale/zh-cn.d.ts +1 -0
  42. package/@ones-editor/mention/src/mention.d.ts +14 -0
  43. package/@ones-editor/mobile-helper/src/fixed-toolbar/fixed-providers.d.ts +6 -0
  44. package/@ones-editor/mobile-helper/src/fixed-toolbar/index.d.ts +18 -0
  45. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/align-dropdown.d.ts +9 -0
  46. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/group.d.ts +7 -0
  47. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/insert-menu.d.ts +15 -0
  48. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/insert.d.ts +8 -0
  49. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/paragraph.d.ts +9 -0
  50. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/text-dropdown.d.ts +9 -0
  51. package/@ones-editor/mobile-helper/src/fixed-toolbar/providers/turn-into.d.ts +8 -0
  52. package/@ones-editor/mobile-helper/src/fixed-toolbar/toolbar-handler.d.ts +11 -0
  53. package/@ones-editor/mobile-helper/src/index.d.ts +6 -0
  54. package/@ones-editor/mobile-helper/src/selection-gripper/index.d.ts +19 -0
  55. package/@ones-editor/mobile-helper/src/selection-gripper/select-handle.d.ts +3 -0
  56. package/@ones-editor/sharedb-doc/src/index.d.ts +3 -0
  57. package/@ones-editor/table-block/src/commands/index.d.ts +2 -0
  58. package/@ones-editor/table-block/src/commands/table-block-commands.d.ts +4 -3
  59. package/@ones-editor/table-block/src/index.d.ts +4 -1
  60. package/@ones-editor/table-block/src/table-block/cell-menu/table-cell-dom.d.ts +6 -0
  61. package/@ones-editor/table-block/src/table-block/table-resize/resize-drag-drop.d.ts +4 -4
  62. package/@ones-editor/text-commands/src/index.d.ts +1 -2
  63. package/@ones-editor/tsconfig.tsbuildinfo +1 -1
  64. package/@ones-editor/ui/src/block-menu/block-command-providers.d.ts +8 -0
  65. package/@ones-editor/{block-menu → ui}/src/block-menu/index.d.ts +3 -1
  66. package/@ones-editor/ui/src/index.d.ts +29 -8
  67. package/@ones-editor/ui/src/locale/en-us.d.ts +1 -0
  68. package/@ones-editor/ui/src/locale/ja-jp.d.ts +1 -0
  69. package/@ones-editor/ui/src/locale/zh-cn.d.ts +1 -0
  70. package/@ones-editor/ui/src/providers/align-dropdown.d.ts +10 -0
  71. package/@ones-editor/ui/src/{toolbar/commands → providers}/align.d.ts +4 -4
  72. package/@ones-editor/ui/src/providers/block-hook-provider.d.ts +16 -0
  73. package/@ones-editor/ui/src/providers/clipboard-provider.d.ts +10 -0
  74. package/@ones-editor/ui/src/providers/color-provider.d.ts +18 -0
  75. package/@ones-editor/ui/src/providers/edit-link-provider.d.ts +6 -0
  76. package/@ones-editor/ui/src/providers/heading.d.ts +13 -0
  77. package/@ones-editor/ui/src/providers/inline-code-provider.d.ts +10 -0
  78. package/@ones-editor/ui/src/providers/inline-style-provider.d.ts +10 -0
  79. package/@ones-editor/ui/src/providers/insert-above.d.ts +9 -0
  80. package/@ones-editor/ui/src/providers/insert-after.d.ts +9 -0
  81. package/@ones-editor/ui/src/providers/insert-box-provider.d.ts +12 -0
  82. package/@ones-editor/ui/src/providers/insert-group.d.ts +7 -0
  83. package/@ones-editor/ui/src/providers/insert-menu.d.ts +16 -0
  84. package/@ones-editor/ui/src/providers/link.d.ts +12 -0
  85. package/@ones-editor/ui/src/providers/list.d.ts +13 -0
  86. package/@ones-editor/ui/src/providers/mobile-link-provider.d.ts +10 -0
  87. package/@ones-editor/ui/src/providers/paragraph.d.ts +9 -0
  88. package/@ones-editor/ui/src/providers/proxy-provider.d.ts +9 -0
  89. package/@ones-editor/ui/src/providers/quoted.d.ts +10 -0
  90. package/@ones-editor/ui/src/providers/script-with-dropdown.d.ts +9 -0
  91. package/@ones-editor/ui/src/providers/tab-provider.d.ts +10 -0
  92. package/@ones-editor/ui/src/providers/text-command-provider.d.ts +15 -0
  93. package/@ones-editor/ui/src/providers/text-fixed-provider.d.ts +16 -0
  94. package/@ones-editor/ui/src/providers/text-script-provider.d.ts +10 -0
  95. package/@ones-editor/ui/src/providers/text-styles.d.ts +9 -0
  96. package/@ones-editor/ui/src/providers/turn-into.d.ts +9 -0
  97. package/@ones-editor/ui/src/providers/utils/add-section.d.ts +2 -0
  98. package/@ones-editor/ui/src/{quick-menu → providers/utils}/basic-commands.d.ts +1 -2
  99. package/@ones-editor/ui/src/providers/utils/clipboard.d.ts +6 -0
  100. package/@ones-editor/ui/src/providers/utils/inject-block-options.d.ts +5 -0
  101. package/@ones-editor/ui/src/providers/utils/text-commands.d.ts +3 -0
  102. package/@ones-editor/{text-commands/src → ui/src/providers/utils}/text-styles.d.ts +3 -1
  103. package/@ones-editor/ui/src/quick-menu/index.d.ts +7 -19
  104. package/@ones-editor/ui/src/quick-menu/quick-command-providers.d.ts +8 -0
  105. package/@ones-editor/ui/src/quick-menu/types.d.ts +0 -4
  106. package/@ones-editor/ui/src/readonly-toolbar/add-comment-to-old-doc.d.ts +22 -0
  107. package/@ones-editor/ui/src/readonly-toolbar/index.d.ts +30 -0
  108. package/@ones-editor/ui/src/readonly-toolbar/types.d.ts +12 -0
  109. package/@ones-editor/ui/src/toolbar/link-commands.d.ts +11 -0
  110. package/@ones-editor/ui/src/toolbar/text-commands.d.ts +2 -2
  111. package/@ones-editor/ui/src/utils/hide-toolbar.d.ts +2 -0
  112. package/@ones-editor/ui-base/src/auto-suggest/auto-suggest-menu.d.ts +2 -1
  113. package/@ones-editor/ui-base/src/color-button/text-color-item.d.ts +1 -0
  114. package/@ones-editor/ui-base/src/color-palette/color-palette.d.ts +1 -1
  115. package/@ones-editor/ui-base/src/command-bar/command-bar.d.ts +1 -1
  116. package/@ones-editor/ui-base/src/command-bar/fixed-toolbar.d.ts +3 -1
  117. package/@ones-editor/ui-base/src/command-bar/types.d.ts +3 -1
  118. package/@ones-editor/ui-base/src/index.d.ts +2 -0
  119. package/@ones-editor/ui-base/src/input/create-input.d.ts +23 -3
  120. package/@ones-editor/ui-base/src/mobile-command-bar/init-menu-item.d.ts +3 -0
  121. package/@ones-editor/ui-base/src/mobile-command-bar/mobile-bottom-menu.d.ts +22 -0
  122. package/@ones-editor/ui-base/src/popup/popup.d.ts +1 -1
  123. package/@ones-editor/{ui → ui-base}/src/text-button/index.d.ts +1 -1
  124. package/dist/comments/local-doc-comments-provider.d.ts +2 -1
  125. package/dist/index.d.ts +2 -1
  126. package/dist/index.js +65143 -62575
  127. package/dist/types.d.ts +1 -1
  128. package/package.json +1 -1
  129. package/@ones-editor/block-menu/src/block-menu/items/block-command-items.d.ts +0 -3
  130. package/@ones-editor/block-menu/src/block-menu/items/index.d.ts +0 -5
  131. package/@ones-editor/block-menu/src/block-menu/items/insert-block-items/index.d.ts +0 -5
  132. package/@ones-editor/block-menu/src/block-menu/items/text-styles/text-style-item.d.ts +0 -30
  133. package/@ones-editor/block-menu/src/block-menu/items/types.d.ts +0 -5
  134. package/@ones-editor/text-commands/src/text-command-provider.d.ts +0 -24
  135. package/@ones-editor/text-commands/src/text-commands.d.ts +0 -4
  136. package/@ones-editor/ui/src/quick-menu/basic-menu-items.d.ts +0 -16
  137. package/@ones-editor/ui/src/quick-menu/inline-box-items.d.ts +0 -8
  138. package/@ones-editor/ui/src/quick-menu/insert-empty-block.d.ts +0 -4
  139. package/@ones-editor/ui/src/quick-menu/order.d.ts +0 -1
  140. package/@ones-editor/ui/src/quick-menu/quick-menu-items.d.ts +0 -9
  141. package/@ones-editor/ui/src/toolbar/commands/paragraph.d.ts +0 -11
  142. package/@ones-editor/ui/src/toolbar/commands/turn-into.d.ts +0 -10
  143. package/@ones-editor/ui/src/toolbar/merge-commands.d.ts +0 -2
  144. /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
  }
@@ -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>;
@@ -8,4 +8,7 @@ export { OnesEditorComments };
8
8
  export type { CommentItem } from './comment-item';
9
9
  export type { CommentGroupItem } from './comments-list/group-item';
10
10
  export { removeCommentFromBlock } from './actions/remove-comment-from-block';
11
+ export { addCommentToTextBlocks } from './actions/add-comment-to-text-block';
12
+ export { addCommentToBlock } from './actions/add-comment-to-block';
11
13
  export { editorAddComment } from './actions/editor-add-comment';
14
+ 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): 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,4 @@
1
- import { OnesEditor, BlockElement, BlockPosition, ContainerElement, ComplexBlockPosition, GetChildContainerOptions } from '../../types';
1
+ import { OnesEditor, BlockElement, BlockPosition, ContainerElement, ComplexBlockPosition, GetChildContainerOptions, ComplexSelectionRange } from '../../types';
2
2
  export declare function complexBlockGetAllChildContainers(editor: OnesEditor, block: BlockElement, options?: GetChildContainerOptions): ContainerElement[];
3
3
  export declare function complexBlockGetSelectedContainers(editor: OnesEditor, block: BlockElement, start: BlockPosition, end: BlockPosition): ContainerElement[];
4
4
  export declare function isFirstChildBlockInComplexBlock(editor: OnesEditor, childBlock: BlockElement): boolean;
@@ -13,3 +13,4 @@ export declare function complexBlockAdjustSelectionPos(editor: OnesEditor, compl
13
13
  anchor: ComplexBlockPosition;
14
14
  focus: ComplexBlockPosition;
15
15
  };
16
+ export declare function isFullSelectedOneComplexBlock(editor: OnesEditor, complexRange?: ComplexSelectionRange): boolean;
@@ -1,10 +1,5 @@
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, TextBlockContentTextChild, TextBlockContentBoxChild, TextBlockContentInsertionChild, TextBlockContentChild } from '../../../types';
2
+ export type { TextBlockContentTextChild, TextBlockContentBoxChild, TextBlockContentInsertionChild, TextBlockContentChild };
8
3
  export type TextBlockContentChildren = TextBlockContentChild[];
9
4
  export type TextBlockContentChildType = 'text' | 'box' | 'insertion';
10
5
  export declare function isTextBlockContentChild(elem: Element): boolean;
@@ -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,14 @@
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
+ constructor(editor: OnesEditor);
8
+ clear: () => void;
9
+ destroy(): void;
10
+ getEmptyBlockTextAttributes(blockId: string): DocBlockTextAttributes | undefined;
11
+ setActiveBlockAttributes: (attributes: CommandParams) => void;
12
+ setEmptyBlockTextAttributes: (blockId: string, attributes: CommandParams) => void;
13
+ setActiveAttribute: (attribute: string, value: unknown) => void;
14
+ }
@@ -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,3 @@
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[];
@@ -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,5 @@
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 { OnesEditorCommandProviders } from '../types';
2
+ import { AbstractProvider } from './abstract-providers';
3
+ export default class EditorCommandProviders extends AbstractProvider implements OnesEditorCommandProviders {
4
+ id: string;
15
5
  }
@@ -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;
@@ -12,12 +12,12 @@ export declare class RootContainer {
12
12
  destroy(): void;
13
13
  handleContextMenu: (event: MouseEvent) => void;
14
14
  handleResize: () => void;
15
- handleClick: (event: MouseEvent) => void;
16
- handleBlockClick: (event: MouseEvent, block: BlockElement, elem: Element) => void;
15
+ handleClick: (event: MouseEvent | TouchEvent) => void;
16
+ handleBlockClick: (event: MouseEvent | TouchEvent, block: BlockElement, elem: Element) => void;
17
17
  handleDblClick: (event: MouseEvent) => void;
18
- handleMouseDown: (event: MouseEvent) => void;
18
+ handleMouseDown: (event: TouchEvent | MouseEvent) => void;
19
19
  handleMouseMove: (event: MouseEvent) => void;
20
- handleMouseUp: (event: MouseEvent) => void;
20
+ handleMouseUp: (event: MouseEvent | TouchEvent) => void;
21
21
  handleCaptureClick: (event: MouseEvent) => void;
22
22
  handleCaptureDbClick: (event: MouseEvent) => void;
23
23
  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;
@@ -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,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
  };
@@ -52,6 +58,7 @@ export type BlockPosition = SimpleBlockPosition | ComplexBlockPosition;
52
58
  export interface BoxCommands {
53
59
  group: string;
54
60
  commands: CommandItem[];
61
+ startGroup?: boolean;
55
62
  executeCommand: (editor: OnesEditor, block: BlockElement, box: BoxElement, item: CommandItem) => unknown;
56
63
  }
57
64
  export interface BoxProperties {
@@ -119,7 +126,6 @@ export interface Closeable {
119
126
  click: (item: CommandItem, target: HTMLElement) => void;
120
127
  }
121
128
  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
129
  export interface CommandItem {
124
130
  id: string;
125
131
  name: string;
@@ -130,7 +136,7 @@ export interface CommandItem {
130
136
  type?: CommandItemType;
131
137
  element?: HTMLElement | ((item: CommandItem) => HTMLElement);
132
138
  icon?: string;
133
- childrenType?: 'menu' | 'toolbar';
139
+ childrenType?: 'menu' | 'toolbar' | 'mobile-bottom-menu';
134
140
  children?: CommandItem[];
135
141
  childrenMenuId?: string;
136
142
  data?: unknown;
@@ -152,18 +158,8 @@ export interface CommandItem {
152
158
  /**
153
159
  * defaults to true
154
160
  */
155
- shouldShown?: (currentBlock: BlockElement | undefined, menuType: CommandItemMenuType) => boolean;
156
- /**
157
- * defaults to true
158
- */
159
161
  clickToClose?: boolean;
160
162
  }
161
- export interface BlockCommandItem extends CommandItem {
162
- blockId: string;
163
- blockType: string;
164
- blockKind: BlockKind;
165
- groupIndex: number;
166
- }
167
163
  export type StyleType = boolean | string | number;
168
164
  export type BlockStyles = {
169
165
  [index: string]: StyleType;
@@ -174,9 +170,11 @@ export type BlockPathComponent = {
174
170
  };
175
171
  export type BlockPath = BlockPathComponent[];
176
172
  export interface BlockCommands {
173
+ element?: HTMLElement;
177
174
  group: string;
178
175
  commands: CommandItem[];
179
- executeCommand: (editor: OnesEditor, block: BlockElement, item: CommandItem) => unknown;
176
+ startGroup?: boolean;
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>;
@@ -659,11 +657,11 @@ export interface OnesEditorInput {
659
657
  export interface OnesEditorSelectionHandler {
660
658
  isSelecting: () => boolean;
661
659
  stopSelection: () => void;
662
- handleMouseDown: (event: MouseEvent, options: {
660
+ handleMouseDown: (event: MouseEvent | TouchEvent, options: {
663
661
  autoScroll: boolean;
664
662
  }) => void;
665
663
  handleMouseMove: (event: MouseEvent) => void;
666
- handleMouseUp: (event: MouseEvent) => void;
664
+ handleMouseUp: (event: MouseEvent | TouchEvent) => void;
667
665
  handleDblClick: (event: MouseEvent) => void;
668
666
  handleTripleClick: (event: MouseEvent) => void;
669
667
  }
@@ -714,32 +712,42 @@ export interface OnesEditorInsertions {
714
712
  }
715
713
  export type CommandParams = {
716
714
  [index: string]: unknown;
715
+ } & {
716
+ source?: string[];
717
717
  };
718
718
  export type CommandResult = {
719
719
  [index: string]: unknown;
720
720
  };
721
721
  export interface OnesEditorCommandProvider {
722
722
  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 {
723
+ groupIndex?: number;
724
+ getAvailableCommands: (editor: OnesEditor, block: BlockElement, range: SelectionRange, params?: CommandParams) => CommandItem[];
725
+ getInsertCommands?: (editor: OnesEditor, containerId: string) => CommandItem[];
726
+ executeInsertCommand?: (editor: OnesEditor, containerId: string, blockIndex: number, item: CommandItem, params: CommandParams, result?: CommandResult) => boolean;
727
+ executeRangeCommand?: (editor: OnesEditor, range: SelectionRange, command: CommandItemWithSource, params: CommandParams, result?: CommandResult) => boolean;
728
+ executeCommand?: (editor: OnesEditor, block: BlockElement, range: SelectionRange, item: CommandItem, params: CommandParams, result?: CommandResult) => boolean;
729
+ filterCommands?: (editor: OnesEditor, block: BlockElement, range: SelectionRange, commands: CommandItemWithSource[]) => CommandItemWithSource[] | undefined;
730
+ beforeExecuteCommand?: (editor: OnesEditor, block: BlockElement, range: SelectionRange, item: CommandItem, params: CommandParams) => boolean | undefined;
731
+ afterExecuteCommand?: (editor: OnesEditor, block: BlockElement, range: SelectionRange, item: CommandItem, params: CommandParams, result: CommandResult) => void;
732
+ }
733
+ export interface CommandItemWithSource extends CommandItem {
732
734
  source: string;
733
735
  }
736
+ export interface CommandFilter {
737
+ filter: (editor: OnesEditor, range: SelectionRange, items: CommandItemWithSource[], source: string[]) => CommandItemWithSource[];
738
+ }
739
+ export type CommandFilterId = keyof any;
734
740
  export interface OnesEditorCommandProviders {
741
+ commandFilters?: Map<CommandFilterId, CommandFilter>;
742
+ addFilter?: (id: CommandFilterId, filter: CommandFilter) => void;
743
+ filterItems?: (range: SelectionRange, items: CommandItemWithSource[]) => CommandItemWithSource[];
735
744
  registerCommandProvider: (provider: OnesEditorCommandProvider) => void;
736
745
  getCommandProviders: () => OnesEditorCommandProvider[];
737
746
  getCommandProvider: (id: string) => OnesEditorCommandProvider;
738
- getCommands: (range: SelectionRange, source: string) => BlockCommandItemWithSource[];
739
- executeCommand: (range: SelectionRange, item: BlockCommandItemWithSource, params: CommandParams) => {
747
+ getCommands: (range: SelectionRange) => CommandItemWithSource[];
748
+ executeCommand: (range: SelectionRange, item: CommandItemWithSource, params: CommandParams) => {
740
749
  [index: string]: CommandResult;
741
750
  };
742
- getEmptyBlockTextAttributes: (editor: OnesEditor, blockId: string) => DocBlockTextAttributes | undefined;
743
751
  }
744
752
  export interface EditorDocLocalActionCallbacks {
745
753
  onBeforeUpdateBlockText: (containerId: string, blockId: string, oldText: DocBlockText, newText: DocBlockText, newRange: OnesEditorDocRange) => void;
@@ -753,5 +761,5 @@ export interface OnesEditorBlockHook {
753
761
  create?: (editor: OnesEditor, path: BlockPath, container: ContainerElement, blockElement: BlockElement, blockData: DocBlock) => void;
754
762
  update?: (editor: OnesEditor, path: BlockPath, container: ContainerElement, blockElement: BlockElement, blockData: DocBlock) => void;
755
763
  writable?: (editor: OnesEditor, blockElement: BlockElement | BlockElement[]) => boolean | undefined;
756
- commands?: (editor: OnesEditor, blockElement: BlockElement) => BlockCommands;
764
+ commands?: (editor: OnesEditor, blockElement: BlockElement, child: TextBlockContentChild | null) => BlockCommands | undefined;
757
765
  }
@@ -15,7 +15,7 @@ export interface OnesEditorHoveringBlockFinder extends OnesEditorCustom {
15
15
  export default class OnesEditorHoveringBlock extends TypedEmitter<OnesEditorHoveringBlockEvents> {
16
16
  private editor;
17
17
  private hoveringBlock;
18
- private hoveringElem;
18
+ hoveringElem: EventTarget | null;
19
19
  private hoveringTextChild;
20
20
  private filters;
21
21
  private finders;
@@ -37,4 +37,7 @@ export declare function bindKeyDownEvent(input: HTMLInputElement | HTMLTextAreaE
37
37
  export declare function getElementFromPoint(x: number, y: number, options?: {
38
38
  noFilter: boolean;
39
39
  }): Element;
40
+ export declare function ensureIsMobileEvent(events: MouseEvent | TouchEvent): events is TouchEvent;
41
+ export declare function createMouseEventFromTouchEvent(event: TouchEvent, type: 'mousedown' | 'mousemove' | 'mouseup' | 'click'): MouseEvent;
42
+ export declare function bindTouchEnd(elem: HTMLElement | Document, callback: (e: any) => void): void;
40
43
  export {};
@@ -1,6 +1,6 @@
1
- export type DragStartHandler<T> = (drag: DragDrop<T>, event: MouseEvent, elem: HTMLElement) => void;
2
- export type DraggingHandler<T> = (drag: DragDrop<T>, event: MouseEvent, elem: HTMLElement, deltaX: number, deltaY: number) => void;
3
- export type DragEndHandler<T> = (drag: DragDrop<T>, event: MouseEvent, elem: HTMLElement, deltaX: number, deltaY: number) => void;
1
+ export type DragStartHandler<T> = (drag: DragDrop<T>, event: MouseEvent | TouchEvent, elem: HTMLElement) => void;
2
+ export type DraggingHandler<T> = (drag: DragDrop<T>, event: MouseEvent | TouchEvent, elem: HTMLElement, deltaX: number, deltaY: number) => void;
3
+ export type DragEndHandler<T> = (drag: DragDrop<T>, event: MouseEvent | TouchEvent, elem: HTMLElement, deltaX: number, deltaY: number) => void;
4
4
  export interface DragDropOptions<T> {
5
5
  elem: HTMLElement;
6
6
  onDragStart: DragStartHandler<T>;
@@ -10,6 +10,7 @@ export interface DragDropOptions<T> {
10
10
  minThreshold?: number;
11
11
  cursor?: string;
12
12
  mouseDownEvent?: MouseEvent;
13
+ mobile?: boolean;
13
14
  }
14
15
  export declare const MIN_DISTANCE_THRESHOLD = 3;
15
16
  export declare class DragDrop<T> {
@@ -37,5 +38,9 @@ export declare class DragDrop<T> {
37
38
  private onDragging;
38
39
  private onDragEnd;
39
40
  destroy(): void;
41
+ static getEventPosition(event: MouseEvent | TouchEvent): {
42
+ x: number;
43
+ y: number;
44
+ };
40
45
  }
41
46
  export declare function registerDragDrop<T>(options: DragDropOptions<T>): DragDrop<T>;
@@ -1,12 +1,13 @@
1
1
  import { BlockCommands, BlockElement, CommandItem, OnesEditor } from '../../../../@ones-editor/core';
2
- export type PresetCommandId = 'edit' | 'add-comment';
3
- export interface StandardEmbedBlockProperties<T = PresetCommandId> {
2
+ export type CommandId = 'edit' | 'add-comment' | 'separator';
3
+ export interface StandardEmbedBlockProperties<T = CommandId> {
4
4
  presetIds?: T[];
5
- extCommands?: CommandItem[];
5
+ extIds?: T[];
6
+ extCommands?: CommandItem[] | ((editor: OnesEditor, block: BlockElement) => CommandItem[]);
6
7
  handleExecuteCommand?: (editor: OnesEditor, block: BlockElement, item: CommandItem) => boolean;
7
8
  }
8
9
  export declare function addCommentToBlock(editor: OnesEditor, block: BlockElement): boolean;
9
- export declare class StandardEmbedBlockCommands<T = PresetCommandId> implements BlockCommands {
10
+ export declare class StandardEmbedBlockCommands<T = CommandId> implements BlockCommands {
10
11
  protected editor: OnesEditor;
11
12
  protected block: BlockElement;
12
13
  protected properties?: StandardEmbedBlockProperties<T> | undefined;
@@ -18,6 +19,6 @@ export declare class StandardEmbedBlockCommands<T = PresetCommandId> implements
18
19
  }
19
20
  export declare function getStandardEmbedBlockProperties(editor: OnesEditor, block: BlockElement, properties?: StandardEmbedBlockProperties): {
20
21
  blockCommands: {
21
- 'hovering-toolbar': StandardEmbedBlockCommands<PresetCommandId>;
22
+ 'hovering-toolbar': StandardEmbedBlockCommands<CommandId>;
22
23
  };
23
24
  };
@@ -1,25 +1,11 @@
1
1
  import { BlockElement } from '../../../../@ones-editor/core';
2
- import { StandardEmbedBlockCommands } from '../../../../@ones-editor/embed-block-helper';
3
- import type { CommandItem, OnesEditor } from '../../../../@ones-editor/core';
4
- import type { StandardEmbedBlockProperties } from '../../../../@ones-editor/embed-block-helper';
5
- export type PresetCommandId = 'edit' | 'help';
2
+ import type { OnesEditor } from '../../../../@ones-editor/core';
3
+ import { CommandId, type StandardEmbedBlockProperties } from '../../../../@ones-editor/embed-block-helper';
6
4
  export type GraphType = 'mermaid' | 'flowchart' | 'plantuml';
7
- export type GraphEmbedBlockProperties = StandardEmbedBlockProperties<PresetCommandId>;
8
- declare class GraphBlockCommands extends StandardEmbedBlockCommands<PresetCommandId> {
9
- editor: OnesEditor;
10
- block: BlockElement;
11
- graphType: GraphType;
12
- properties?: GraphEmbedBlockProperties | undefined;
13
- group: string;
14
- _commands: CommandItem[];
15
- constructor(editor: OnesEditor, block: BlockElement, graphType: GraphType, properties?: GraphEmbedBlockProperties | undefined);
16
- get commands(): CommandItem[];
17
- executeCommand(editor: OnesEditor, block: BlockElement, item: CommandItem): void;
18
- }
5
+ export type GraphEmbedBlockProperties = StandardEmbedBlockProperties;
19
6
  export declare function getGraphEmbedBlockProperties(editor: OnesEditor, block: BlockElement, type: 'mermaid' | 'flowchart' | 'plantuml', properties?: GraphEmbedBlockProperties): {
7
+ abstract: string;
20
8
  blockCommands: {
21
- 'hovering-toolbar': GraphBlockCommands;
9
+ 'hovering-toolbar': import("@ones-editor/embed-block-helper").StandardEmbedBlockCommands<CommandId>;
22
10
  };
23
- abstract: string;
24
11
  };
25
- export {};
@@ -16,7 +16,7 @@ export default class ImageHoveringToolbarCommands implements BlockCommands {
16
16
  type: CommandItemType;
17
17
  icon?: undefined;
18
18
  })[];
19
- private createIconItem;
19
+ isHoveringImageEmpty: () => boolean;
20
20
  get commands(): CommandItem[];
21
21
  executeCommand(editor: OnesEditor, block: BlockElement, item: CommandItem): void;
22
22
  }
@@ -11,7 +11,7 @@ export declare class ImageSplitterResizer implements DragDropOptions<ImageSplitt
11
11
  cursor: string;
12
12
  initWidths: number[];
13
13
  constructor(editor: OnesEditor, elem: HTMLElement, data: ImageSplitterResizerData, mouseDownEvent: MouseEvent);
14
- onDragStart(drag: DragDrop<ImageSplitterResizerData>, event: MouseEvent, elem: HTMLElement): void;
15
- onDragging(drag: DragDrop<ImageSplitterResizerData>, event: MouseEvent, elem: HTMLElement, deltaX: number, deltaY: number): void;
16
- onDragEnd(drag: DragDrop<ImageSplitterResizerData>, event: MouseEvent, elem: HTMLElement, deltaX: number, deltaY: number): void;
14
+ onDragStart(drag: DragDrop<ImageSplitterResizerData>, event: MouseEvent | TouchEvent, elem: HTMLElement): void;
15
+ onDragging(drag: DragDrop<ImageSplitterResizerData>, event: MouseEvent | TouchEvent, elem: HTMLElement, deltaX: number, deltaY: number): void;
16
+ onDragEnd(drag: DragDrop<ImageSplitterResizerData>, event: MouseEvent | TouchEvent, elem: HTMLElement, deltaX: number, deltaY: number): void;
17
17
  }