mind-elixir 3.2.3 → 3.2.4

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.
@@ -31,3 +31,4 @@ export declare const hideLinkController: (this: MindElixirInstance) => void;
31
31
  export declare const showLinkController: (this: MindElixirInstance, linkItem: LinkItem, fromData: DivData, toData: DivData) => void;
32
32
  export declare function renderCustomLink(this: MindElixirInstance): void;
33
33
  export declare function editCutsomLinkLabel(this: MindElixirInstance, el: CustomSvg): void;
34
+ export declare function tidyCustomLink(this: MindElixirInstance): void;
@@ -0,0 +1,6 @@
1
+ import type { LinkItem } from './customLink';
2
+ import type methods from './methods';
3
+ import type { MindElixirMethods } from './methods';
4
+ import type { Summary } from './summary';
5
+ import type { LinkObj, MindElixirData, MindElixirInstance, NodeObj } from './types';
6
+ export { methods, MindElixirMethods, MindElixirInstance, MindElixirData, NodeObj, LinkObj, Summary, LinkItem };
@@ -9,8 +9,8 @@ declare function MindElixir(this: MindElixirInstance, { el, direction, locale, d
9
9
  declare namespace MindElixir {
10
10
  export var prototype: {
11
11
  init(this: MindElixirInstance, data: MindElixirData): Error | undefined;
12
- exportSvg: (this: MindElixirInstance) => Blob;
13
- exportPng: (this: MindElixirInstance) => Promise<Blob | null>;
12
+ exportSvg: (this: MindElixirInstance, noForiegnObject?: boolean) => Blob;
13
+ exportPng: (this: MindElixirInstance, noForiegnObject?: boolean) => Promise<Blob | null>;
14
14
  createSummary: (this: MindElixirInstance) => void;
15
15
  removeSummary: (this: MindElixirInstance, id: string) => void;
16
16
  selectSummary: (this: MindElixirInstance, el: import("./summary").SummarySvgGroup) => void;
@@ -19,6 +19,7 @@ declare namespace MindElixir {
19
19
  editSummary: (this: MindElixirInstance, el: import("./summary").SummarySvgGroup) => void;
20
20
  renderCustomLink(this: MindElixirInstance): void;
21
21
  editCutsomLinkLabel(this: MindElixirInstance, el: import("./types/dom").CustomSvg): void;
22
+ tidyCustomLink(this: MindElixirInstance): void;
22
23
  drawCustomLink: (this: MindElixirInstance, from: import("./types/dom").Topic, to: import("./types/dom").Topic, obj: import("./customLink").LinkItem, isInitPaint?: boolean | undefined) => void;
23
24
  createLink: (this: MindElixirInstance, from: import("./types/dom").Topic, to: import("./types/dom").Topic) => void;
24
25
  removeLink: (this: MindElixirInstance, linkSvg?: import("./types/dom").CustomSvg | undefined) => void;
@@ -26,20 +27,20 @@ declare namespace MindElixir {
26
27
  unselectLink: (this: MindElixirInstance) => void;
27
28
  hideLinkController: (this: MindElixirInstance) => void;
28
29
  showLinkController: (this: MindElixirInstance, linkItem: import("./customLink").LinkItem, fromData: import("./customLink").DivData, toData: import("./customLink").DivData) => void;
29
- reshapeNode: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
30
- insertSibling: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
31
- insertBefore: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
32
- insertParent: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
33
- addChild: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
34
- copyNode: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
35
- moveUpNode: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
36
- moveDownNode: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
37
- removeNode: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
38
- moveNode: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
39
- moveNodeBefore: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
40
- moveNodeAfter: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
41
- beginEdit: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
42
- setNodeTopic: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
30
+ reshapeNode: (this: MindElixirInstance, tpc: import("./types/dom").Topic, patchData: import("./types/index").NodeObj) => Promise<void>;
31
+ insertSibling: (this: MindElixirInstance, el?: import("./types/dom").Topic | undefined, node?: import("./types/index").NodeObj | undefined) => Promise<void>;
32
+ insertBefore: (this: MindElixirInstance, el?: import("./types/dom").Topic | undefined, node?: import("./types/index").NodeObj | undefined) => Promise<void>;
33
+ insertParent: (this: MindElixirInstance, el?: import("./types/dom").Topic | undefined, node?: import("./types/index").NodeObj | undefined) => Promise<void>;
34
+ addChild: (this: MindElixirInstance, el?: import("./types/dom").Topic | undefined, node?: import("./types/index").NodeObj | undefined) => Promise<void>;
35
+ copyNode: (this: MindElixirInstance, node: import("./types/dom").Topic, to: import("./types/dom").Topic) => Promise<void>;
36
+ moveUpNode: (this: MindElixirInstance, el?: import("./types/dom").Topic | undefined) => Promise<void>;
37
+ moveDownNode: (this: MindElixirInstance, el?: import("./types/dom").Topic | undefined) => Promise<void>;
38
+ removeNode: (this: MindElixirInstance, el?: import("./types/dom").Topic | undefined) => Promise<void>;
39
+ moveNode: (this: MindElixirInstance, from: import("./types/dom").Topic, to: import("./types/dom").Topic) => Promise<void>;
40
+ moveNodeBefore: (this: MindElixirInstance, from: import("./types/dom").Topic, to: import("./types/dom").Topic) => Promise<void>;
41
+ moveNodeAfter: (this: MindElixirInstance, from: import("./types/dom").Topic, to: import("./types/dom").Topic) => Promise<void>;
42
+ beginEdit: (this: MindElixirInstance, el?: import("./types/dom").Topic | undefined) => Promise<void>;
43
+ setNodeTopic: (this: MindElixirInstance, el: import("./types/dom").Topic, topic: string) => Promise<void>;
43
44
  selectNode: (this: MindElixirInstance, targetElement: import("./types/dom").Topic, isNewNode?: boolean | undefined, e?: MouseEvent | undefined) => void;
44
45
  unselectNode: (this: MindElixirInstance) => void;
45
46
  selectNodes: (this: MindElixirInstance, targetElements: import("./types/dom").Topic[]) => void;
@@ -5,9 +5,10 @@ import type { MindElixirInstance } from './types/index';
5
5
  * only link specific node if `mainNode` is present
6
6
  *
7
7
  * procedure:
8
- * 1. layout main node, generate main link
8
+ * 1. generate main link
9
9
  * 2. generate links inside main node, if `mainNode` is present, only generate the link of the specific main node
10
10
  * 3. generate custom link
11
+ * 4. generate summary
11
12
  * @param mainNode regenerate sublink of the specific main node
12
13
  */
13
14
  declare const linkDiv: (this: MindElixirInstance, mainNode?: Wrapper) => void;
@@ -1,6 +1,9 @@
1
1
  import type { MindElixirInstance, MindElixirData } from './index';
2
+ import * as nodeOperation from './nodeOperation';
2
3
  import * as customLink from './customLink';
3
4
  import * as summaryOperation from './summary';
5
+ export type OperationMap = typeof nodeOperation;
6
+ export type Operations = keyof OperationMap;
4
7
  export type MindElixirMethods = typeof methods;
5
8
  /**
6
9
  * Methods that mind-elixir instance can use
@@ -9,8 +12,8 @@ export type MindElixirMethods = typeof methods;
9
12
  */
10
13
  declare const methods: {
11
14
  init(this: MindElixirInstance, data: MindElixirData): Error | undefined;
12
- exportSvg: (this: MindElixirInstance) => Blob;
13
- exportPng: (this: MindElixirInstance) => Promise<Blob | null>;
15
+ exportSvg: (this: MindElixirInstance, noForiegnObject?: boolean) => Blob;
16
+ exportPng: (this: MindElixirInstance, noForiegnObject?: boolean) => Promise<Blob | null>;
14
17
  createSummary: (this: MindElixirInstance) => void;
15
18
  removeSummary: (this: MindElixirInstance, id: string) => void;
16
19
  selectSummary: (this: MindElixirInstance, el: summaryOperation.SummarySvgGroup) => void;
@@ -19,6 +22,7 @@ declare const methods: {
19
22
  editSummary: (this: MindElixirInstance, el: summaryOperation.SummarySvgGroup) => void;
20
23
  renderCustomLink(this: MindElixirInstance): void;
21
24
  editCutsomLinkLabel(this: MindElixirInstance, el: import("./index").CustomSvg): void;
25
+ tidyCustomLink(this: MindElixirInstance): void;
22
26
  drawCustomLink: (this: MindElixirInstance, from: import("./index").Topic, to: import("./index").Topic, obj: customLink.LinkItem, isInitPaint?: boolean | undefined) => void;
23
27
  createLink: (this: MindElixirInstance, from: import("./index").Topic, to: import("./index").Topic) => void;
24
28
  removeLink: (this: MindElixirInstance, linkSvg?: import("./index").CustomSvg | undefined) => void;
@@ -26,20 +30,20 @@ declare const methods: {
26
30
  unselectLink: (this: MindElixirInstance) => void;
27
31
  hideLinkController: (this: MindElixirInstance) => void;
28
32
  showLinkController: (this: MindElixirInstance, linkItem: customLink.LinkItem, fromData: customLink.DivData, toData: customLink.DivData) => void;
29
- reshapeNode: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
30
- insertSibling: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
31
- insertBefore: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
32
- insertParent: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
33
- addChild: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
34
- copyNode: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
35
- moveUpNode: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
36
- moveDownNode: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
37
- removeNode: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
38
- moveNode: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
39
- moveNodeBefore: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
40
- moveNodeAfter: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
41
- beginEdit: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
42
- setNodeTopic: (this: MindElixirInstance, ...args: unknown[]) => Promise<void>;
33
+ reshapeNode: (this: MindElixirInstance, tpc: import("./index").Topic, patchData: import("./types").NodeObj) => Promise<void>;
34
+ insertSibling: (this: MindElixirInstance, el?: import("./index").Topic | undefined, node?: import("./types").NodeObj | undefined) => Promise<void>;
35
+ insertBefore: (this: MindElixirInstance, el?: import("./index").Topic | undefined, node?: import("./types").NodeObj | undefined) => Promise<void>;
36
+ insertParent: (this: MindElixirInstance, el?: import("./index").Topic | undefined, node?: import("./types").NodeObj | undefined) => Promise<void>;
37
+ addChild: (this: MindElixirInstance, el?: import("./index").Topic | undefined, node?: import("./types").NodeObj | undefined) => Promise<void>;
38
+ copyNode: (this: MindElixirInstance, node: import("./index").Topic, to: import("./index").Topic) => Promise<void>;
39
+ moveUpNode: (this: MindElixirInstance, el?: import("./index").Topic | undefined) => Promise<void>;
40
+ moveDownNode: (this: MindElixirInstance, el?: import("./index").Topic | undefined) => Promise<void>;
41
+ removeNode: (this: MindElixirInstance, el?: import("./index").Topic | undefined) => Promise<void>;
42
+ moveNode: (this: MindElixirInstance, from: import("./index").Topic, to: import("./index").Topic) => Promise<void>;
43
+ moveNodeBefore: (this: MindElixirInstance, from: import("./index").Topic, to: import("./index").Topic) => Promise<void>;
44
+ moveNodeAfter: (this: MindElixirInstance, from: import("./index").Topic, to: import("./index").Topic) => Promise<void>;
45
+ beginEdit: (this: MindElixirInstance, el?: import("./index").Topic | undefined) => Promise<void>;
46
+ setNodeTopic: (this: MindElixirInstance, el: import("./index").Topic, topic: string) => Promise<void>;
43
47
  selectNode: (this: MindElixirInstance, targetElement: import("./index").Topic, isNewNode?: boolean | undefined, e?: MouseEvent | undefined) => void;
44
48
  unselectNode: (this: MindElixirInstance) => void;
45
49
  selectNodes: (this: MindElixirInstance, targetElements: import("./index").Topic[]) => void;
@@ -1,3 +1,3 @@
1
1
  import type { MindElixirInstance } from '../types';
2
- export declare const exportSvg: (this: MindElixirInstance) => Blob;
3
- export declare const exportPng: (this: MindElixirInstance) => Promise<Blob | null>;
2
+ export declare const exportSvg: (this: MindElixirInstance, noForiegnObject?: boolean) => Blob;
3
+ export declare const exportPng: (this: MindElixirInstance, noForiegnObject?: boolean) => Promise<Blob | null>;
@@ -26,11 +26,12 @@ export interface Children extends HTMLElement {
26
26
  }
27
27
  export interface Topic extends HTMLElement {
28
28
  nodeObj: NodeObj;
29
- linkContainer: HTMLElement | null;
30
29
  parentNode: Parent;
31
30
  parentElement: Parent;
32
31
  offsetParent: Parent;
32
+ text: HTMLSpanElement;
33
33
  expander?: Expander;
34
+ linkContainer?: HTMLElement;
34
35
  image?: HTMLImageElement;
35
36
  icons?: HTMLSpanElement;
36
37
  tags?: HTMLDivElement;
@@ -1,12 +1,14 @@
1
1
  import type Bus from '../utils/pubsub';
2
2
  import type { Topic, CustomSvg } from './dom';
3
3
  import type { EventMap, Operation } from '../utils/pubsub';
4
- import type { MindElixirMethods } from '../methods';
4
+ import type { MindElixirMethods, OperationMap, Operations } from '../methods';
5
5
  import type { LinkDragMoveHelperInstance } from '../utils/LinkDragMoveHelper';
6
6
  import type { LinkItem } from '../customLink';
7
7
  import type { Summary, SummarySvgGroup } from '../summary';
8
8
  export * from '../methods';
9
- type Before = Record<string, (...args: any[]) => Promise<boolean> | boolean>;
9
+ type Before = Partial<{
10
+ [K in Operations]: (...args: Parameters<OperationMap[K]>) => Promise<boolean> | boolean;
11
+ }>;
10
12
  export interface Theme {
11
13
  name: string;
12
14
  palette: string[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mind-elixir",
3
- "version": "3.2.3",
3
+ "version": "3.2.4",
4
4
  "type": "module",
5
5
  "description": "Mind elixir is a free open source mind map core.",
6
6
  "keywords": [