@ones-editor/editor 1.0.4 → 1.0.6

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 (28) hide show
  1. package/@ones-editor/code-block/src/index.d.ts +2 -2
  2. package/@ones-editor/context-menu/index.d.ts +3 -0
  3. package/@ones-editor/context-menu/package.json +8 -0
  4. package/@ones-editor/context-menu/src/helper/actions.d.ts +4 -0
  5. package/@ones-editor/context-menu/src/helper/command-items.d.ts +23 -0
  6. package/@ones-editor/context-menu/src/helper/utils.d.ts +4 -0
  7. package/@ones-editor/context-menu/src/locale/en-us.d.ts +14 -0
  8. package/@ones-editor/context-menu/src/locale/index.d.ts +1 -0
  9. package/@ones-editor/context-menu/src/locale/ja-jp.d.ts +14 -0
  10. package/@ones-editor/context-menu/src/locale/zh-cn.d.ts +14 -0
  11. package/@ones-editor/context-menu/src/menu/index.d.ts +17 -0
  12. package/@ones-editor/core/src/core/composition/editor-input.d.ts +1 -22
  13. package/@ones-editor/core/src/core/composition/index.d.ts +1 -1
  14. package/@ones-editor/core/src/core/input-handler/actions.d.ts +1 -0
  15. package/@ones-editor/core/src/core/input-handler/input-handler.d.ts +4 -3
  16. package/@ones-editor/core/src/core/keyboard/default-shortcuts.d.ts +2 -1
  17. package/@ones-editor/core/src/core/types.d.ts +24 -0
  18. package/@ones-editor/core/src/utils/blob-to-string.d.ts +1 -0
  19. package/@ones-editor/core/src/utils/index.d.ts +1 -0
  20. package/@ones-editor/graph-embed/src/config/index.d.ts +1 -1
  21. package/@ones-editor/image-embed/src/shortcuts/index.d.ts +2 -1
  22. package/@ones-editor/tsconfig.tsbuildinfo +1 -1
  23. package/@ones-editor/ui/src/toolbar/toolbar-handler.d.ts +1 -0
  24. package/@ones-editor/ui-base/src/auto-suggest/auto-suggest-menu.d.ts +1 -0
  25. package/@ones-editor/versions/src/version-dialog/version-list.d.ts +1 -1
  26. package/dist/index.js +183 -178
  27. package/dist/types.d.ts +2 -0
  28. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
- import { CodeBlock, CodeLineBlock, CodeTextDecorator } from './code-block';
1
+ import { CodeBlock, CodeLineBlock, CodeTextDecorator, CopyCodeInputHandler } from './code-block';
2
2
  import './locale';
3
3
  export * from './code-block/types';
4
- export { CodeBlock, CodeLineBlock, CodeTextDecorator };
4
+ export { CodeBlock, CodeLineBlock, CodeTextDecorator, CopyCodeInputHandler };
5
5
  export { isCodeBlock } from './code-block/code-block-dom';
@@ -0,0 +1,3 @@
1
+ import OnesEditorContextMenu from './src/menu';
2
+ import './src/locale';
3
+ export { OnesEditorContextMenu, };
@@ -0,0 +1,8 @@
1
+ {
2
+ "name": "@ones-editor/context-menu",
3
+ "version": "1.0.0",
4
+ "license": "MIT",
5
+ "type": "module",
6
+ "main": "./index.ts",
7
+ "types": "src/index.d.ts"
8
+ }
@@ -0,0 +1,4 @@
1
+ import type { OnesEditor } from '../../../../@ones-editor/core';
2
+ export declare function handleCopyAction(editor: OnesEditor): Promise<void>;
3
+ export declare function handleCopyMarkdownAction(editor: OnesEditor): Promise<void>;
4
+ export declare function handleCutAction(editor: OnesEditor): Promise<void>;
@@ -0,0 +1,23 @@
1
+ import type { OnesEditor, CommandItem } from '../../../../@ones-editor/core';
2
+ export default class ContextMenuCommandItems {
3
+ private editor;
4
+ private t;
5
+ private supportClipboard;
6
+ private isSecureContext;
7
+ private externalActionHandleMap;
8
+ constructor(editor: OnesEditor);
9
+ clipboardSupport(): void;
10
+ get isRangeCollapsed(): boolean;
11
+ get imageTypeCommandItems(): CommandItem[];
12
+ get copyTypeCommandItems(): CommandItem[];
13
+ get cutCommandItem(): CommandItem;
14
+ get stepItem(): CommandItem;
15
+ get selectionCommandItems(): CommandItem[];
16
+ destroy(): void;
17
+ handleActionByExternal: (item: CommandItem) => unknown;
18
+ getPasteCommandItem: () => Promise<CommandItem>;
19
+ getCommandItems: () => Promise<CommandItem[]>;
20
+ private getExternalContextMenuOptions;
21
+ private secureEnvTips;
22
+ private isFocusImageBlock;
23
+ }
@@ -0,0 +1,4 @@
1
+ import type { ImageObject } from '../../../../@ones-editor/image-embed';
2
+ export declare function blobToString(blob: Blob): Promise<string>;
3
+ export declare function isClipboardEmpty(): Promise<boolean>;
4
+ export declare function saveAs(resourceUrl: string, imageObject: ImageObject): void;
@@ -0,0 +1,14 @@
1
+ declare const _default: {
2
+ contextMenu: {
3
+ copyMarkdown: string;
4
+ paste: string;
5
+ copyImage: string;
6
+ copyImageUrl: string;
7
+ imageSaveAs: string;
8
+ newTabOpenImage: string;
9
+ selectBlock: string;
10
+ selectAll: string;
11
+ uneditableBlockSelected: string;
12
+ };
13
+ };
14
+ export default _default;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,14 @@
1
+ declare const _default: {
2
+ contextMenu: {
3
+ copyMarkdown: string;
4
+ paste: string;
5
+ copyImage: string;
6
+ copyImageUrl: string;
7
+ imageSaveAs: string;
8
+ newTabOpenImage: string;
9
+ selectBlock: string;
10
+ selectAll: string;
11
+ uneditableBlockSelected: string;
12
+ };
13
+ };
14
+ export default _default;
@@ -0,0 +1,14 @@
1
+ declare const _default: {
2
+ contextMenu: {
3
+ copyMarkdown: string;
4
+ paste: string;
5
+ copyImage: string;
6
+ copyImageUrl: string;
7
+ imageSaveAs: string;
8
+ newTabOpenImage: string;
9
+ selectBlock: string;
10
+ selectAll: string;
11
+ uneditableBlockSelected: string;
12
+ };
13
+ };
14
+ export default _default;
@@ -0,0 +1,17 @@
1
+ import type { OnesEditor } from '../../../../@ones-editor/core';
2
+ import './context-menu.scss';
3
+ declare class OnesEditorContextMenu {
4
+ private editor;
5
+ private contextMenu;
6
+ private contextMenuCommandItems;
7
+ constructor(editor: OnesEditor);
8
+ destroy: () => void;
9
+ private updateEditorCaret;
10
+ private handleContextMenu;
11
+ private isInMenu;
12
+ private isInEditor;
13
+ private handleContextMenuShown;
14
+ private handleContextMenuClick;
15
+ private handleImageEmbedAction;
16
+ }
17
+ export default OnesEditorContextMenu;
@@ -1,26 +1,5 @@
1
1
  import { OnesEditorInput, OnesEditor, OnesEditorInputHandler, OnesEditorUndoAction, RemoteChangeType, PasteOptions } from '../types';
2
- import { DocObject } from '../doc';
3
- export interface EditorInputCallbacks {
4
- onInsertText: (event: Event, text: string) => void;
5
- onCompositionStart: (event: Event) => void;
6
- onUpdateCompositionText: (event: Event, text: string, end: boolean) => void;
7
- onKeyDown: (event: KeyboardEvent) => boolean;
8
- onChanged: (action: OnesEditorUndoAction) => void;
9
- onRemoteChanged: (type: RemoteChangeType) => void;
10
- onFocus: () => void;
11
- onBlur: () => void;
12
- onPaste: (event: ClipboardEvent) => void;
13
- onPasteText: (text: string, options?: PasteOptions) => void;
14
- onCopy: (event: ClipboardEvent) => void;
15
- onCut: (event: ClipboardEvent) => void;
16
- addHandler: (handler: OnesEditorInputHandler) => void;
17
- removeHandler: (handler: OnesEditorInputHandler) => void;
18
- defaultInsertText: (editor: OnesEditor, containerId: string, blockIndex: number, offset: number, text: string) => void;
19
- defaultHandleKeydown: (editor: OnesEditor, event: KeyboardEvent) => boolean;
20
- destroy: () => void;
21
- pasteDoc: (doc: DocObject) => Promise<void>;
22
- forEach: (callback: (handler: OnesEditorInputHandler) => void) => void;
23
- }
2
+ import type { EditorInputCallbacks } from '../types';
24
3
  export declare class EditorInput implements OnesEditorInput {
25
4
  editor: OnesEditor;
26
5
  composing: boolean;
@@ -1,2 +1,2 @@
1
- export { editorCopyBlock, addMetaToDoc, injectDocToHtmlFragment } from './clipboard/copy';
1
+ export { editorCopyBlock, addMetaToDoc, injectDocToHtmlFragment, editorCopyWithoutEvent } from './clipboard/copy';
2
2
  export { copyResourcesFromDoc } from './clipboard/resources/copy-resources';
@@ -4,3 +4,4 @@ export declare function editorHandleDelete(editor: OnesEditor, event: Event): bo
4
4
  export declare function editorHandleBackspace(editor: OnesEditor, event: Event): boolean;
5
5
  export declare function editorHandleInsertBr(editor: OnesEditor, event: Event): boolean;
6
6
  export declare function editorHandlePastePlainText(editor: OnesEditor): boolean;
7
+ export declare function editorHandleCopyMarkdown(editor: OnesEditor): boolean;
@@ -1,6 +1,6 @@
1
- import { EditorInputCallbacks } from '../composition/editor-input';
2
- import { OnesEditor, OnesEditorInputHandler, OnesEditorUndoAction, RemoteChangeType, PasteOptions } from '../types';
1
+ import { OnesEditor, OnesEditorDocs, OnesEditorInputHandler, OnesEditorUndoAction, RemoteChangeType, PasteOptions } from '../types';
3
2
  import { DocObject } from '../doc';
3
+ import type { EditorInputCallbacks } from '../types';
4
4
  export declare class EditorInputHandlers implements EditorInputCallbacks {
5
5
  editor: OnesEditor;
6
6
  handlers: OnesEditorInputHandler[];
@@ -26,7 +26,8 @@ export declare class EditorInputHandlers implements EditorInputCallbacks {
26
26
  defaultInsertText(editor: OnesEditor, containerId: string, blockIndex: number, offset: number, text: string): void;
27
27
  defaultHandleKeydown(editor: OnesEditor, event: KeyboardEvent): boolean;
28
28
  pasteDoc(doc: DocObject): Promise<void>;
29
- private pasteDocs;
29
+ pasteDocs(docs: OnesEditorDocs, event: ClipboardEvent | null, files: File[]): Promise<void>;
30
30
  destroy(): void;
31
31
  forEach(cb: (handler: OnesEditorInputHandler) => void): void;
32
+ private getClipboardData;
32
33
  }
@@ -1,3 +1,4 @@
1
+ import * as inputActions from '../input-handler/actions';
1
2
  import { ShortcutRecords } from '../types';
2
3
  declare const DefaultShortcuts: ShortcutRecords;
3
- export { DefaultShortcuts };
4
+ export { DefaultShortcuts, inputActions };
@@ -389,6 +389,7 @@ export interface OnesEditorOptionalOptions {
389
389
  colors?: string[];
390
390
  scrollContainer?: HTMLElement;
391
391
  enableComments?: boolean;
392
+ enableContextMenu?: boolean;
392
393
  settingsProvider?: OnesEditorSettingsProvider;
393
394
  }
394
395
  export interface OnesEditorOptions {
@@ -397,6 +398,7 @@ export interface OnesEditorOptions {
397
398
  [index: string]: unknown;
398
399
  };
399
400
  enableComments?: boolean;
401
+ enableContextMenu?: boolean;
400
402
  scrollContainer?: HTMLElement;
401
403
  }
402
404
  export interface OnesEditorComponents {
@@ -565,10 +567,32 @@ export type RemoteChangeType = 'UpdateBlockText' | 'UpdateBlockData' | 'InsertBl
565
567
  export type PasteOptions = {
566
568
  toPlainText?: boolean;
567
569
  };
570
+ export interface EditorInputCallbacks {
571
+ onInsertText: (event: Event, text: string) => void;
572
+ onCompositionStart: (event: Event) => void;
573
+ onUpdateCompositionText: (event: Event, text: string, end: boolean) => void;
574
+ onKeyDown: (event: KeyboardEvent) => boolean;
575
+ onChanged: (action: OnesEditorUndoAction) => void;
576
+ onRemoteChanged: (type: RemoteChangeType) => void;
577
+ onFocus: () => void;
578
+ onBlur: () => void;
579
+ onPaste: (event: ClipboardEvent) => void;
580
+ onPasteText: (text: string, options?: PasteOptions) => void;
581
+ onCopy: (event: ClipboardEvent) => void;
582
+ onCut: (event: ClipboardEvent) => void;
583
+ addHandler: (handler: OnesEditorInputHandler) => void;
584
+ removeHandler: (handler: OnesEditorInputHandler) => void;
585
+ defaultInsertText: (editor: OnesEditor, containerId: string, blockIndex: number, offset: number, text: string) => void;
586
+ defaultHandleKeydown: (editor: OnesEditor, event: KeyboardEvent) => boolean;
587
+ destroy: () => void;
588
+ pasteDoc: (doc: DocObject) => Promise<void>;
589
+ forEach: (callback: (handler: OnesEditorInputHandler) => void) => void;
590
+ }
568
591
  export interface OnesEditorInput {
569
592
  readonly inputElement: HTMLInputElement;
570
593
  destroy: () => void;
571
594
  focus: () => void;
595
+ callbacks: EditorInputCallbacks;
572
596
  handleDocumentSelectionChange: () => void;
573
597
  handleCompositionstart: (event: CompositionEvent) => void;
574
598
  handleCompositionend: (event: CompositionEvent) => void;
@@ -0,0 +1 @@
1
+ export declare function blob2String(blob: Blob): Promise<string>;
@@ -31,6 +31,7 @@ export * from './number';
31
31
  export * from './string';
32
32
  export * from './overflow-text';
33
33
  export * from './abbreviation';
34
+ export * from './blob-to-string';
34
35
  export { genId };
35
36
  export { assert };
36
37
  export { SimpleCache };
@@ -1,3 +1,3 @@
1
- export declare const MERMAID_SCRIPTS = "https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js";
1
+ export declare const MERMAID_SCRIPTS = "https://cdn.jsdelivr.net/npm/mermaid@9.0.1/dist/mermaid.min.js";
2
2
  export declare const FLOWCHART_SCRIPTS: string[];
3
3
  export declare const PLANTUML_PRE = "https://www.plantuml.com/plantuml/svg";
@@ -1,4 +1,5 @@
1
1
  import { OnesEditor, ShortcutRecords } from '../../../../@ones-editor/core';
2
+ import { copyImage } from './copy-image';
2
3
  declare function deleteImage(editor: OnesEditor): true | undefined;
3
4
  declare const ImageShortcuts: ShortcutRecords;
4
- export { ImageShortcuts, deleteImage, };
5
+ export { ImageShortcuts, deleteImage, copyImage, };