@ones-editor/editor 2.2.7 → 2.2.8-beta.2

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 (50) hide show
  1. package/@ones-editor/block-resizer/src/index.d.ts +1 -0
  2. package/@ones-editor/comments/src/block-hook/block-comment-hook.d.ts +10 -0
  3. package/@ones-editor/comments/src/comment-quick-reply/index.d.ts +1 -0
  4. package/@ones-editor/comments/src/comments-helper/get-comment-abstract.d.ts +2 -1
  5. package/@ones-editor/core/src/core/block-renderers/block-renderers.d.ts +1 -0
  6. package/@ones-editor/core/src/core/doc/doc.d.ts +1 -1
  7. package/@ones-editor/core/src/core/types.d.ts +6 -2
  8. package/@ones-editor/core/src/core/undo-manager/actions/action.d.ts +5 -1
  9. package/@ones-editor/core/src/core/undo-manager/actions/block-action.d.ts +1 -0
  10. package/@ones-editor/core/src/core/undo-manager/actions/update-block-data-action.d.ts +1 -0
  11. package/@ones-editor/core/src/utils/character.d.ts +1 -0
  12. package/@ones-editor/embed-block-helper/src/block-properties/embed-block-properties.d.ts +1 -1
  13. package/@ones-editor/embed-block-helper/src/block-resizer/index.d.ts +1 -0
  14. package/@ones-editor/image-embed/src/hovering-toolbar/index.d.ts +0 -11
  15. package/@ones-editor/image-embed/src/image-object.d.ts +1 -0
  16. package/@ones-editor/media-embed/src/core/hovering-toolbar/index.d.ts +2 -20
  17. package/@ones-editor/sharedb-doc/src/doc/sharedb-client-base.d.ts +24 -0
  18. package/@ones-editor/sharedb-doc/src/doc/sharedb-client.d.ts +4 -1
  19. package/@ones-editor/sharedb-doc/src/doc/sharedb-local-doc.d.ts +17 -0
  20. package/@ones-editor/sharedb-doc/src/index.d.ts +5 -1
  21. package/@ones-editor/sharedb-doc/src/versions/sharedb-server.d.ts +1 -1
  22. package/@ones-editor/sharedb-doc/src/versions/simple-client.d.ts +1 -1
  23. package/@ones-editor/tsconfig.tsbuildinfo +1 -1
  24. package/@ones-editor/ui/src/index.d.ts +2 -1
  25. package/@ones-editor/ui/src/readonly-toolbar/add-comment-to-old-doc.d.ts +3 -0
  26. package/@ones-editor/ui/src/readonly-toolbar/helper.d.ts +2 -0
  27. package/@ones-editor/ui/src/readonly-toolbar/index.d.ts +2 -0
  28. package/@ones-editor/ui/src/tooltips/index.d.ts +21 -9
  29. package/@ones-editor/ui-base/src/color-button/text-color-item.d.ts +18 -8
  30. package/@ones-editor/ui-base/src/color-palette/color-palette.d.ts +7 -1
  31. package/@ones-editor/ui-base/src/color-palette/index.d.ts +3 -3
  32. package/@ones-editor/ui-base/src/command-bar/active-observer.d.ts +11 -0
  33. package/@ones-editor/ui-base/src/command-bar/types.d.ts +1 -1
  34. package/@ones-editor/ui-base/src/locale/en-us.d.ts +1 -0
  35. package/@ones-editor/ui-base/src/locale/ja-jp.d.ts +1 -0
  36. package/@ones-editor/ui-base/src/locale/zh-cn.d.ts +1 -0
  37. package/@ones-editor/versions/package.json +3 -0
  38. package/@ones-editor/versions/src/constant/index.d.ts +2 -0
  39. package/@ones-editor/versions/src/history-doc/history-doc.d.ts +2 -2
  40. package/@ones-editor/versions/src/history-render/index.d.ts +15 -1
  41. package/@ones-editor/versions/src/history-tooltip/index.d.ts +14 -0
  42. package/@ones-editor/versions/src/index.d.ts +1 -0
  43. package/@ones-editor/versions/src/locale/en-us.d.ts +1 -0
  44. package/@ones-editor/versions/src/locale/ja-jp.d.ts +1 -0
  45. package/@ones-editor/versions/src/locale/zh-cn.d.ts +1 -0
  46. package/@ones-editor/versions/src/types.d.ts +4 -0
  47. package/@ones-editor/versions/src/utils/block-text.d.ts +3 -1
  48. package/dist/index.js +4020 -2590
  49. package/dist/types.d.ts +1 -1
  50. package/package.json +2 -1
@@ -18,6 +18,7 @@ export declare class BlockResizer extends TypedEmitter<BlockResizerEvents> {
18
18
  constructor(editor: OnesEditor, options: BlockResizerOptions);
19
19
  enableResize(block: BlockElement, resizableElement?: HTMLElement): void;
20
20
  disableResize(): void;
21
+ handleEditorResize: () => void;
21
22
  update(block: BlockElement, resizableElement?: HTMLElement): void;
22
23
  updateResizer(): void;
23
24
  getBlock(): BlockElement | null;
@@ -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
+ }
@@ -11,6 +11,7 @@ export declare class CommentQuickReply {
11
11
  root: HTMLDivElement;
12
12
  private components;
13
13
  constructor(mainEditor: OnesEditor, commentsProvider: OnesEditorCommentsProvider, comment: CommentWithChildren, groupItem: CommentGroupItem);
14
+ private get commentOptions();
14
15
  private createQuickReply;
15
16
  private handleFocus;
16
17
  private handleDocChange;
@@ -1,2 +1,3 @@
1
- import { BlockElement, OnesEditor } from '../../../../@ones-editor/core';
1
+ import { BlockElement, OnesEditor, SelectedBlock } from '../../../../@ones-editor/core';
2
2
  export declare function getCommentAbstract(editor: OnesEditor, blocks: BlockElement[]): string;
3
+ export declare function getCommentAbstractFromSelectedBlocks(editor: OnesEditor, blocks: SelectedBlock[]): string;
@@ -9,4 +9,5 @@ export declare class EditorBlockRenderers implements OnesEditorBlockRenderers {
9
9
  renderText(path: BlockPath, attributes: DocBlockTextAttributes): OnesEditorBlockRenderResult;
10
10
  renderBlock(editor: OnesEditor, path: BlockPath, blockData: DocBlock): OnesEditorBlockRenderResult;
11
11
  updateBlock(editor: OnesEditor, path: BlockPath, blockElement: BlockElement, blockData: DocBlock): void;
12
+ renderChildContainer(editor: OnesEditor, path: BlockPath, containerId: string): OnesEditorBlockRenderResult;
12
13
  }
@@ -268,7 +268,7 @@ export interface OnesEditorHistoryDataParseHandler {
268
268
  onUpdateComment: (commentId: string, local: boolean) => void;
269
269
  }
270
270
  export interface OnesEditorDocVersionHelper {
271
- getVersions: () => Promise<DocVersion[]>;
271
+ getVersions: (showPublished?: boolean) => Promise<DocVersion[]>;
272
272
  getVersion: (ver: number) => Promise<DocObject>;
273
273
  getLatestVersion: () => Promise<DocObject>;
274
274
  getHistoryData: (version: number, from?: number) => Promise<{
@@ -58,7 +58,6 @@ export type BlockPosition = SimpleBlockPosition | ComplexBlockPosition;
58
58
  export interface BoxCommands {
59
59
  group: string;
60
60
  commands: CommandItem[];
61
- startGroup?: boolean;
62
61
  executeCommand: (editor: OnesEditor, block: BlockElement, box: BoxElement, item: CommandItem) => unknown;
63
62
  }
64
63
  export interface BoxProperties {
@@ -143,6 +142,8 @@ export interface CommandItem {
143
142
  group?: string;
144
143
  groupOrder?: number;
145
144
  dropdown?: boolean;
145
+ dropSplit?: boolean;
146
+ splitTooltip?: string;
146
147
  manualShowChildren?: boolean;
147
148
  childrenPlacement?: CommandItemChildrenPlacement;
148
149
  childrenOffset?: [number, number];
@@ -175,7 +176,6 @@ export interface BlockCommands {
175
176
  element?: HTMLElement;
176
177
  group: string;
177
178
  commands: CommandItem[];
178
- startGroup?: boolean;
179
179
  executeCommand: (editor: OnesEditor, block: BlockElement, item: CommandItem, child: TextBlockContentChild | null) => unknown;
180
180
  }
181
181
  export interface BlockProperties {
@@ -354,6 +354,8 @@ export interface OnesEditorUndoAction {
354
354
  redo: (editor: OnesEditor) => boolean;
355
355
  combinable: (other: OnesEditorUndoAction) => boolean;
356
356
  combine: (other: OnesEditorUndoAction) => void;
357
+ getTimeStamp: () => number;
358
+ getBatchActionId?: () => string | undefined;
357
359
  }
358
360
  export interface OnesEditorUndoManager {
359
361
  reset: () => void;
@@ -400,12 +402,14 @@ export interface OnesEditorBlockRenderer {
400
402
  renderBox?: (editor: OnesEditor, path: BlockPath, attributes: DocBlockTextAttributes) => OnesEditorBlockRenderResult;
401
403
  renderText?: (editor: OnesEditor, path: BlockPath, attributes: DocBlockTextAttributes) => OnesEditorBlockRenderResult;
402
404
  renderBlock?: (editor: OnesEditor, path: BlockPath, blockData: DocBlock) => OnesEditorBlockRenderResult;
405
+ renderChildContainer?: (editor: OnesEditor, path: BlockPath, containerId: string) => OnesEditorBlockRenderResult;
403
406
  updateBlock?: (editor: OnesEditor, path: BlockPath, blockElement: BlockElement, blockData: DocBlock) => void;
404
407
  }
405
408
  export interface OnesEditorBlockRenderers {
406
409
  renderBox: (path: BlockPath, attributes: DocBlockTextAttributes) => OnesEditorBlockRenderResult;
407
410
  renderText: (path: BlockPath, attributes: DocBlockTextAttributes) => OnesEditorBlockRenderResult;
408
411
  renderBlock: (editor: OnesEditor, path: BlockPath, blockData: DocBlock) => OnesEditorBlockRenderResult;
412
+ renderChildContainer: (editor: OnesEditor, path: BlockPath, containerId: string) => OnesEditorBlockRenderResult;
409
413
  updateBlock: (editor: OnesEditor, path: BlockPath, blockElement: BlockElement, blockData: DocBlock) => void;
410
414
  registerRender: (decorator: OnesEditorBlockRenderer) => void;
411
415
  }
@@ -4,11 +4,15 @@ export default class Action implements OnesEditorUndoAction {
4
4
  protected containerId: string;
5
5
  beforeRange: OnesEditorDocRange;
6
6
  afterRange: OnesEditorDocRange;
7
- constructor(editor: OnesEditor, containerId: string, afterRange: OnesEditorDocRange);
7
+ batchActionId?: string;
8
+ ts: number;
9
+ constructor(editor: OnesEditor, containerId: string, afterRange: OnesEditorDocRange, batchActionId?: string);
10
+ getTimeStamp(): number;
8
11
  undo(editor: OnesEditor): boolean;
9
12
  redo(editor: OnesEditor): boolean;
10
13
  combinable(other: OnesEditorUndoAction): boolean;
11
14
  combine(other: OnesEditorUndoAction): void;
15
+ getBatchActionId(): string | undefined;
12
16
  setAfterRange(range: OnesEditorDocRange): void;
13
17
  hasDocContainerId(editor: OnesEditor, id: string): boolean;
14
18
  findDocBlockById(editor: OnesEditor, id: string): DocBlock | undefined;
@@ -7,4 +7,5 @@ export default class BlockAction extends Action {
7
7
  constructor(editor: OnesEditor, containerId: string, blockIndex: number, data: DocBlock, afterRange: OnesEditorDocRange);
8
8
  deleteBlock(editor: OnesEditor, newRange: OnesEditorDocRange): boolean;
9
9
  insertBlock(editor: OnesEditor, newRange: OnesEditorDocRange): boolean;
10
+ getBatchActionId(): string | undefined;
10
11
  }
@@ -9,4 +9,5 @@ export default class UpdateBlockDataAction extends Action {
9
9
  undo(editor: OnesEditor): boolean;
10
10
  redo(editor: OnesEditor): boolean;
11
11
  private static toAttributes;
12
+ getBatchActionId(): string | undefined;
12
13
  }
@@ -3,3 +3,4 @@ export declare function isLetter(str: string): boolean;
3
3
  export declare function isSpace(str: string): boolean;
4
4
  export declare function isCJK(str: string): boolean;
5
5
  export declare function trimChar(s: string, char: string): string;
6
+ export declare function isFunction(functionToCheck: unknown): functionToCheck is () => unknown;
@@ -1,5 +1,5 @@
1
1
  import { BlockCommands, BlockElement, CommandItem, OnesEditor } from '../../../../@ones-editor/core';
2
- export type CommandId = 'edit' | 'add-comment' | 'separator';
2
+ export type CommandId = 'edit' | 'separator';
3
3
  export interface StandardEmbedBlockProperties<T = CommandId> {
4
4
  presetIds?: T[];
5
5
  extIds?: T[];
@@ -9,6 +9,7 @@ export declare class EmbedBlockResizer {
9
9
  handleResizing: (resizer: BlockResizer, rect: DOMRect) => void;
10
10
  destroy(): void;
11
11
  handleHoveringBlockChange: (block: BlockElement | null, old: BlockElement | null) => void;
12
+ handleEditorResize: () => void;
12
13
  tryEnableResizer(block: BlockElement): void;
13
14
  disableResizer(): void;
14
15
  static get(editor: OnesEditor): EmbedBlockResizer;
@@ -10,22 +10,11 @@ export default class ImageHoveringToolbarCommands implements BlockCommands {
10
10
  name: string;
11
11
  icon: string;
12
12
  type?: undefined;
13
- groupOrder?: undefined;
14
- order?: undefined;
15
13
  } | {
16
14
  id: string;
17
15
  name: string;
18
16
  type: CommandItemType;
19
17
  icon?: undefined;
20
- groupOrder?: undefined;
21
- order?: undefined;
22
- } | {
23
- id: string;
24
- name: string;
25
- icon: string;
26
- groupOrder: number;
27
- order: number;
28
- type?: undefined;
29
18
  })[];
30
19
  isHoveringImageEmpty: () => boolean;
31
20
  get commands(): CommandItem[];
@@ -42,4 +42,5 @@ export declare class ImageObject implements ImageObjectBase {
42
42
  private setData;
43
43
  static create(editor: OnesEditor, blockData: DocEmbedBlock): ImageObject;
44
44
  static getImageObject(editor: OnesEditor, block: BlockElement | string): ImageObject;
45
+ static findImageObject(editor: OnesEditor, block: BlockElement | string): ImageObject | null;
45
46
  }
@@ -1,32 +1,14 @@
1
1
  import { BlockCommands, BlockElement, CommandItem, OnesEditor } from '../../../../../@ones-editor/core';
2
- import type { CommandItemType } from '../../../../../@ones-editor/core';
3
2
  export default class ImageHoveringToolbarCommands implements BlockCommands {
4
3
  protected editor: OnesEditor;
5
4
  protected block: BlockElement;
6
5
  group: string;
7
6
  constructor(editor: OnesEditor, block: BlockElement);
8
- _commands: ({
7
+ _commands: {
9
8
  id: string;
10
9
  name: string;
11
10
  icon: string;
12
- groupOrder: number;
13
- order: number;
14
- type?: undefined;
15
- } | {
16
- id: string;
17
- name: string;
18
- type: CommandItemType;
19
- icon?: undefined;
20
- groupOrder?: undefined;
21
- order?: undefined;
22
- } | {
23
- id: string;
24
- name: string;
25
- icon: string;
26
- groupOrder?: undefined;
27
- order?: undefined;
28
- type?: undefined;
29
- })[];
11
+ }[];
30
12
  isHoveringImageEmpty: () => boolean;
31
13
  get commands(): CommandItem[];
32
14
  executeCommand(editor: OnesEditor, block: BlockElement, item: CommandItem): void;
@@ -0,0 +1,24 @@
1
+ import { AxiosResponse } from 'axios';
2
+ import { BuildResourceUrlOptions } from '../../../../@ones-editor/core';
3
+ import { OnProgress } from '../types';
4
+ export default abstract class ShareDBClientBase {
5
+ abstract apiServer(): string;
6
+ abstract request<T = unknown>(url: string, opt?: any): Promise<AxiosResponse<any, T>>;
7
+ abstract token(): string;
8
+ abstract resourceToken(): string;
9
+ abstract docId(): string;
10
+ getFileUrlByHash(uploadFileUrl: string, hash: string, name: string, size: number, headers: {
11
+ [index: string]: string;
12
+ }): Promise<any>;
13
+ getFileUrlsByHashes(resourceHashes: string[]): Promise<any[]>;
14
+ uploadFile(url: string, file: File, headers: {
15
+ [index: string]: string;
16
+ }, onProgress: OnProgress, options?: {
17
+ thumbnail?: boolean;
18
+ }): Promise<string>;
19
+ uploadResource(file: File, onProgress?: OnProgress, options?: {
20
+ thumbnail?: boolean;
21
+ }): Promise<string>;
22
+ getResourceId(url: string): string;
23
+ buildResourceUrl(resourceId: string, options?: BuildResourceUrlOptions): string;
24
+ }
@@ -11,6 +11,9 @@ export default class ShareDBClient {
11
11
  private reauthFunc?;
12
12
  clientId: string;
13
13
  constructor(auth: AuthMessage, serverUrl: string, reauthFunc?: ReauthFunc);
14
+ token(): string;
15
+ resourceToken(): string;
16
+ docId(): string;
14
17
  editorServer(): string;
15
18
  close(logout: boolean): void;
16
19
  on(event: 'open' | 'close' | 'error', callback: (event: Event | Error) => void): void;
@@ -52,7 +55,7 @@ export default class ShareDBClient {
52
55
  revertVersion(ver: number): Promise<void>;
53
56
  createVersion(tag: string, publish: boolean): Promise<any>;
54
57
  recognizeLink(url: string): Promise<LinkDetails>;
55
- private getResourceId;
58
+ getResourceId(url: string): string;
56
59
  buildResourceUrl(resourceId: string, options?: BuildResourceUrlOptions): string;
57
60
  reAuth(auto?: boolean): void;
58
61
  }
@@ -0,0 +1,17 @@
1
+ import { DocObject, LocalDoc, OnesEditorUser, UploadResourceOptions, UploadResourceResult } from '../../../../@ones-editor/core';
2
+ export interface ShareDBLocalDocOptions {
3
+ serverUrl: string;
4
+ token: string;
5
+ resourceToken?: string;
6
+ user: OnesEditorUser;
7
+ docId: string;
8
+ }
9
+ export default class ShareDBLocalDoc extends LocalDoc {
10
+ private _options;
11
+ private _client;
12
+ constructor(docObject: DocObject, _options: ShareDBLocalDocOptions);
13
+ buildResourceUrl(src: string): string;
14
+ getUser(): OnesEditorUser;
15
+ request<T>(url: string, opt?: any): Promise<T>;
16
+ uploadResource(file: File, options?: UploadResourceOptions | undefined): Promise<UploadResourceResult>;
17
+ }
@@ -1,7 +1,11 @@
1
1
  import axios from 'axios';
2
2
  import ShareDBDoc from './doc/sharedb-doc';
3
3
  import { RemoteCarets, RemoteCaretsDecorator } from './remote-carets';
4
- export { ShareDBDoc, RemoteCarets, RemoteCaretsDecorator };
4
+ import ShareDBClientBase from './doc/sharedb-client-base';
5
+ import ShareDBLocalDoc from './doc/sharedb-local-doc';
6
+ import type { ShareDBLocalDocOptions } from './doc/sharedb-local-doc';
7
+ export { ShareDBDoc, RemoteCarets, RemoteCaretsDecorator, ShareDBClientBase, ShareDBLocalDoc };
8
+ export type { ShareDBLocalDocOptions };
5
9
  export * from './doc/comments';
6
10
  export * from './types';
7
11
  export * from './versions';
@@ -10,7 +10,7 @@ export default class ShareDBServer extends EventCallbacks<ShareDBDocCallbacks> i
10
10
  buildResourceUrl(resourceId: string, options?: BuildResourceUrlOptions): string;
11
11
  getRemoteUsers(): RemoteUsers;
12
12
  getVersionHelper(): OnesEditorDocVersionHelper;
13
- getVersions(): Promise<DocVersion[]>;
13
+ getVersions(showPublished?: boolean): Promise<DocVersion[]>;
14
14
  getVersion(ver: number): Promise<DocObject>;
15
15
  getLatestVersion(): Promise<DocObject>;
16
16
  getHistoryData(version: number, from?: number | undefined): Promise<{
@@ -11,7 +11,7 @@ export default class ShareDBSimpleClient {
11
11
  getBaseURL(): string;
12
12
  getBase64BaseURL(): string;
13
13
  request<T = unknown>(url: string, opt?: any): Promise<AxiosResponse<any, T>>;
14
- getVersions(): Promise<DocVersion[]>;
14
+ getVersions(showPublished: boolean): Promise<DocVersion[]>;
15
15
  getVersion(ver: number): Promise<EditorDoc>;
16
16
  getLatestVersion(): Promise<EditorDoc>;
17
17
  getVersionOps(version: number, from?: number): Promise<{