@rxflow/base 0.0.2 → 0.0.4-alpha.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/cjs/Flow.d.ts +1 -1
- package/cjs/Flow.d.ts.map +1 -1
- package/cjs/Flow.js +28 -10
- package/cjs/components/Legend/index.d.ts.map +1 -1
- package/cjs/components/Legend/index.js +2 -1
- package/cjs/components/Popover/index.d.ts +1 -9
- package/cjs/components/Popover/index.d.ts.map +1 -1
- package/cjs/components/Popover/index.js +14 -75
- package/cjs/components/Tooltip/index.d.ts +1 -10
- package/cjs/components/Tooltip/index.d.ts.map +1 -1
- package/cjs/components/Tooltip/index.js +11 -83
- package/cjs/edges/manhattan.d.ts.map +1 -1
- package/cjs/edges/manhattan.js +100 -30
- package/cjs/hoc/createFlow.d.ts +30 -4
- package/cjs/hoc/createFlow.d.ts.map +1 -1
- package/cjs/hoc/createFlow.js +45 -18
- package/cjs/hooks/index.d.ts +5 -2
- package/cjs/hooks/index.d.ts.map +1 -1
- package/cjs/hooks/index.js +44 -22
- package/cjs/hooks/props/index.d.ts +12 -0
- package/cjs/hooks/props/index.d.ts.map +1 -0
- package/cjs/hooks/props/index.js +49 -0
- package/cjs/hooks/props/useFlowProps.d.ts +23 -0
- package/cjs/hooks/props/useFlowProps.d.ts.map +1 -0
- package/cjs/hooks/props/useFlowProps.js +34 -0
- package/cjs/hooks/props/useGetFlowProps.d.ts +19 -0
- package/cjs/hooks/props/useGetFlowProps.d.ts.map +1 -0
- package/cjs/hooks/props/useGetFlowProps.js +38 -0
- package/cjs/hooks/props/useGetInputProps.d.ts +18 -0
- package/cjs/hooks/props/useGetInputProps.d.ts.map +1 -0
- package/cjs/hooks/props/useGetInputProps.js +38 -0
- package/cjs/hooks/props/useInputProps.d.ts +14 -0
- package/cjs/hooks/props/useInputProps.d.ts.map +1 -0
- package/cjs/hooks/props/useInputProps.js +33 -0
- package/cjs/hooks/useListenRender.js +4 -4
- package/cjs/hooks/useTheme.d.ts.map +1 -1
- package/cjs/hooks/useTheme.js +3 -2
- package/cjs/index.d.ts +6 -3
- package/cjs/index.d.ts.map +1 -1
- package/cjs/index.js +46 -14
- package/cjs/providers/FlowProvider.d.ts +7 -1
- package/cjs/providers/FlowProvider.d.ts.map +1 -1
- package/cjs/providers/FlowProvider.js +33 -14
- package/cjs/store/PropsStore.d.ts +11 -6
- package/cjs/store/PropsStore.d.ts.map +1 -1
- package/cjs/store/PropsStore.js +55 -39
- package/cjs/types/props.d.ts +83 -0
- package/cjs/types/props.d.ts.map +1 -0
- package/cjs/types/props.js +5 -0
- package/cjs/types.d.ts +5 -1
- package/cjs/types.d.ts.map +1 -1
- package/cjs/utils/wrapNodeTypes.d.ts +30 -0
- package/cjs/utils/wrapNodeTypes.d.ts.map +1 -0
- package/cjs/utils/wrapNodeTypes.js +56 -0
- package/cjs/workers/manhattan.worker.js +12534 -31
- package/cjs/workers/manhattan.worker.js.map +7 -0
- package/esm/Flow.d.ts +1 -1
- package/esm/Flow.d.ts.map +1 -1
- package/esm/Flow.js +30 -16
- package/esm/components/Legend/index.d.ts.map +1 -1
- package/esm/components/Legend/index.js +3 -2
- package/esm/components/Popover/index.d.ts +1 -9
- package/esm/components/Popover/index.d.ts.map +1 -1
- package/esm/components/Popover/index.js +16 -87
- package/esm/components/Tooltip/index.d.ts +1 -10
- package/esm/components/Tooltip/index.d.ts.map +1 -1
- package/esm/components/Tooltip/index.js +14 -97
- package/esm/edges/manhattan.d.ts.map +1 -1
- package/esm/edges/manhattan.js +95 -23
- package/esm/hoc/createFlow.d.ts +30 -4
- package/esm/hoc/createFlow.d.ts.map +1 -1
- package/esm/hoc/createFlow.js +48 -20
- package/esm/hooks/index.d.ts +5 -2
- package/esm/hooks/index.d.ts.map +1 -1
- package/esm/hooks/index.js +8 -3
- package/esm/hooks/props/index.d.ts +12 -0
- package/esm/hooks/props/index.d.ts.map +1 -0
- package/esm/hooks/props/index.js +12 -0
- package/esm/hooks/props/useFlowProps.d.ts +23 -0
- package/esm/hooks/props/useFlowProps.d.ts.map +1 -0
- package/esm/hooks/props/useFlowProps.js +29 -0
- package/esm/hooks/props/useGetFlowProps.d.ts +19 -0
- package/esm/hooks/props/useGetFlowProps.d.ts.map +1 -0
- package/esm/hooks/props/useGetFlowProps.js +31 -0
- package/esm/hooks/props/useGetInputProps.d.ts +18 -0
- package/esm/hooks/props/useGetInputProps.d.ts.map +1 -0
- package/esm/hooks/props/useGetInputProps.js +31 -0
- package/esm/hooks/props/useInputProps.d.ts +14 -0
- package/esm/hooks/props/useInputProps.d.ts.map +1 -0
- package/esm/hooks/props/useInputProps.js +27 -0
- package/esm/hooks/useListenRender.js +4 -4
- package/esm/hooks/useTheme.d.ts.map +1 -1
- package/esm/hooks/useTheme.js +3 -2
- package/esm/index.d.ts +6 -3
- package/esm/index.d.ts.map +1 -1
- package/esm/index.js +22 -3
- package/esm/providers/FlowProvider.d.ts +7 -1
- package/esm/providers/FlowProvider.d.ts.map +1 -1
- package/esm/providers/FlowProvider.js +36 -15
- package/esm/store/PropsStore.d.ts +11 -6
- package/esm/store/PropsStore.d.ts.map +1 -1
- package/esm/store/PropsStore.js +75 -34
- package/esm/types/props.d.ts +83 -0
- package/esm/types/props.d.ts.map +1 -0
- package/esm/types/props.js +1 -0
- package/esm/types.d.ts +5 -1
- package/esm/types.d.ts.map +1 -1
- package/esm/utils/wrapNodeTypes.d.ts +30 -0
- package/esm/utils/wrapNodeTypes.d.ts.map +1 -0
- package/esm/utils/wrapNodeTypes.js +55 -0
- package/esm/workers/manhattan.worker.js +1 -1
- package/esm/workers/manhattan.worker.js.map +7 -0
- package/package.json +5 -3
- package/cjs/hooks/props/useGetProps.d.ts +0 -6
- package/cjs/hooks/props/useGetProps.d.ts.map +0 -1
- package/cjs/hooks/props/useGetProps.js +0 -29
- package/cjs/hooks/props/useProps.d.ts +0 -2
- package/cjs/hooks/props/useProps.d.ts.map +0 -1
- package/cjs/hooks/props/useProps.js +0 -20
- package/cjs/hooks/props/usePropsSelector.d.ts +0 -13
- package/cjs/hooks/props/usePropsSelector.d.ts.map +0 -1
- package/cjs/hooks/props/usePropsSelector.js +0 -37
- package/esm/hooks/props/useGetProps.d.ts +0 -6
- package/esm/hooks/props/useGetProps.d.ts.map +0 -1
- package/esm/hooks/props/useGetProps.js +0 -21
- package/esm/hooks/props/useProps.d.ts +0 -2
- package/esm/hooks/props/useProps.d.ts.map +0 -1
- package/esm/hooks/props/useProps.js +0 -14
- package/esm/hooks/props/usePropsSelector.d.ts +0 -13
- package/esm/hooks/props/usePropsSelector.d.ts.map +0 -1
- package/esm/hooks/props/usePropsSelector.js +0 -31
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @author: yanxianliang
|
|
3
|
+
* @date: 2025-01-17
|
|
4
|
+
* @desc: 获取原始输入 props(用户传入的)
|
|
5
|
+
*
|
|
6
|
+
* Copyright (c) 2025 by yanxianliang, All Rights Reserved.
|
|
7
|
+
*/
|
|
8
|
+
import { useSelector } from "../state/useSelector";
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* 获取原始输入 props
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* // 获取全部原始 props
|
|
15
|
+
* const inputProps = useInputProps<IBloodlineFlowProps>();
|
|
16
|
+
*
|
|
17
|
+
* @example
|
|
18
|
+
* // 使用 selector 获取特定属性
|
|
19
|
+
* const root = useInputProps<IBloodlineFlowProps, BaseBloodNode>(state => state.root);
|
|
20
|
+
*/
|
|
21
|
+
|
|
22
|
+
export function useInputProps(selector) {
|
|
23
|
+
return useSelector(function (state) {
|
|
24
|
+
var inputProps = state.inputProps;
|
|
25
|
+
return selector ? selector(inputProps) : inputProps;
|
|
26
|
+
});
|
|
27
|
+
}
|
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import { useNodes, useReactFlow } from "@xyflow/react";
|
|
10
10
|
import { useEffect, useRef } from "react";
|
|
11
|
-
import {
|
|
11
|
+
import { useGetFlowProps } from "./props/useGetFlowProps";
|
|
12
12
|
export var useListenRender = function useListenRender() {
|
|
13
|
-
var
|
|
14
|
-
var onRender =
|
|
13
|
+
var getFlowProps = useGetFlowProps();
|
|
14
|
+
var onRender = getFlowProps().onRender;
|
|
15
15
|
var nodes = useNodes();
|
|
16
16
|
var _useReactFlow = useReactFlow(),
|
|
17
17
|
getEdges = _useReactFlow.getEdges;
|
|
@@ -28,7 +28,7 @@ export var useListenRender = function useListenRender() {
|
|
|
28
28
|
var timing = performance.now() - startRenderTimeRef.current;
|
|
29
29
|
var edges = getEdges();
|
|
30
30
|
onRender === null || onRender === void 0 || onRender(nodes, edges, timing);
|
|
31
|
-
if (
|
|
31
|
+
if (getFlowProps().debug) {
|
|
32
32
|
console.log("\u521D\u59CB\u5316\u8282\u70B9\u6570\uFF1A".concat(nodes.length, ", \u8FB9\uFF1A").concat(edges.length, ", \u6E32\u67D3\u65F6\u957F\uFF1A").concat(timing));
|
|
33
33
|
}
|
|
34
34
|
}, 1);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useTheme.d.ts","sourceRoot":"","sources":["useTheme.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"useTheme.d.ts","sourceRoot":"","sources":["useTheme.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,QAAQ;;;;;;;CAKpB,CAAC"}
|
package/esm/hooks/useTheme.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @author: yanxianliang
|
|
3
3
|
* @date: 2025-06-21 13:16
|
|
4
|
+
* @modified:2025/1/17 by yanxianliang
|
|
4
5
|
* @desc: 节点主题配置
|
|
5
6
|
*
|
|
6
7
|
* Copyright (c) 2025 by yanxianliang, All Rights Reserved.
|
|
@@ -8,9 +9,9 @@
|
|
|
8
9
|
import { useShallow } from "zustand/react/shallow";
|
|
9
10
|
import { useMemo } from "react";
|
|
10
11
|
import { getThemeWithDefaultValue } from "../utils/getThemeWithDefaultValue";
|
|
11
|
-
import {
|
|
12
|
+
import { useFlowProps } from "./props/useFlowProps";
|
|
12
13
|
export var useTheme = function useTheme() {
|
|
13
|
-
var theme =
|
|
14
|
+
var theme = useFlowProps(useShallow(function (state) {
|
|
14
15
|
return state.theme;
|
|
15
16
|
}));
|
|
16
17
|
return useMemo(function () {
|
package/esm/index.d.ts
CHANGED
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* @author: yanxianliang
|
|
4
4
|
* @date: 2025-07-02 09:27
|
|
5
|
-
* @
|
|
5
|
+
* @modified:2025/1/17 by yanxianliang
|
|
6
|
+
* @desc: 基础 Graph 组件
|
|
6
7
|
*
|
|
7
8
|
* 提供统一图解决方案底层
|
|
8
9
|
*
|
|
@@ -12,14 +13,16 @@ import { Flow } from "./Flow";
|
|
|
12
13
|
declare const BaseFlow: (props: import("react").PropsWithChildren<import("./types").IBaseFlowProps<import("@xyflow/react").Node, import("@xyflow/react").Edge>>) => import("react/jsx-runtime").JSX.Element;
|
|
13
14
|
export default BaseFlow;
|
|
14
15
|
export * from './types';
|
|
16
|
+
export * from './types/props';
|
|
15
17
|
export * from './hooks';
|
|
16
18
|
export * from './components';
|
|
17
19
|
export * from './utils/parse';
|
|
18
20
|
export * from './utils/dimension';
|
|
19
|
-
export * from './hoc/createFlow';
|
|
20
|
-
export * from './hoc/withFlowProvider';
|
|
21
21
|
export * from './utils/measureText';
|
|
22
22
|
export * from './utils/layouts/mindmap';
|
|
23
|
+
export * from './utils/wrapNodeTypes';
|
|
24
|
+
export * from './hoc/createFlow';
|
|
25
|
+
export * from './hoc/withFlowProvider';
|
|
23
26
|
export * from './constants/NodeRoleType';
|
|
24
27
|
export * from './constants/InnerFlowType';
|
|
25
28
|
export * from './constants/SelectionStrategy';
|
package/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.tsx"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["index.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAG9B,QAAA,MAAM,QAAQ,qLAAmB,CAAC;AAElC,eAAe,QAAQ,CAAC;AAGxB,cAAc,SAAS,CAAC;AACxB,cAAc,eAAe,CAAC;AAG9B,cAAc,SAAS,CAAC;AAGxB,cAAc,cAAc,CAAC;AAG7B,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,wBAAwB,CAAC;AAGvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC;AAG9C,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGrE,OAAO,EAAE,IAAI,EAAE,CAAC"}
|
package/esm/index.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @author: yanxianliang
|
|
3
3
|
* @date: 2025-07-02 09:27
|
|
4
|
-
* @
|
|
4
|
+
* @modified:2025/1/17 by yanxianliang
|
|
5
|
+
* @desc: 基础 Graph 组件
|
|
5
6
|
*
|
|
6
7
|
* 提供统一图解决方案底层
|
|
7
8
|
*
|
|
@@ -11,17 +12,35 @@ import { Flow } from "./Flow";
|
|
|
11
12
|
import { createFlow } from "./hoc/createFlow";
|
|
12
13
|
var BaseFlow = createFlow(Flow);
|
|
13
14
|
export default BaseFlow;
|
|
15
|
+
|
|
16
|
+
// 类型导出
|
|
14
17
|
export * from "./types";
|
|
18
|
+
export * from "./types/props";
|
|
19
|
+
|
|
20
|
+
// Hooks 导出
|
|
15
21
|
export * from "./hooks";
|
|
22
|
+
|
|
23
|
+
// 组件导出
|
|
16
24
|
export * from "./components";
|
|
25
|
+
|
|
26
|
+
// 工具函数导出
|
|
17
27
|
export * from "./utils/parse";
|
|
18
28
|
export * from "./utils/dimension";
|
|
19
|
-
export * from "./hoc/createFlow";
|
|
20
|
-
export * from "./hoc/withFlowProvider";
|
|
21
29
|
export * from "./utils/measureText";
|
|
22
30
|
export * from "./utils/layouts/mindmap";
|
|
31
|
+
export * from "./utils/wrapNodeTypes";
|
|
32
|
+
|
|
33
|
+
// HOC 导出
|
|
34
|
+
export * from "./hoc/createFlow";
|
|
35
|
+
export * from "./hoc/withFlowProvider";
|
|
36
|
+
|
|
37
|
+
// 常量导出
|
|
23
38
|
export * from "./constants/NodeRoleType";
|
|
24
39
|
export * from "./constants/InnerFlowType";
|
|
25
40
|
export * from "./constants/SelectionStrategy";
|
|
41
|
+
|
|
42
|
+
// Provider 导出
|
|
26
43
|
export { FlowContext, FlowProvider } from "./providers/FlowProvider";
|
|
44
|
+
|
|
45
|
+
// Flow 组件导出
|
|
27
46
|
export { Flow };
|
|
@@ -10,9 +10,15 @@ export declare const FlowProvider: React.ComponentType<{
|
|
|
10
10
|
}>;
|
|
11
11
|
/**
|
|
12
12
|
* hooks 创建
|
|
13
|
-
*
|
|
13
|
+
* @deprecated 使用 hooks/state 目录下的 hooks
|
|
14
14
|
*/
|
|
15
15
|
export declare const useSelector: <U>(selector: (state: ExtractState<StoreApi<BaseStateType>>) => U) => U;
|
|
16
|
+
/**
|
|
17
|
+
* @deprecated 使用 hooks/state/useSetState
|
|
18
|
+
*/
|
|
16
19
|
export declare const useSetState: () => (partial: BaseStateType | Partial<BaseStateType> | ((state: BaseStateType) => BaseStateType | Partial<BaseStateType>), replace?: boolean | undefined) => void;
|
|
20
|
+
/**
|
|
21
|
+
* @deprecated 使用 hooks/state/useGetState
|
|
22
|
+
*/
|
|
17
23
|
export declare const useGetState: () => () => BaseStateType;
|
|
18
24
|
//# sourceMappingURL=FlowProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowProvider.d.ts","sourceRoot":"","sources":["FlowProvider.tsx"],"names":[],"mappings":"AASA,OAAO,
|
|
1
|
+
{"version":3,"file":"FlowProvider.d.ts","sourceRoot":"","sources":["FlowProvider.tsx"],"names":[],"mappings":"AASA,OAAO,KAAqC,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAU,aAAa,EAAE,MAAM,SAAS,CAAC;AAEhD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAGvD,eAAO,MAAM,WAAW;;EAET,CAAC;AA2ChB,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,aAAa,CAAC;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAc1E,CAAC;AAEH;;;GAGG;AACH,eAAO,MAAM,WAAW,wBACJ,aAAa,SAAS,aAAa,CAAC,CAAC,KAAK,CAAC,MAQ9D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,qKAOvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,2BAOvB,CAAC"}
|
|
@@ -7,8 +7,8 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
7
7
|
/**
|
|
8
8
|
* @author: yanxianliang
|
|
9
9
|
* @date: 2025-10-16 17:28
|
|
10
|
-
* @modified:2025/
|
|
11
|
-
* @desc: 全局状态管理器
|
|
10
|
+
* @modified:2025/1/17 by yanxianliang
|
|
11
|
+
* @desc: 全局状态管理器 - 支持双层 Props 存储
|
|
12
12
|
*
|
|
13
13
|
* Copyright (c) 2025 by yanxianliang, All Rights Reserved.
|
|
14
14
|
*/
|
|
@@ -17,23 +17,36 @@ import React, { memo, useContext, useState } from "react";
|
|
|
17
17
|
import { create } from "zustand";
|
|
18
18
|
import { devtools } from "zustand/middleware";
|
|
19
19
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
20
|
-
// Context 外部提供,支持inner hooks
|
|
20
|
+
// Context 外部提供,支持 inner hooks
|
|
21
21
|
export var FlowContext = /*#__PURE__*/React.createContext(null);
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* 创建初始状态
|
|
25
|
+
*/
|
|
26
|
+
var createInitialState = function createInitialState() {
|
|
27
|
+
return {
|
|
28
|
+
id: '',
|
|
29
|
+
props: undefined,
|
|
30
|
+
// 向后兼容
|
|
31
|
+
inputProps: undefined,
|
|
32
|
+
// 原始输入 props
|
|
33
|
+
flowProps: undefined,
|
|
34
|
+
// 转换后的 Flow props
|
|
35
|
+
onEdgesChangeHandlers: [],
|
|
36
|
+
forceRenderTimes: 0,
|
|
37
|
+
initialNodeIdSet: new Set(),
|
|
38
|
+
nodeTypeMap: new Map(),
|
|
39
|
+
smartEdges: {},
|
|
40
|
+
edgeStore: {}
|
|
41
|
+
};
|
|
42
|
+
};
|
|
22
43
|
var FlowProviderWrapper = function FlowProviderWrapper(_ref) {
|
|
23
44
|
var children = _ref.children;
|
|
24
45
|
var _useState = useState(function () {
|
|
25
|
-
return create(devtools(function (
|
|
26
|
-
return
|
|
27
|
-
onEdgesChangeHandlers: [],
|
|
28
|
-
// onChange 列表
|
|
29
|
-
forceRenderTimes: 0,
|
|
30
|
-
initialNodeIdSet: new Set(),
|
|
31
|
-
nodeTypeMap: new Map(),
|
|
32
|
-
smartEdges: {},
|
|
33
|
-
edgeStore: {}
|
|
34
|
-
};
|
|
46
|
+
return create()(devtools(function () {
|
|
47
|
+
return createInitialState();
|
|
35
48
|
}, {
|
|
36
|
-
name: "
|
|
49
|
+
name: "rxflow",
|
|
37
50
|
enabled: process.env.NODE_ENV === 'development'
|
|
38
51
|
}));
|
|
39
52
|
}),
|
|
@@ -61,7 +74,7 @@ export var FlowProvider = /*#__PURE__*/memo(function (_ref2) {
|
|
|
61
74
|
|
|
62
75
|
/**
|
|
63
76
|
* hooks 创建
|
|
64
|
-
*
|
|
77
|
+
* @deprecated 使用 hooks/state 目录下的 hooks
|
|
65
78
|
*/
|
|
66
79
|
export var useSelector = function useSelector(selector) {
|
|
67
80
|
var context = useContext(FlowContext);
|
|
@@ -71,6 +84,10 @@ export var useSelector = function useSelector(selector) {
|
|
|
71
84
|
}
|
|
72
85
|
return context.useStore(selector);
|
|
73
86
|
};
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* @deprecated 使用 hooks/state/useSetState
|
|
90
|
+
*/
|
|
74
91
|
export var useSetState = function useSetState() {
|
|
75
92
|
var context = useContext(FlowContext);
|
|
76
93
|
if (!context) {
|
|
@@ -79,6 +96,10 @@ export var useSetState = function useSetState() {
|
|
|
79
96
|
}
|
|
80
97
|
return context.useStore.setState;
|
|
81
98
|
};
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* @deprecated 使用 hooks/state/useGetState
|
|
102
|
+
*/
|
|
82
103
|
export var useGetState = function useGetState() {
|
|
83
104
|
var context = useContext(FlowContext);
|
|
84
105
|
if (!context) {
|
|
@@ -1,16 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @author: yanxianliang
|
|
3
3
|
* @date: 2025-10-16 19:35
|
|
4
|
-
* @modified:2025/
|
|
5
|
-
* @desc: Props 存储
|
|
4
|
+
* @modified:2025/1/17 by yanxianliang
|
|
5
|
+
* @desc: Props 存储 - 双层存储设计
|
|
6
|
+
*
|
|
7
|
+
* 支持同时存储原始输入 props 和转换后的 flow props
|
|
6
8
|
*
|
|
7
9
|
* Copyright (c) 2025 by yanxianliang, All Rights Reserved.
|
|
8
10
|
*/
|
|
9
11
|
import { IBaseFlowProps } from "../types";
|
|
10
|
-
import { Edge, Node } from "@xyflow/react";
|
|
11
12
|
import { ReactNode } from "react";
|
|
12
|
-
export
|
|
13
|
-
props
|
|
13
|
+
export interface PropsStoreProps<TInputProps extends Record<string, any> = Record<string, any>, TFlowProps extends IBaseFlowProps = IBaseFlowProps> {
|
|
14
|
+
/** 原始输入 props(用户传入的) */
|
|
15
|
+
inputProps: TInputProps;
|
|
16
|
+
/** 转换后的 Flow props(传给 Flow 组件的) */
|
|
17
|
+
flowProps: TFlowProps;
|
|
14
18
|
children: ReactNode;
|
|
15
|
-
}
|
|
19
|
+
}
|
|
20
|
+
export declare const PropsStore: <TInputProps extends Record<string, any> = Record<string, any>, TFlowProps extends IBaseFlowProps<import("@xyflow/react").Node, import("@xyflow/react").Edge> = IBaseFlowProps<import("@xyflow/react").Node, import("@xyflow/react").Edge>>({ inputProps, flowProps, children }: PropsStoreProps<TInputProps, TFlowProps>) => import("react/jsx-runtime").JSX.Element;
|
|
16
21
|
//# sourceMappingURL=PropsStore.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PropsStore.d.ts","sourceRoot":"","sources":["PropsStore.tsx"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"PropsStore.d.ts","sourceRoot":"","sources":["PropsStore.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,cAAc,EAAmB,MAAM,UAAU,CAAC;AAG3D,OAAO,EAAE,SAAS,EAA8B,MAAM,OAAO,CAAC;AAK9D,MAAM,WAAW,eAAe,CAC9B,WAAW,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7D,UAAU,SAAS,cAAc,GAAG,cAAc;IAElD,wBAAwB;IACxB,UAAU,EAAE,WAAW,CAAC;IACxB,mCAAmC;IACnC,SAAS,EAAE,UAAU,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAiCD,eAAO,MAAM,UAAU,mRAOpB,gBAAgB,WAAW,EAAE,UAAU,CAAC,4CAyC1C,CAAC"}
|
package/esm/store/PropsStore.js
CHANGED
|
@@ -1,68 +1,109 @@
|
|
|
1
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
2
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
3
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
1
4
|
/**
|
|
2
5
|
* @author: yanxianliang
|
|
3
6
|
* @date: 2025-10-16 19:35
|
|
4
|
-
* @modified:2025/
|
|
5
|
-
* @desc: Props 存储
|
|
7
|
+
* @modified:2025/1/17 by yanxianliang
|
|
8
|
+
* @desc: Props 存储 - 双层存储设计
|
|
9
|
+
*
|
|
10
|
+
* 支持同时存储原始输入 props 和转换后的 flow props
|
|
6
11
|
*
|
|
7
12
|
* Copyright (c) 2025 by yanxianliang, All Rights Reserved.
|
|
8
13
|
*/
|
|
9
14
|
|
|
10
15
|
import { NodeRoleType } from "../constants/NodeRoleType";
|
|
11
16
|
import { useDeepCompareEffect } from 'ahooks';
|
|
12
|
-
import
|
|
17
|
+
import { useEffect, useMemo, useRef } from "react";
|
|
13
18
|
import { v4 as uuid } from "uuid";
|
|
14
|
-
import { useGetState } from "
|
|
15
|
-
import { useSetState } from "
|
|
19
|
+
import { useGetState } from "../hooks/state/useGetState";
|
|
20
|
+
import { useSetState } from "../hooks/state/useSetState";
|
|
16
21
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
17
22
|
import { Fragment as _Fragment } from "react/jsx-runtime";
|
|
18
23
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
24
|
+
/**
|
|
25
|
+
* 构建 nodeTypeMap
|
|
26
|
+
*/
|
|
27
|
+
var buildNodeTypeMap = function buildNodeTypeMap(nodeTypes) {
|
|
28
|
+
var map = new Map();
|
|
29
|
+
if (nodeTypes) {
|
|
30
|
+
var _iterator = _createForOfIteratorHelper(nodeTypes),
|
|
31
|
+
_step;
|
|
32
|
+
try {
|
|
33
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
34
|
+
var definition = _step.value;
|
|
35
|
+
map.set(definition.type, definition);
|
|
36
|
+
}
|
|
37
|
+
} catch (err) {
|
|
38
|
+
_iterator.e(err);
|
|
39
|
+
} finally {
|
|
40
|
+
_iterator.f();
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return map;
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
/**
|
|
47
|
+
* 生成 SubFlow 样式
|
|
48
|
+
*/
|
|
49
|
+
var generateSubFlowStyles = function generateSubFlowStyles(nodeTypes) {
|
|
50
|
+
var styles = [];
|
|
51
|
+
if (nodeTypes) {
|
|
52
|
+
var _iterator2 = _createForOfIteratorHelper(nodeTypes),
|
|
53
|
+
_step2;
|
|
54
|
+
try {
|
|
55
|
+
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
56
|
+
var _definition$allowCont;
|
|
57
|
+
var definition = _step2.value;
|
|
58
|
+
if (definition.nodeRoleType === NodeRoleType.SubFlow && ((_definition$allowCont = definition.allowContentSelection) !== null && _definition$allowCont !== void 0 ? _definition$allowCont : true)) {
|
|
59
|
+
styles.push(".react-flow__node-".concat(definition.type, " {pointer-events: none!important;}"));
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
} catch (err) {
|
|
63
|
+
_iterator2.e(err);
|
|
64
|
+
} finally {
|
|
65
|
+
_iterator2.f();
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return styles;
|
|
69
|
+
};
|
|
19
70
|
export var PropsStore = function PropsStore(_ref) {
|
|
20
|
-
var
|
|
71
|
+
var inputProps = _ref.inputProps,
|
|
72
|
+
flowProps = _ref.flowProps,
|
|
21
73
|
children = _ref.children;
|
|
22
74
|
var setState = useSetState();
|
|
23
75
|
var getState = useGetState();
|
|
24
76
|
var defaultId = useMemo(function () {
|
|
25
77
|
return uuid();
|
|
26
78
|
}, []);
|
|
27
|
-
var nodeTypes =
|
|
79
|
+
var nodeTypes = flowProps.nodeTypes;
|
|
28
80
|
var styleContentRef = useRef([]);
|
|
29
81
|
|
|
30
|
-
//
|
|
82
|
+
// 构建 nodeTypeMap
|
|
31
83
|
var nodeTypeMap = useMemo(function () {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
if (nodeTypes) {
|
|
35
|
-
for (var i = 0; i < nodeTypes.length; i++) {
|
|
36
|
-
var _definition$allowCont;
|
|
37
|
-
var definition = nodeTypes[i];
|
|
38
|
-
map.set(definition.type, definition);
|
|
39
|
-
// TODO 子工作流需要禁用内容区域的拖拽
|
|
40
|
-
if (definition.nodeRoleType === NodeRoleType.SubFlow && ((_definition$allowCont = definition.allowContentSelection) !== null && _definition$allowCont !== void 0 ? _definition$allowCont : true)) {
|
|
41
|
-
// 子工作流,需要固定样式
|
|
42
|
-
var type = definition.type;
|
|
43
|
-
styleContentRef.current.push(".react-flow__node-".concat(type, " {pointer-events: none!important;}"));
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
return map;
|
|
84
|
+
styleContentRef.current = generateSubFlowStyles(nodeTypes);
|
|
85
|
+
return buildNodeTypeMap(nodeTypes);
|
|
48
86
|
}, [nodeTypes]);
|
|
49
87
|
|
|
50
|
-
//
|
|
88
|
+
// 更新状态 - 同时存储 inputProps 和 flowProps
|
|
51
89
|
useDeepCompareEffect(function () {
|
|
52
90
|
setState({
|
|
53
|
-
|
|
54
|
-
|
|
91
|
+
// 分别存储原始和转换后的 props
|
|
92
|
+
inputProps: inputProps,
|
|
93
|
+
flowProps: flowProps,
|
|
94
|
+
// 其他状态
|
|
95
|
+
id: flowProps.id || defaultId,
|
|
55
96
|
nodeTypeMap: nodeTypeMap
|
|
56
97
|
});
|
|
57
|
-
}, [
|
|
58
|
-
useEffect(function () {
|
|
59
|
-
// nodes 变化,需要重新进行初始化,清除当前初始化记录
|
|
60
|
-
getState().initialNodeIdSet.clear();
|
|
61
|
-
}, [props.nodes]);
|
|
98
|
+
}, [inputProps, flowProps]);
|
|
62
99
|
|
|
63
|
-
//
|
|
100
|
+
// nodes 变化时清除初始化记录
|
|
101
|
+
useEffect(function () {
|
|
102
|
+
var _getState$initialNode;
|
|
103
|
+
(_getState$initialNode = getState().initialNodeIdSet) === null || _getState$initialNode === void 0 || _getState$initialNode.clear();
|
|
104
|
+
}, [flowProps.nodes]);
|
|
64
105
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
65
|
-
children: [/*#__PURE__*/_jsx("style", {
|
|
106
|
+
children: [styleContentRef.current.length > 0 && /*#__PURE__*/_jsx("style", {
|
|
66
107
|
children: styleContentRef.current.join('')
|
|
67
108
|
}), children]
|
|
68
109
|
});
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @author: yanxianliang
|
|
3
|
+
* @date: 2025-01-17
|
|
4
|
+
* @desc: Props 类型定义 - 分层设计
|
|
5
|
+
*
|
|
6
|
+
* Copyright (c) 2025 by yanxianliang, All Rights Reserved.
|
|
7
|
+
*/
|
|
8
|
+
import { Edge, Node, PanelPosition, ReactFlowProps } from "@xyflow/react";
|
|
9
|
+
import React from "react";
|
|
10
|
+
import { MarkDefinition } from "../components/MarkerDefinitions/types";
|
|
11
|
+
import { ScrollbarPluginOptions } from "../plugins/scrollbar/types";
|
|
12
|
+
import { BaseThemeConfig, INodeDefinition, LayoutFunction } from "../types";
|
|
13
|
+
/**
|
|
14
|
+
* 核心层 Props - ReactFlow 原生属性的扩展
|
|
15
|
+
* 这些属性会透传给 ReactFlow
|
|
16
|
+
*/
|
|
17
|
+
export interface CoreFlowProps<NodeType extends Node = Node, EdgeType extends Edge = Edge> extends Omit<ReactFlowProps<NodeType, EdgeType>, 'nodeTypes' | 'width' | 'height'> {
|
|
18
|
+
nodeTypes?: Array<INodeDefinition<NodeType['data']>>;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* 框架层 Props - rxflow 框架属性
|
|
22
|
+
* 这些属性不透传给 ReactFlow,由框架内部消费
|
|
23
|
+
*/
|
|
24
|
+
export interface FrameworkProps<NodeType extends Node = Node, EdgeType extends Edge = Edge> {
|
|
25
|
+
width?: string | number;
|
|
26
|
+
height?: string | number;
|
|
27
|
+
rootStyle?: React.CSSProperties;
|
|
28
|
+
showControls?: boolean;
|
|
29
|
+
controlsPosition?: PanelPosition;
|
|
30
|
+
controlsOrientation?: 'horizontal' | 'vertical';
|
|
31
|
+
customControls?: React.ReactNode;
|
|
32
|
+
showMiniMap?: boolean;
|
|
33
|
+
getMiniMapNodeColor?: (node: Node) => string;
|
|
34
|
+
showFullscreen?: boolean;
|
|
35
|
+
showForceLayout?: boolean;
|
|
36
|
+
showInteractive?: boolean;
|
|
37
|
+
showFitView?: boolean;
|
|
38
|
+
showZoom?: boolean;
|
|
39
|
+
showLegend?: boolean | {
|
|
40
|
+
showAll?: boolean;
|
|
41
|
+
};
|
|
42
|
+
layout?: LayoutFunction<NodeType, EdgeType>;
|
|
43
|
+
forceLayout?: boolean;
|
|
44
|
+
autoCenter?: boolean;
|
|
45
|
+
theme?: BaseThemeConfig;
|
|
46
|
+
background?: string;
|
|
47
|
+
plugins?: {
|
|
48
|
+
scroller?: false | ScrollbarPluginOptions;
|
|
49
|
+
};
|
|
50
|
+
markers?: MarkDefinition[];
|
|
51
|
+
onZoomIn?: () => void;
|
|
52
|
+
onZoomOut?: () => void;
|
|
53
|
+
onFitView?: () => void;
|
|
54
|
+
onInteractiveChange?: (interactiveStatus: boolean) => void;
|
|
55
|
+
onRender?: (nodes: NodeType[], edges: EdgeType[], timing: number) => void;
|
|
56
|
+
forceFitView?: boolean;
|
|
57
|
+
loading?: boolean;
|
|
58
|
+
readOnly?: boolean;
|
|
59
|
+
debug?: boolean;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* 完整的 Base Flow Props
|
|
63
|
+
*/
|
|
64
|
+
export type BaseFlowProps<NodeType extends Node = Node, EdgeType extends Edge = Edge> = CoreFlowProps<NodeType, EdgeType> & FrameworkProps<NodeType, EdgeType>;
|
|
65
|
+
/**
|
|
66
|
+
* Props Store 状态类型
|
|
67
|
+
*/
|
|
68
|
+
export interface PropsStoreState<TInputProps = Record<string, any>, TFlowProps = Record<string, any>> {
|
|
69
|
+
/** 原始输入 props(用户传入的) */
|
|
70
|
+
inputProps: TInputProps;
|
|
71
|
+
/** 转换后的 Flow props(传给 Flow 组件的) */
|
|
72
|
+
flowProps: TFlowProps;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* 创建扩展包 Props 类型的辅助类型
|
|
76
|
+
* 用于移除基础包中不需要的属性
|
|
77
|
+
*/
|
|
78
|
+
export type OmitBaseProps<T> = Omit<T, 'nodes' | 'edges' | 'defaultNodes' | 'defaultEdges'>;
|
|
79
|
+
/**
|
|
80
|
+
* 创建扩展包 Props 类型
|
|
81
|
+
*/
|
|
82
|
+
export type ExtendFlowProps<TBase, TExtend, TOmit extends keyof TBase = never> = Omit<TBase, TOmit | 'nodes' | 'edges' | 'defaultNodes' | 'defaultEdges'> & TExtend;
|
|
83
|
+
//# sourceMappingURL=props.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"props.d.ts","sourceRoot":"","sources":["props.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC1E,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE5E;;;GAGG;AACH,MAAM,WAAW,aAAa,CAC5B,QAAQ,SAAS,IAAI,GAAG,IAAI,EAC5B,QAAQ,SAAS,IAAI,GAAG,IAAI,CAC5B,SAAQ,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC;IAClF,SAAS,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;CACtD;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc,CAC7B,QAAQ,SAAS,IAAI,GAAG,IAAI,EAC5B,QAAQ,SAAS,IAAI,GAAG,IAAI;IAG5B,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAGhC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,aAAa,CAAC;IACjC,mBAAmB,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IAChD,cAAc,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACjC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC;IAC7C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,GAAG;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAG7C,MAAM,CAAC,EAAE,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC5C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IAGrB,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,OAAO,CAAC,EAAE;QACR,QAAQ,CAAC,EAAE,KAAK,GAAG,sBAAsB,CAAC;KAC3C,CAAC;IACF,OAAO,CAAC,EAAE,cAAc,EAAE,CAAC;IAG3B,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,mBAAmB,CAAC,EAAE,CAAC,iBAAiB,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3D,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAG1E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,CACvB,QAAQ,SAAS,IAAI,GAAG,IAAI,EAC5B,QAAQ,SAAS,IAAI,GAAG,IAAI,IAC1B,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AAE3E;;GAEG;AACH,MAAM,WAAW,eAAe,CAC9B,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACjC,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAEhC,wBAAwB;IACxB,UAAU,EAAE,WAAW,CAAC;IACxB,mCAAmC;IACnC,SAAS,EAAE,UAAU,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,cAAc,GAAG,cAAc,CAAC,CAAC;AAE5F;;GAEG;AACH,MAAM,MAAM,eAAe,CACzB,KAAK,EACL,OAAO,EACP,KAAK,SAAS,MAAM,KAAK,GAAG,KAAK,IAC/B,IAAI,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,cAAc,GAAG,cAAc,CAAC,GAAG,OAAO,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/esm/types.d.ts
CHANGED
|
@@ -168,7 +168,6 @@ export interface IBaseFlowProps<NodeType extends Node = Node, EdgeType extends E
|
|
|
168
168
|
* @description nodes 节点变化/初始化渲染回调
|
|
169
169
|
*/
|
|
170
170
|
onRender?: (nodes: NodeType[], edges: EdgeType[], timing: number) => void;
|
|
171
|
-
omitProps?: string[];
|
|
172
171
|
/**
|
|
173
172
|
* 强制执行 fitView 逻辑,当 nodes 变化时自动触发 forceFitView
|
|
174
173
|
*/
|
|
@@ -209,7 +208,12 @@ export type PopupTriggerEventType = {
|
|
|
209
208
|
};
|
|
210
209
|
export type BaseStateType = {
|
|
211
210
|
id: string;
|
|
211
|
+
/** @deprecated 使用 flowProps 代替 */
|
|
212
212
|
props: Record<string, any>;
|
|
213
|
+
/** 原始输入 props(用户传入的) */
|
|
214
|
+
inputProps: Record<string, any>;
|
|
215
|
+
/** 转换后的 Flow props(传给 Flow 组件的) */
|
|
216
|
+
flowProps: Record<string, any>;
|
|
213
217
|
onEdgesChangeHandlers: OnEdgesChange<any>[];
|
|
214
218
|
isNodeDragging: boolean;
|
|
215
219
|
forceRenderTimes: number;
|
package/esm/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @author: yanxianliang
|
|
3
|
+
* @date: 2025-01-17
|
|
4
|
+
* @desc: NodeTypes 包装工具 - 标准化节点类型包装机制
|
|
5
|
+
*
|
|
6
|
+
* Copyright (c) 2025 by yanxianliang, All Rights Reserved.
|
|
7
|
+
*/
|
|
8
|
+
import { INodeDefinition, NodeTypeComponent } from "../types";
|
|
9
|
+
/**
|
|
10
|
+
* 包装器接口
|
|
11
|
+
*/
|
|
12
|
+
export interface NodeTypeWrapper {
|
|
13
|
+
/** 包装组件 */
|
|
14
|
+
wrap<T extends Record<string, unknown>>(definition: INodeDefinition<T>, WrapperComponent: NodeTypeComponent<T>): INodeDefinition<T>;
|
|
15
|
+
/** 获取原始组件 */
|
|
16
|
+
getOriginal<T extends Record<string, unknown>>(definition: INodeDefinition<T>): NodeTypeComponent<T> | undefined;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* 创建节点类型包装器
|
|
20
|
+
*/
|
|
21
|
+
export declare const createNodeTypeWrapper: () => NodeTypeWrapper;
|
|
22
|
+
/**
|
|
23
|
+
* 批量包装节点类型
|
|
24
|
+
*/
|
|
25
|
+
export declare const wrapNodeTypes: <T extends Record<string, unknown> = Record<string, unknown>>(nodeTypes: INodeDefinition<T>[] | undefined, WrapperComponent: NodeTypeComponent<any>, filter?: ((definition: INodeDefinition<T>) => boolean) | undefined) => INodeDefinition<T>[];
|
|
26
|
+
/**
|
|
27
|
+
* 默认的节点类型包装器实例
|
|
28
|
+
*/
|
|
29
|
+
export declare const nodeTypeWrapper: NodeTypeWrapper;
|
|
30
|
+
//# sourceMappingURL=wrapNodeTypes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wrapNodeTypes.d.ts","sourceRoot":"","sources":["wrapNodeTypes.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,WAAW;IACX,IAAI,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,EAC9B,gBAAgB,EAAE,iBAAiB,CAAC,CAAC,CAAC,GACrC,eAAe,CAAC,CAAC,CAAC,CAAC;IAEtB,aAAa;IACb,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3C,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,GAC7B,iBAAiB,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;CACrC;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,QAAO,eAiBvC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,aAAa,2EACb,gBAAgB,CAAC,CAAC,EAAE,GAAG,SAAS,oBACzB,kBAAkB,GAAG,CAAC,yBAClB,gBAAgB,CAAC,CAAC,KAAK,OAAO,kBACnD,gBAAgB,CAAC,CAAC,EAYpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,iBAA0B,CAAC"}
|