@lincle/react-shared 0.4.0-next.2 → 0.4.0-next.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.
Files changed (62) hide show
  1. package/dist/Contexts/EdgesContext.d.ts +22 -0
  2. package/dist/Contexts/EdgesContext.js +9 -0
  3. package/dist/Contexts/GraphContext.d.ts +17 -0
  4. package/dist/Contexts/GraphContext.js +19 -0
  5. package/dist/Contexts/index.d.ts +2 -0
  6. package/dist/Contexts/index.js +18 -0
  7. package/dist/Hooks/index.d.ts +13 -0
  8. package/dist/Hooks/index.js +29 -0
  9. package/dist/Hooks/useDefaultLine.d.ts +2 -0
  10. package/dist/Hooks/useDefaultLine.js +10 -0
  11. package/dist/Hooks/useDefaultNodeHeight.d.ts +2 -0
  12. package/dist/Hooks/useDefaultNodeHeight.js +10 -0
  13. package/dist/Hooks/useDefaultNodeWidth.d.ts +2 -0
  14. package/dist/Hooks/useDefaultNodeWidth.js +10 -0
  15. package/dist/Hooks/useDefaultShape.d.ts +2 -0
  16. package/dist/Hooks/useDefaultShape.js +10 -0
  17. package/dist/Hooks/useDiagramId.d.ts +2 -0
  18. package/dist/Hooks/useDiagramId.js +10 -0
  19. package/dist/Hooks/useEdge.d.ts +2 -0
  20. package/dist/Hooks/useEdge.js +10 -0
  21. package/dist/Hooks/useEdgeFrequency.d.ts +2 -0
  22. package/dist/Hooks/useEdgeFrequency.js +10 -0
  23. package/dist/Hooks/useEdgeSubscriber.d.ts +2 -0
  24. package/dist/Hooks/useEdgeSubscriber.js +10 -0
  25. package/dist/Hooks/useEdges.d.ts +2 -0
  26. package/dist/Hooks/useEdges.js +10 -0
  27. package/dist/Hooks/useGrid.d.ts +2 -0
  28. package/dist/Hooks/useGrid.js +10 -0
  29. package/dist/Hooks/useNodePositions.d.ts +2 -0
  30. package/dist/Hooks/useNodePositions.js +10 -0
  31. package/dist/Hooks/useRemoveEdge.d.ts +2 -0
  32. package/dist/Hooks/useRemoveEdge.js +10 -0
  33. package/dist/Hooks/useUpdateEdge.d.ts +2 -0
  34. package/dist/Hooks/useUpdateEdge.js +10 -0
  35. package/dist/Providers/EdgesProvider.d.ts +4 -0
  36. package/dist/Providers/EdgesProvider.js +46 -0
  37. package/dist/Providers/GraphProvider.d.ts +5 -0
  38. package/dist/Providers/GraphProvider.js +42 -0
  39. package/dist/Providers/Providers.d.ts +2 -0
  40. package/dist/Providers/Providers.js +18 -0
  41. package/dist/Providers/index.d.ts +5 -0
  42. package/dist/Providers/index.js +14 -0
  43. package/dist/{utils/defaultSettings.d.ts → defaultSettings.d.ts} +2 -1
  44. package/dist/{utils/defaultSettings.js → defaultSettings.js} +1 -0
  45. package/dist/index.d.ts +4 -116
  46. package/dist/index.js +20 -12
  47. package/dist/types.d.ts +82 -0
  48. package/dist/types.js +2 -0
  49. package/dist/utils/EdgeSubscriber.d.ts +1 -1
  50. package/dist/utils/EdgeSubscriber.js +1 -1
  51. package/dist/utils/NodePositions.d.ts +1 -1
  52. package/dist/utils/NodePositions.js +1 -1
  53. package/dist/utils/Path/generateOrigins.d.ts +1 -1
  54. package/dist/utils/Path/lines/generateCurve.d.ts +2 -2
  55. package/dist/utils/Path/lines/generateDirect.d.ts +2 -2
  56. package/dist/utils/Path/lines/generatePoints.d.ts +2 -2
  57. package/dist/utils/Path/lines/generateStep.d.ts +2 -2
  58. package/package.json +12 -12
  59. package/dist/utils/GraphContext.d.ts +0 -4
  60. package/dist/utils/GraphContext.js +0 -6
  61. package/dist/utils/GridContext.d.ts +0 -3
  62. package/dist/utils/GridContext.js +0 -10
@@ -0,0 +1,22 @@
1
+ import { type EdgeProps } from '../types';
2
+ declare const EdgesContext: import("react").Context<EdgesContextProps>;
3
+ export { EdgesContext };
4
+ export type Edge = Partial<Omit<EdgeProps, 'id'>> & {
5
+ center?: {
6
+ x: number;
7
+ y: number;
8
+ };
9
+ className?: string;
10
+ edgeId: string | number;
11
+ style?: any;
12
+ };
13
+ export type Edges = {
14
+ [key: string | number]: Edge;
15
+ };
16
+ export type RemoveEdge = (edgeId: string | number) => void;
17
+ export type UpdateEdge = (edgeId: string | number, edge: Partial<Edge>) => void;
18
+ export type EdgesContextProps = {
19
+ edges: Edges;
20
+ removeEdge?: RemoveEdge;
21
+ updateEdge?: UpdateEdge;
22
+ };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EdgesContext = void 0;
4
+ const react_1 = require("react");
5
+ const EdgesContext = (0, react_1.createContext)({
6
+ edges: {}
7
+ });
8
+ exports.EdgesContext = EdgesContext;
9
+ EdgesContext.displayName = 'LincleEdgesContext';
@@ -0,0 +1,17 @@
1
+ import { type GridType, type Line, type Shape } from '../types';
2
+ import type EdgeSubscriber from '../utils/EdgeSubscriber';
3
+ import type NodePositions from '../utils/NodePositions';
4
+ declare const GraphContext: import("react").Context<GraphContextProps>;
5
+ export { GraphContext };
6
+ export type GraphContextProps = {
7
+ edgeFrequency: number;
8
+ edgeSubscriber?: EdgeSubscriber;
9
+ grid: GridType | false;
10
+ id?: number | string;
11
+ line: Line;
12
+ nodeFrequency: number;
13
+ nodeHeight: number;
14
+ nodePositions?: NodePositions;
15
+ nodeWidth: number;
16
+ shape: Shape;
17
+ };
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.GraphContext = void 0;
7
+ const defaultSettings_1 = __importDefault(require("../defaultSettings"));
8
+ const react_1 = require("react");
9
+ const GraphContext = (0, react_1.createContext)({
10
+ edgeFrequency: defaultSettings_1.default.edgeFrequency,
11
+ grid: defaultSettings_1.default.grid,
12
+ line: defaultSettings_1.default.line,
13
+ nodeFrequency: defaultSettings_1.default.nodeFrequency,
14
+ nodeHeight: defaultSettings_1.default.height,
15
+ nodeWidth: defaultSettings_1.default.width,
16
+ shape: defaultSettings_1.default.shape
17
+ });
18
+ exports.GraphContext = GraphContext;
19
+ GraphContext.displayName = 'LincleGraphContext';
@@ -0,0 +1,2 @@
1
+ export * from './EdgesContext';
2
+ export * from './GraphContext';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./EdgesContext"), exports);
18
+ __exportStar(require("./GraphContext"), exports);
@@ -0,0 +1,13 @@
1
+ export * from './useDefaultLine';
2
+ export * from './useDefaultNodeHeight';
3
+ export * from './useDefaultNodeWidth';
4
+ export * from './useDefaultShape';
5
+ export * from './useDiagramId';
6
+ export * from './useEdge';
7
+ export * from './useEdgeFrequency';
8
+ export * from './useEdges';
9
+ export * from './useEdgeSubscriber';
10
+ export * from './useGrid';
11
+ export * from './useNodePositions';
12
+ export * from './useRemoveEdge';
13
+ export * from './useUpdateEdge';
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./useDefaultLine"), exports);
18
+ __exportStar(require("./useDefaultNodeHeight"), exports);
19
+ __exportStar(require("./useDefaultNodeWidth"), exports);
20
+ __exportStar(require("./useDefaultShape"), exports);
21
+ __exportStar(require("./useDiagramId"), exports);
22
+ __exportStar(require("./useEdge"), exports);
23
+ __exportStar(require("./useEdgeFrequency"), exports);
24
+ __exportStar(require("./useEdges"), exports);
25
+ __exportStar(require("./useEdgeSubscriber"), exports);
26
+ __exportStar(require("./useGrid"), exports);
27
+ __exportStar(require("./useNodePositions"), exports);
28
+ __exportStar(require("./useRemoveEdge"), exports);
29
+ __exportStar(require("./useUpdateEdge"), exports);
@@ -0,0 +1,2 @@
1
+ declare const useDefaultLine: () => import("..").Line;
2
+ export { useDefaultLine };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useDefaultLine = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useDefaultLine = () => {
7
+ const line = (0, react_1.useContext)(Contexts_1.GraphContext).line;
8
+ return line;
9
+ };
10
+ exports.useDefaultLine = useDefaultLine;
@@ -0,0 +1,2 @@
1
+ declare const useDefaultNodeHeight: () => number;
2
+ export { useDefaultNodeHeight };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useDefaultNodeHeight = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useDefaultNodeHeight = () => {
7
+ const nodeHeight = (0, react_1.useContext)(Contexts_1.GraphContext).nodeHeight;
8
+ return nodeHeight;
9
+ };
10
+ exports.useDefaultNodeHeight = useDefaultNodeHeight;
@@ -0,0 +1,2 @@
1
+ declare const useDefaultNodeWidth: () => number;
2
+ export { useDefaultNodeWidth };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useDefaultNodeWidth = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useDefaultNodeWidth = () => {
7
+ const width = (0, react_1.useContext)(Contexts_1.GraphContext).nodeWidth;
8
+ return width;
9
+ };
10
+ exports.useDefaultNodeWidth = useDefaultNodeWidth;
@@ -0,0 +1,2 @@
1
+ declare const useDefaultShape: () => import("..").Shape;
2
+ export { useDefaultShape };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useDefaultShape = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useDefaultShape = () => {
7
+ const shape = (0, react_1.useContext)(Contexts_1.GraphContext).shape;
8
+ return shape;
9
+ };
10
+ exports.useDefaultShape = useDefaultShape;
@@ -0,0 +1,2 @@
1
+ declare const useDiagramId: () => string | number | undefined;
2
+ export { useDiagramId };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useDiagramId = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useDiagramId = () => {
7
+ const { id } = (0, react_1.useContext)(Contexts_1.GraphContext);
8
+ return id;
9
+ };
10
+ exports.useDiagramId = useDiagramId;
@@ -0,0 +1,2 @@
1
+ declare const useEdge: (edgeId: string | number) => import("../Contexts").Edge;
2
+ export { useEdge };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useEdge = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useEdge = (edgeId) => {
7
+ const { edges } = (0, react_1.useContext)(Contexts_1.EdgesContext);
8
+ return edges[edgeId];
9
+ };
10
+ exports.useEdge = useEdge;
@@ -0,0 +1,2 @@
1
+ declare const useEdgeFrequency: () => number;
2
+ export { useEdgeFrequency };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useEdgeFrequency = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useEdgeFrequency = () => {
7
+ const { edgeFrequency } = (0, react_1.useContext)(Contexts_1.GraphContext);
8
+ return edgeFrequency;
9
+ };
10
+ exports.useEdgeFrequency = useEdgeFrequency;
@@ -0,0 +1,2 @@
1
+ declare const useEdgeSubscriber: () => import("../utils/EdgeSubscriber").default | undefined;
2
+ export { useEdgeSubscriber };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useEdgeSubscriber = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useEdgeSubscriber = () => {
7
+ const { edgeSubscriber } = (0, react_1.useContext)(Contexts_1.GraphContext);
8
+ return edgeSubscriber;
9
+ };
10
+ exports.useEdgeSubscriber = useEdgeSubscriber;
@@ -0,0 +1,2 @@
1
+ declare const useEdges: () => import("../Contexts").Edges;
2
+ export { useEdges };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useEdges = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useEdges = () => {
7
+ const { edges } = (0, react_1.useContext)(Contexts_1.EdgesContext);
8
+ return edges;
9
+ };
10
+ exports.useEdges = useEdges;
@@ -0,0 +1,2 @@
1
+ declare const useGrid: () => false | import("..").GridType;
2
+ export { useGrid };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useGrid = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useGrid = () => {
7
+ const { grid } = (0, react_1.useContext)(Contexts_1.GraphContext);
8
+ return grid;
9
+ };
10
+ exports.useGrid = useGrid;
@@ -0,0 +1,2 @@
1
+ declare const useNodePositions: () => import("../utils/NodePositions").default | undefined;
2
+ export { useNodePositions };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useNodePositions = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useNodePositions = () => {
7
+ const { nodePositions } = (0, react_1.useContext)(Contexts_1.GraphContext);
8
+ return nodePositions;
9
+ };
10
+ exports.useNodePositions = useNodePositions;
@@ -0,0 +1,2 @@
1
+ declare const useRemoveEdge: () => import("../Contexts").RemoveEdge | undefined;
2
+ export { useRemoveEdge };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useRemoveEdge = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useRemoveEdge = () => {
7
+ const { removeEdge } = (0, react_1.useContext)(Contexts_1.EdgesContext);
8
+ return removeEdge;
9
+ };
10
+ exports.useRemoveEdge = useRemoveEdge;
@@ -0,0 +1,2 @@
1
+ declare const useUpdateEdge: () => import("../Contexts").UpdateEdge | undefined;
2
+ export { useUpdateEdge };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useUpdateEdge = void 0;
4
+ const Contexts_1 = require("../Contexts");
5
+ const react_1 = require("react");
6
+ const useUpdateEdge = () => {
7
+ const { updateEdge } = (0, react_1.useContext)(Contexts_1.EdgesContext);
8
+ return updateEdge;
9
+ };
10
+ exports.useUpdateEdge = useUpdateEdge;
@@ -0,0 +1,4 @@
1
+ import { type FunctionComponent, type PropsWithChildren } from 'react';
2
+ declare const EdgesProvider: FunctionComponent<EdgesProviderProps>;
3
+ export { EdgesProvider };
4
+ export type EdgesProviderProps = PropsWithChildren<{}>;
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.EdgesProvider = void 0;
15
+ const jsx_runtime_1 = require("react/jsx-runtime");
16
+ const Contexts_1 = require("../Contexts");
17
+ const react_1 = require("react");
18
+ const EdgesProvider = ({ children }) => {
19
+ const [edges, setEdges] = (0, react_1.useState)({});
20
+ const removeEdge = (0, react_1.useCallback)((edgeId) => {
21
+ setEdges((currentEdges) => {
22
+ const _a = currentEdges, _b = edgeId, omit = _a[_b], rest = __rest(_a, [typeof _b === "symbol" ? _b : _b + ""]);
23
+ return rest;
24
+ });
25
+ }, []);
26
+ const updateEdge = (0, react_1.useCallback)((edgeId, props) => {
27
+ setEdges((currentEdges) => {
28
+ const edge = currentEdges[edgeId];
29
+ return Object.assign(Object.assign({}, currentEdges), { [edgeId]: Object.assign(Object.assign({}, edge), props) });
30
+ });
31
+ }, []);
32
+ const value = (0, react_1.useMemo)(() => {
33
+ return {
34
+ edges,
35
+ removeEdge,
36
+ updateEdge
37
+ };
38
+ }, [
39
+ edges,
40
+ removeEdge,
41
+ updateEdge
42
+ ]);
43
+ return ((0, jsx_runtime_1.jsx)(Contexts_1.EdgesContext.Provider, { value: value, children: children }));
44
+ };
45
+ exports.EdgesProvider = EdgesProvider;
46
+ EdgesProvider.displayName = 'LincleEdgesProvider';
@@ -0,0 +1,5 @@
1
+ import { type GraphContextProps } from '../Contexts/GraphContext';
2
+ import { type FunctionComponent, type PropsWithChildren } from 'react';
3
+ declare const GraphProvider: FunctionComponent<GraphProviderProps>;
4
+ export type GraphProviderProps = PropsWithChildren<Omit<GraphContextProps, 'edgeSubscriber' | 'nodePositions' | 'id'> & Required<Pick<GraphContextProps, 'id'>>>;
5
+ export { GraphProvider };
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.GraphProvider = void 0;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const Contexts_1 = require("../Contexts");
9
+ const defaultSettings_1 = __importDefault(require("../defaultSettings"));
10
+ const EdgeSubscriber_1 = __importDefault(require("../utils/EdgeSubscriber"));
11
+ const NodePositions_1 = __importDefault(require("../utils/NodePositions"));
12
+ const react_1 = require("react");
13
+ const GraphProvider = ({ children, edgeFrequency = defaultSettings_1.default.edgeFrequency, grid = defaultSettings_1.default.grid, id, line = defaultSettings_1.default.line, nodeFrequency = defaultSettings_1.default.nodeFrequency, nodeHeight = defaultSettings_1.default.height, nodeWidth = defaultSettings_1.default.width, shape = defaultSettings_1.default.shape }) => {
14
+ const permanent = (0, react_1.useMemo)(() => {
15
+ return {
16
+ edgeSubscriber: new EdgeSubscriber_1.default(edgeFrequency),
17
+ id,
18
+ nodePositions: new NodePositions_1.default(nodeFrequency)
19
+ };
20
+ }, []);
21
+ const provides = (0, react_1.useMemo)(() => {
22
+ return Object.assign(Object.assign({}, permanent), { edgeFrequency,
23
+ grid,
24
+ line,
25
+ nodeFrequency,
26
+ nodeHeight,
27
+ nodeWidth,
28
+ shape });
29
+ }, [
30
+ edgeFrequency,
31
+ grid,
32
+ line,
33
+ nodeFrequency,
34
+ nodeHeight,
35
+ nodeWidth,
36
+ permanent,
37
+ shape
38
+ ]);
39
+ return ((0, jsx_runtime_1.jsx)(Contexts_1.GraphContext.Provider, { value: provides, children: children }));
40
+ };
41
+ exports.GraphProvider = GraphProvider;
42
+ GraphProvider.displayName = 'LincleGraphProvider';
@@ -0,0 +1,2 @@
1
+ export * from './EdgesProvider';
2
+ export * from './GraphProvider';
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./EdgesProvider"), exports);
18
+ __exportStar(require("./GraphProvider"), exports);
@@ -0,0 +1,5 @@
1
+ import { type GraphProviderProps } from './Providers';
2
+ import { type FunctionComponent } from 'react';
3
+ declare const Providers: FunctionComponent<ProvidersProps>;
4
+ export { Providers };
5
+ export type ProvidersProps = Partial<Omit<GraphProviderProps, 'id'>> & Pick<GraphProviderProps, 'id'>;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Providers = void 0;
7
+ const jsx_runtime_1 = require("react/jsx-runtime");
8
+ const defaultSettings_1 = __importDefault(require("../defaultSettings"));
9
+ const Providers_1 = require("./Providers");
10
+ const Providers = ({ children, edgeFrequency = defaultSettings_1.default.edgeFrequency, grid = defaultSettings_1.default.grid, id, line = defaultSettings_1.default.line, nodeFrequency = defaultSettings_1.default.nodeFrequency, nodeHeight = defaultSettings_1.default.height, nodeWidth = defaultSettings_1.default.width, shape = defaultSettings_1.default.shape }) => {
11
+ return ((0, jsx_runtime_1.jsx)(Providers_1.GraphProvider, { edgeFrequency: edgeFrequency, grid: grid, id: id, line: line, nodeFrequency: nodeFrequency, nodeHeight: nodeHeight, nodeWidth: nodeWidth, shape: shape, children: (0, jsx_runtime_1.jsx)(Providers_1.EdgesProvider, { children: children }) }));
12
+ };
13
+ exports.Providers = Providers;
14
+ Providers.displayName = 'LincleProviders';
@@ -1,4 +1,4 @@
1
- import { type Line, type Shape } from '..';
1
+ import { type Line, type Shape } from './types';
2
2
  declare const _default: {
3
3
  edgeFrequency: number;
4
4
  grid: [number, number];
@@ -6,6 +6,7 @@ declare const _default: {
6
6
  line: Line;
7
7
  nodeFrequency: number;
8
8
  shape: Shape;
9
+ showGrid: boolean;
9
10
  width: number;
10
11
  };
11
12
  export default _default;
@@ -10,5 +10,6 @@ exports.default = {
10
10
  line: 'step',
11
11
  nodeFrequency: 16,
12
12
  shape: 'oval',
13
+ showGrid: true,
13
14
  width: 50
14
15
  };
package/dist/index.d.ts CHANGED
@@ -1,117 +1,5 @@
1
- import type EdgeSubscriber from './utils/EdgeSubscriber';
2
- import type NodePositions from './utils/NodePositions';
3
- import { type ReactElement, type ReactNode } from 'react';
4
- export type Line = 'curve' | 'direct' | 'step';
5
- export type Shape = 'oval' | 'rectangle';
6
- export type EdgeNodeProps = {
7
- height: number;
8
- id: number | string;
9
- shape: Shape;
10
- width: number;
11
- x: number;
12
- y: number;
13
- };
14
- declare const defaultSettings: {
15
- edgeFrequency: number;
16
- grid: [number, number];
17
- height: number;
18
- line: Line;
19
- nodeFrequency: number;
20
- shape: Shape;
21
- width: number;
22
- };
23
- export type Size = {
24
- bottom: number;
25
- height: number;
26
- left: number;
27
- right: number;
28
- top: number;
29
- width: number;
30
- };
31
- export type NodesDimensions = {
32
- [key: string]: Dimensions;
33
- };
34
- export type Dimensions = {
35
- height: number;
36
- id: number | string;
37
- shape: Shape;
38
- width: number;
39
- x: number;
40
- y: number;
41
- };
42
- export type GraphContextProps = {
43
- defaultSettings: Omit<typeof defaultSettings, 'grid'>;
44
- diagramId: number | string;
45
- edgeSubscriber: EdgeSubscriber;
46
- nodePositions: NodePositions;
47
- };
48
- export type GridType = [
49
- number,
50
- number
51
- ];
52
- export type GridContextProps = GridType;
53
- export { defaultSettings };
54
- export type EdgeProps = {
55
- children?: ReactNode;
56
- dash?: Boolean;
57
- id: number | string;
58
- line?: Line;
59
- markerEnd?: string;
60
- markerStart?: string;
61
- path?: (source?: EdgeNodeProps, target?: EdgeNodeProps, children?: ReactNode) => ReactElement;
62
- sourceId: number | string;
63
- targetId: number | string;
64
- };
65
- export type EdgesProps = {
66
- children: Array<ReactElement<EdgeProps>> | ReactElement<EdgeProps>;
67
- dash?: Boolean;
68
- };
69
- export type PathProps = {
70
- children?: ReactNode;
71
- diagramId?: number | string;
72
- id: number | string;
73
- line?: Line;
74
- markerEnd?: string;
75
- markerStart?: string;
76
- source?: EdgeNodeProps;
77
- target?: EdgeNodeProps;
78
- };
79
- export type NodeProps = {
80
- children?: ReactElement | ReactElement[];
81
- height?: number;
82
- id: number | string;
83
- ref?: React.MutableRefObject<HTMLDivElement | null> | ((instance: HTMLDivElement | null) => void) | null;
84
- shape?: Shape;
85
- track?: boolean;
86
- width?: number;
87
- x?: number;
88
- y?: number;
89
- };
90
- export type NodesProps = {
91
- children: Array<ReactElement<NodeProps>> | ReactElement<NodeProps>;
92
- };
93
- export type GridProps = {
94
- children?: ReactNode;
95
- scale?: number;
96
- xOffset?: number;
97
- yOffset?: number;
98
- };
99
- export type GraphProps = {
100
- children?: ReactNode | ReactNode[];
101
- edgeFrequency?: number;
102
- grid?: GridType | false;
103
- id: number | string;
104
- line?: Line;
105
- nodeFrequency?: number;
106
- nodeHeight?: number;
107
- nodeWidth?: number;
108
- shape?: Shape;
109
- };
110
- export type GraphContextsProps = Omit<GraphProps, 'children'> & {
111
- children: ReactElement<GraphProps> | ReactNode | ReactNode[];
112
- };
113
- export { default as EdgeSubscriber } from './utils/EdgeSubscriber';
114
- export { default as GraphContext } from './utils/GraphContext';
115
- export { default as GridContext } from './utils/GridContext';
116
- export { default as NodePositions } from './utils/NodePositions';
1
+ export { default as defaultSettings } from './defaultSettings';
2
+ export * from './Hooks';
3
+ export * from './Providers';
4
+ export * from './types';
117
5
  export { default as generateOrigins } from './utils/Path/generateOrigins';
package/dist/index.js CHANGED
@@ -1,19 +1,27 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
2
16
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
18
  };
5
19
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.generateOrigins = exports.NodePositions = exports.GridContext = exports.GraphContext = exports.EdgeSubscriber = exports.defaultSettings = void 0;
7
- const defaultSettings_1 = __importDefault(require("./utils/defaultSettings"));
8
- const defaultSettings = defaultSettings_1.default;
9
- exports.defaultSettings = defaultSettings;
10
- var EdgeSubscriber_1 = require("./utils/EdgeSubscriber");
11
- Object.defineProperty(exports, "EdgeSubscriber", { enumerable: true, get: function () { return __importDefault(EdgeSubscriber_1).default; } });
12
- var GraphContext_1 = require("./utils/GraphContext");
13
- Object.defineProperty(exports, "GraphContext", { enumerable: true, get: function () { return __importDefault(GraphContext_1).default; } });
14
- var GridContext_1 = require("./utils/GridContext");
15
- Object.defineProperty(exports, "GridContext", { enumerable: true, get: function () { return __importDefault(GridContext_1).default; } });
16
- var NodePositions_1 = require("./utils/NodePositions");
17
- Object.defineProperty(exports, "NodePositions", { enumerable: true, get: function () { return __importDefault(NodePositions_1).default; } });
20
+ exports.generateOrigins = exports.defaultSettings = void 0;
21
+ var defaultSettings_1 = require("./defaultSettings");
22
+ Object.defineProperty(exports, "defaultSettings", { enumerable: true, get: function () { return __importDefault(defaultSettings_1).default; } });
23
+ __exportStar(require("./Hooks"), exports);
24
+ __exportStar(require("./Providers"), exports);
25
+ __exportStar(require("./types"), exports);
18
26
  var generateOrigins_1 = require("./utils/Path/generateOrigins");
19
27
  Object.defineProperty(exports, "generateOrigins", { enumerable: true, get: function () { return __importDefault(generateOrigins_1).default; } });
@@ -0,0 +1,82 @@
1
+ import { type ProvidersProps } from './Providers';
2
+ import { type PropsWithChildren, type ReactElement, type ReactNode } from 'react';
3
+ export type GridType = [
4
+ number,
5
+ number
6
+ ];
7
+ export type Line = 'curve' | 'direct' | 'step';
8
+ export type Shape = 'oval' | 'rectangle';
9
+ export type EdgeNodeProps = {
10
+ height: number;
11
+ id: number | string;
12
+ shape: Shape;
13
+ width: number;
14
+ x: number;
15
+ y: number;
16
+ };
17
+ export type Size = {
18
+ bottom: number;
19
+ height: number;
20
+ left: number;
21
+ right: number;
22
+ top: number;
23
+ width: number;
24
+ };
25
+ export type NodesDimensions = {
26
+ [key: string]: Dimensions;
27
+ };
28
+ export type Dimensions = {
29
+ height: number;
30
+ id: number | string;
31
+ shape: Shape;
32
+ width: number;
33
+ x: number;
34
+ y: number;
35
+ };
36
+ export type GridContextProps = GridType;
37
+ export type EdgeProps = PropsWithChildren<{
38
+ dash?: boolean;
39
+ id: number | string;
40
+ line?: Line;
41
+ markerEnd?: string;
42
+ markerStart?: string;
43
+ path?: (source?: EdgeNodeProps, target?: EdgeNodeProps, children?: ReactNode) => ReactElement;
44
+ sourceId: number | string;
45
+ targetId: number | string;
46
+ }>;
47
+ export type EdgesProps = PropsWithChildren<{
48
+ readonly dash?: boolean;
49
+ readonly scale?: number;
50
+ readonly translate?: {
51
+ x: number;
52
+ y: number;
53
+ };
54
+ }>;
55
+ export type PathProps = {
56
+ center?: boolean;
57
+ edgeId: string | number;
58
+ line?: Line;
59
+ markerEnd?: string;
60
+ markerStart?: string;
61
+ source?: EdgeNodeProps;
62
+ target?: EdgeNodeProps;
63
+ };
64
+ export type NodeProps = PropsWithChildren<{
65
+ height?: number;
66
+ id: number | string;
67
+ ref?: React.MutableRefObject<HTMLDivElement | null> | ((instance: HTMLDivElement | null) => void) | null;
68
+ shape?: Shape;
69
+ track?: boolean;
70
+ width?: number;
71
+ x?: number;
72
+ y?: number;
73
+ }>;
74
+ export type NodesProps = PropsWithChildren<{}>;
75
+ export type GridProps = PropsWithChildren<{
76
+ scale?: number;
77
+ xOffset?: number;
78
+ yOffset?: number;
79
+ }>;
80
+ export type GraphProps = ProvidersProps & {
81
+ showGrid?: boolean;
82
+ };
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,4 +1,4 @@
1
- import { type EdgeNodeProps } from '..';
1
+ import { type EdgeNodeProps } from '../types';
2
2
  declare class EdgeSubscriber {
3
3
  private frequency;
4
4
  constructor(frequency?: number);
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const defaultSettings_1 = __importDefault(require("./defaultSettings"));
6
+ const defaultSettings_1 = __importDefault(require("../defaultSettings"));
7
7
  const lodash_throttle_1 = __importDefault(require("lodash.throttle"));
8
8
  const FREQUENCY = defaultSettings_1.default.edgeFrequency;
9
9
  class EdgeSubscriber {
@@ -1,4 +1,4 @@
1
- import { type Dimensions, type NodesDimensions, type Size } from '..';
1
+ import { type Dimensions, type NodesDimensions, type Size } from '../types';
2
2
  declare class NodePositions {
3
3
  private frequency;
4
4
  private subscriptions;
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- const defaultSettings_1 = __importDefault(require("./defaultSettings"));
15
+ const defaultSettings_1 = __importDefault(require("../defaultSettings"));
16
16
  const lodash_debounce_1 = __importDefault(require("lodash.debounce"));
17
17
  const FREQUENCY = defaultSettings_1.default.nodeFrequency;
18
18
  const MAX_WAIT = defaultSettings_1.default.nodeFrequency;
@@ -1,4 +1,4 @@
1
- import { type EdgeNodeProps, type Line } from '../..';
1
+ import { type EdgeNodeProps, type Line } from '../../types';
2
2
  import { type Coordinates } from './lines';
3
3
  declare const generateOrigins: (target: EdgeNodeProps, source: EdgeNodeProps, line: Line, center?: boolean) => Coordinates;
4
4
  export default generateOrigins;
@@ -3,13 +3,13 @@ export declare const curveHorizontal: (rx1: number, ry1: number, rx2: number, ry
3
3
  export declare const curveVertical: (rx1: number, ry1: number, rx2: number, ry2: number, center?: boolean) => Line;
4
4
  declare const _default: (source: {
5
5
  height: number;
6
- shape: 'oval' | 'rectangle';
6
+ shape: "oval" | "rectangle";
7
7
  width: number;
8
8
  x: number;
9
9
  y: number;
10
10
  }, target: {
11
11
  height: number;
12
- shape: 'oval' | 'rectangle';
12
+ shape: "oval" | "rectangle";
13
13
  width: number;
14
14
  x: number;
15
15
  y: number;
@@ -2,13 +2,13 @@ import { type Coordinates, type Line } from './types';
2
2
  export declare const direct: (rx1: number, ry1: number, rx2: number, ry2: number, center?: boolean) => Line;
3
3
  declare const _default: (source: {
4
4
  height: number;
5
- shape: 'oval' | 'rectangle';
5
+ shape: "oval" | "rectangle";
6
6
  width: number;
7
7
  x: number;
8
8
  y: number;
9
9
  }, target: {
10
10
  height: number;
11
- shape: 'oval' | 'rectangle';
11
+ shape: "oval" | "rectangle";
12
12
  width: number;
13
13
  x: number;
14
14
  y: number;
@@ -1,13 +1,13 @@
1
1
  import { type Points } from './types';
2
2
  declare const _default: (source: {
3
3
  height: number;
4
- shape: 'oval' | 'rectangle';
4
+ shape: "oval" | "rectangle";
5
5
  width: number;
6
6
  x: number;
7
7
  y: number;
8
8
  }, target: {
9
9
  height: number;
10
- shape: 'oval' | 'rectangle';
10
+ shape: "oval" | "rectangle";
11
11
  width: number;
12
12
  x: number;
13
13
  y: number;
@@ -3,13 +3,13 @@ export declare const stepHorizontal: (rx1: number, ry1: number, rx2: number, ry2
3
3
  export declare const stepVertical: (rx1: number, ry1: number, rx2: number, ry2: number, center?: boolean) => Line;
4
4
  declare const _default: (source: {
5
5
  height: number;
6
- shape: 'oval' | 'rectangle';
6
+ shape: "oval" | "rectangle";
7
7
  width: number;
8
8
  x: number;
9
9
  y: number;
10
10
  }, target: {
11
11
  height: number;
12
- shape: 'oval' | 'rectangle';
12
+ shape: "oval" | "rectangle";
13
13
  width: number;
14
14
  x: number;
15
15
  y: number;
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@lincle/react-shared",
3
3
  "title": "lincle react shared",
4
4
  "license": "LGPL-3.0-or-later",
5
- "version": "0.4.0-next.2",
5
+ "version": "0.4.0-next.4",
6
6
  "private": false,
7
7
  "description": "Shared library for @lincle",
8
8
  "author": "wallzero @wallzeroblog (http://wallzero.com)",
@@ -43,19 +43,19 @@
43
43
  "clean:dist": "rimraf dist"
44
44
  },
45
45
  "devDependencies": {
46
- "@digest/eslint-config-jest": "^4.3.1",
47
- "@digest/eslint-config-react": "^4.3.1",
48
- "@digest/eslint-config-typescript": "^4.3.1",
49
- "@digest/jest-junit": "^4.3.1",
50
- "@digest/jest-react": "^4.3.1",
51
- "@digest/jest-typescript": "^4.3.1",
52
- "@digest/typescript": "^4.3.1",
46
+ "@digest/eslint-config-jest": "^4.4.3",
47
+ "@digest/eslint-config-react": "^4.4.3",
48
+ "@digest/eslint-config-typescript": "^4.4.3",
49
+ "@digest/jest-junit": "^4.4.3",
50
+ "@digest/jest-react": "^4.4.3",
51
+ "@digest/jest-typescript": "^4.4.3",
52
+ "@digest/typescript": "^4.4.3",
53
53
  "@types/bezier-js": "^4.1.3",
54
54
  "@types/jest": "^29.5.12",
55
55
  "@types/lodash.debounce": "^4.0.9",
56
56
  "@types/lodash.throttle": "^4.1.9",
57
- "@types/node": "^20.12.12",
58
- "@types/react": "^18.3.2",
57
+ "@types/node": "^22.0.0",
58
+ "@types/react": "^18.3.3",
59
59
  "@types/react-dom": "^18.3.0",
60
60
  "@types/react-test-renderer": "^18.3.0",
61
61
  "cross-env": "^7.0.3",
@@ -65,7 +65,7 @@
65
65
  "npm-run-all": "^4.1.5",
66
66
  "react": "^18.3.1",
67
67
  "react-test-renderer": "^18.3.1",
68
- "rimraf": "^5.0.7"
68
+ "rimraf": "^6.0.1"
69
69
  },
70
70
  "dependencies": {
71
71
  "bezier-js": "^6.1.4",
@@ -88,5 +88,5 @@
88
88
  "acyclical graph",
89
89
  "cyclical graph"
90
90
  ],
91
- "gitHead": "c00bcd56556ee5599505cbeeebfdab06e4a8c552"
91
+ "gitHead": "6bbaaf166913673c8990505ea8de66a0587ce372"
92
92
  }
@@ -1,4 +0,0 @@
1
- /// <reference types="react" />
2
- import { type GraphContextProps } from '..';
3
- declare const GraphContext: import("react").Context<GraphContextProps | null>;
4
- export default GraphContext;
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const react_1 = require("react");
4
- const GraphContext = (0, react_1.createContext)(null);
5
- GraphContext.displayName = 'LincleGraphContext';
6
- exports.default = GraphContext;
@@ -1,3 +0,0 @@
1
- /// <reference types="react" />
2
- declare const GridContext: import("react").Context<import("..").GridType>;
3
- export default GridContext;
@@ -1,10 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const defaultSettings_1 = __importDefault(require("./defaultSettings"));
7
- const react_1 = require("react");
8
- const GridContext = (0, react_1.createContext)(defaultSettings_1.default.grid);
9
- GridContext.displayName = 'LincleInteractiveGridContext';
10
- exports.default = GridContext;