@asup/tree-of-nodes 0.9.0
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.
- package/LICENCE +8 -0
- package/README.md +4 -0
- package/dist/cjs/components/ContextMenu.d.ts +3 -0
- package/dist/cjs/components/ContextMenuProvider.d.ts +28 -0
- package/dist/cjs/components/TreeNode.d.ts +13 -0
- package/dist/cjs/components/TreeOfNodes.d.ts +44 -0
- package/dist/cjs/components/WordEntry.d.ts +12 -0
- package/dist/cjs/components/index.d.ts +7 -0
- package/dist/cjs/main.d.ts +1 -0
- package/dist/cjs/main.js +1730 -0
- package/dist/esm/components/ContextMenu.d.ts +3 -0
- package/dist/esm/components/ContextMenuProvider.d.ts +28 -0
- package/dist/esm/components/TreeNode.d.ts +13 -0
- package/dist/esm/components/TreeOfNodes.d.ts +44 -0
- package/dist/esm/components/WordEntry.d.ts +12 -0
- package/dist/esm/components/index.d.ts +7 -0
- package/dist/esm/main.d.ts +1 -0
- package/dist/esm/main.js +1706 -0
- package/dist/favicon.80afec6c.ico +0 -0
- package/dist/index.8d438033.css +12012 -0
- package/dist/index.8d438033.css.map +1 -0
- package/dist/index.8ffabb7b.js +188309 -0
- package/dist/index.8ffabb7b.js.map +1 -0
- package/dist/index.c9e3402a.css +19 -0
- package/dist/index.c9e3402a.css.map +1 -0
- package/dist/index.d92d26d8.css +12048 -0
- package/dist/index.d92d26d8.css.map +1 -0
- package/dist/index.html +17 -0
- package/dist/public/manifest.webmanifest +1 -0
- package/dist/tree-of-nodes.d.ts +70 -0
- package/package.json +100 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
export interface iContextMenuSettings {
|
|
3
|
+
visible?: boolean;
|
|
4
|
+
x?: number;
|
|
5
|
+
y?: number;
|
|
6
|
+
set?: (ret: {
|
|
7
|
+
visible?: boolean;
|
|
8
|
+
x?: number;
|
|
9
|
+
y?: number;
|
|
10
|
+
menuItems?: iMenuItem[];
|
|
11
|
+
}) => void;
|
|
12
|
+
}
|
|
13
|
+
export interface contextMenuProps {
|
|
14
|
+
entries: iMenuItem[];
|
|
15
|
+
visible: boolean;
|
|
16
|
+
xPos: number;
|
|
17
|
+
yPos: number;
|
|
18
|
+
}
|
|
19
|
+
export interface iMenuItem {
|
|
20
|
+
label?: string;
|
|
21
|
+
action?: () => void;
|
|
22
|
+
}
|
|
23
|
+
export declare const MenuContext: React.Context<iContextMenuSettings>;
|
|
24
|
+
interface iContextMenuProvider {
|
|
25
|
+
children: React.ReactNode;
|
|
26
|
+
}
|
|
27
|
+
export declare const ContextMenuProvider: ({ children }: iContextMenuProvider) => JSX.Element;
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { Key } from 'react';
|
|
2
|
+
interface TreeNodeProps {
|
|
3
|
+
id: Key;
|
|
4
|
+
indentLevel?: number;
|
|
5
|
+
canRemove?: boolean;
|
|
6
|
+
canRename?: boolean;
|
|
7
|
+
canAddChildren?: boolean;
|
|
8
|
+
canRemoveChildren?: boolean;
|
|
9
|
+
canRenameChildren?: boolean;
|
|
10
|
+
refresh?: () => void;
|
|
11
|
+
}
|
|
12
|
+
export declare const TreeNode: ({ id, canRemove, canRename, canAddChildren, canRemoveChildren, canRenameChildren, }: TreeNodeProps) => JSX.Element;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { Key } from 'react';
|
|
2
|
+
export declare type TreeNodeBase = {
|
|
3
|
+
id: Key;
|
|
4
|
+
label: string;
|
|
5
|
+
parentId?: Key;
|
|
6
|
+
};
|
|
7
|
+
export declare type TreeNodeData<T> = {
|
|
8
|
+
id: Key;
|
|
9
|
+
label: string;
|
|
10
|
+
parentId?: Key;
|
|
11
|
+
data: T;
|
|
12
|
+
};
|
|
13
|
+
export interface iNodeUpdate {
|
|
14
|
+
success: boolean;
|
|
15
|
+
ErrorText?: string;
|
|
16
|
+
}
|
|
17
|
+
interface iTreeOfNodes<T> {
|
|
18
|
+
nodeList: TreeNodeData<T>[];
|
|
19
|
+
roots: Key[];
|
|
20
|
+
selectedId?: Key;
|
|
21
|
+
handleSelect?: (ret: Key) => void;
|
|
22
|
+
onAdd?: (parentId: Key, newName: string) => Promise<iNodeUpdate>;
|
|
23
|
+
onRename?: (childId: Key, newName: string) => Promise<iNodeUpdate>;
|
|
24
|
+
onRemove?: (childId: Key) => Promise<iNodeUpdate>;
|
|
25
|
+
canAddRoot?: boolean;
|
|
26
|
+
canRemoveRoot?: boolean;
|
|
27
|
+
canRenameRoot?: boolean;
|
|
28
|
+
canAddChildren?: boolean;
|
|
29
|
+
canRemoveChildren?: boolean;
|
|
30
|
+
canRenameChildren?: boolean;
|
|
31
|
+
}
|
|
32
|
+
declare type TreeOfNodesContextData<T> = {
|
|
33
|
+
nodeList: TreeNodeData<T>[];
|
|
34
|
+
selectedId?: Key;
|
|
35
|
+
handleSelect?: (ret: Key) => void;
|
|
36
|
+
expandedNodes?: Key[];
|
|
37
|
+
handleExpandClick?: (ret: Key, force?: boolean) => void;
|
|
38
|
+
onAddChild?: (parentId: Key, newName: string) => Promise<iNodeUpdate>;
|
|
39
|
+
onRename?: (id: Key, newName: string) => Promise<iNodeUpdate>;
|
|
40
|
+
onRemove?: (id: Key) => Promise<iNodeUpdate>;
|
|
41
|
+
};
|
|
42
|
+
export declare const TreeOfNodesContext: import("react").Context<TreeOfNodesContextData<object>>;
|
|
43
|
+
export declare const TreeOfNodes: <T extends object>({ nodeList, roots, canRemoveRoot, canRenameRoot, canAddChildren, canRemoveChildren, canRenameChildren, selectedId, handleSelect, onAdd, onRename, onRemove, }: iTreeOfNodes<T>) => JSX.Element;
|
|
44
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
interface WordEntryProps {
|
|
3
|
+
id?: string;
|
|
4
|
+
value?: string;
|
|
5
|
+
editing?: boolean;
|
|
6
|
+
saving?: boolean;
|
|
7
|
+
setValue?: (ret: string) => void;
|
|
8
|
+
sendEscape?: () => void;
|
|
9
|
+
style?: React.CSSProperties;
|
|
10
|
+
}
|
|
11
|
+
export declare const WordEntry: React.ForwardRefExoticComponent<WordEntryProps & React.RefAttributes<HTMLInputElement>>;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ContextMenu } from './ContextMenu';
|
|
2
|
+
import { ContextMenuProvider } from './ContextMenuProvider';
|
|
3
|
+
import { TreeNode } from './TreeNode';
|
|
4
|
+
import { iNodeUpdate, TreeNodeData, TreeOfNodes } from './TreeOfNodes';
|
|
5
|
+
import { WordEntry } from './WordEntry';
|
|
6
|
+
export { ContextMenu, ContextMenuProvider, TreeNode, TreeOfNodes, WordEntry };
|
|
7
|
+
export type { TreeNodeData, iNodeUpdate };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './components';
|