@lincle/react-native-base 0.4.0-next.17 → 0.4.0-next.19

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 (67) hide show
  1. package/dist/{components → cjs/components}/Edge/index.js +5 -6
  2. package/dist/cjs/components/Edge/index.js.map +1 -0
  3. package/dist/{components → cjs/components}/Edges/Marker.js +1 -0
  4. package/dist/cjs/components/Edges/Marker.js.map +1 -0
  5. package/dist/{components → cjs/components}/Edges/Paths/Path/Path.js +8 -5
  6. package/dist/cjs/components/Edges/Paths/Path/Path.js.map +1 -0
  7. package/dist/{components → cjs/components}/Edges/Paths/Path/index.js +24 -12
  8. package/dist/cjs/components/Edges/Paths/Path/index.js.map +1 -0
  9. package/dist/{components → cjs/components}/Edges/Paths/index.js +2 -1
  10. package/dist/cjs/components/Edges/Paths/index.js.map +1 -0
  11. package/dist/{components → cjs/components}/Edges/index.js +7 -1
  12. package/dist/cjs/components/Edges/index.js.map +1 -0
  13. package/dist/{components → cjs/components}/Graph/Grid/index.js +2 -1
  14. package/dist/cjs/components/Graph/Grid/index.js.map +1 -0
  15. package/dist/{components → cjs/components}/Graph/index.js +1 -0
  16. package/dist/cjs/components/Graph/index.js.map +1 -0
  17. package/dist/cjs/components/Node/index.js +121 -0
  18. package/dist/cjs/components/Node/index.js.map +1 -0
  19. package/dist/{components → cjs/components}/Nodes/index.js +1 -0
  20. package/dist/cjs/components/Nodes/index.js.map +1 -0
  21. package/dist/{components → cjs/components}/index.js +1 -0
  22. package/dist/cjs/components/index.js.map +1 -0
  23. package/dist/{index.js → cjs/index.js} +1 -0
  24. package/dist/cjs/index.js.map +1 -0
  25. package/dist/{shared.js → cjs/shared.js} +1 -0
  26. package/dist/cjs/shared.js.map +1 -0
  27. package/dist/esm/components/Edge/index.js +57 -0
  28. package/dist/esm/components/Edge/index.js.map +1 -0
  29. package/dist/esm/components/Edges/Marker.js +28 -0
  30. package/dist/esm/components/Edges/Marker.js.map +1 -0
  31. package/dist/esm/components/Edges/Paths/Path/Path.js +74 -0
  32. package/dist/esm/components/Edges/Paths/Path/Path.js.map +1 -0
  33. package/dist/esm/components/Edges/Paths/Path/index.js +64 -0
  34. package/dist/esm/components/Edges/Paths/Path/index.js.map +1 -0
  35. package/dist/esm/components/Edges/Paths/index.js +27 -0
  36. package/dist/esm/components/Edges/Paths/index.js.map +1 -0
  37. package/dist/esm/components/Edges/index.js +51 -0
  38. package/dist/esm/components/Edges/index.js.map +1 -0
  39. package/dist/esm/components/Graph/Grid/index.js +51 -0
  40. package/dist/esm/components/Graph/Grid/index.js.map +1 -0
  41. package/dist/esm/components/Graph/index.js +17 -0
  42. package/dist/esm/components/Graph/index.js.map +1 -0
  43. package/dist/esm/components/Node/index.js +118 -0
  44. package/dist/esm/components/Node/index.js.map +1 -0
  45. package/dist/esm/components/Nodes/index.js +7 -0
  46. package/dist/esm/components/Nodes/index.js.map +1 -0
  47. package/dist/esm/components/index.js +6 -0
  48. package/dist/esm/components/index.js.map +1 -0
  49. package/dist/esm/index.js +3 -0
  50. package/dist/esm/index.js.map +1 -0
  51. package/dist/esm/shared.js +2 -0
  52. package/dist/esm/shared.js.map +1 -0
  53. package/package.json +26 -23
  54. package/dist/components/Node/index.js +0 -128
  55. /package/dist/{components → esm/components}/Edge/index.d.ts +0 -0
  56. /package/dist/{components → esm/components}/Edges/Marker.d.ts +0 -0
  57. /package/dist/{components → esm/components}/Edges/Paths/Path/Path.d.ts +0 -0
  58. /package/dist/{components → esm/components}/Edges/Paths/Path/index.d.ts +0 -0
  59. /package/dist/{components → esm/components}/Edges/Paths/index.d.ts +0 -0
  60. /package/dist/{components → esm/components}/Edges/index.d.ts +0 -0
  61. /package/dist/{components → esm/components}/Graph/Grid/index.d.ts +0 -0
  62. /package/dist/{components → esm/components}/Graph/index.d.ts +0 -0
  63. /package/dist/{components → esm/components}/Node/index.d.ts +0 -0
  64. /package/dist/{components → esm/components}/Nodes/index.d.ts +0 -0
  65. /package/dist/{components → esm/components}/index.d.ts +0 -0
  66. /package/dist/{index.d.ts → esm/index.d.ts} +0 -0
  67. /package/dist/{shared.d.ts → esm/shared.d.ts} +0 -0
@@ -0,0 +1,64 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useDefaultLine, useEdgeSubscriber } from '../../../../shared';
3
+ import Path from './Path';
4
+ import { useEffect, useMemo, useState } from 'react';
5
+ const RegisterEdge = ({ id: edgeId, line: givenLine, markerEnd, markerStart, path, sourceId, targetId }) => {
6
+ const defaultLine = useDefaultLine();
7
+ const edgeSubscriber = useEdgeSubscriber();
8
+ const line = givenLine ?? defaultLine;
9
+ const [source, setSource] = useState();
10
+ const [target, setTarget] = useState();
11
+ useEffect(() => {
12
+ setSource(edgeSubscriber?.register(edgeId, sourceId, setSource));
13
+ setTarget(edgeSubscriber?.register(edgeId, targetId, setTarget));
14
+ return () => {
15
+ edgeSubscriber?.unregister(edgeId, sourceId);
16
+ edgeSubscriber?.unregister(edgeId, targetId);
17
+ };
18
+ }, []);
19
+ const pathSource = useMemo(() => {
20
+ return source ?
21
+ {
22
+ ...source,
23
+ x: source.x,
24
+ y: source.y
25
+ } :
26
+ undefined;
27
+ }, [
28
+ source?.x,
29
+ source?.y
30
+ ]);
31
+ const pathTarget = useMemo(() => {
32
+ return target ?
33
+ {
34
+ ...target,
35
+ x: target.x,
36
+ y: target.y
37
+ } :
38
+ undefined;
39
+ }, [
40
+ target?.x,
41
+ target?.y
42
+ ]);
43
+ const customPath = useMemo(() => {
44
+ return path ?
45
+ path(pathSource, pathTarget) :
46
+ undefined;
47
+ }, [
48
+ path,
49
+ pathSource,
50
+ pathTarget
51
+ ]);
52
+ if (source &&
53
+ target) {
54
+ return customPath ??
55
+ _jsx(Path, { center: true, edgeId: edgeId, line: line, markerEnd: markerEnd, markerStart: markerStart, source: pathSource, target: pathTarget });
56
+ }
57
+ else {
58
+ return null;
59
+ }
60
+ };
61
+ RegisterEdge.displayName = 'LincleRegisterEdge';
62
+ export default RegisterEdge;
63
+ export { default as Path } from './Path';
64
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/components/Edges/Paths/Path/index.tsx"],"names":[],"mappings":";AAIA,OAAO,EAGL,cAAc,EACd,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,IAAI,MAAM,QAAQ,CAAC;AAC1B,OAAO,EAEL,SAAS,EACT,OAAO,EACP,QAAQ,EACT,MAAM,OAAO,CAAC;AAEf,MAAM,YAAY,GAAiC,CAAC,EAClD,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,SAAS,EACf,SAAS,EACT,WAAW,EACX,IAAI,EACJ,QAAQ,EACR,QAAQ,EACT,EAAE,EAAE;IACH,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IACrC,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAE3C,MAAM,IAAI,GAAG,SAAS,IAAI,WAAW,CAAC;IAEtC,MAAM,CACJ,MAAM,EACN,SAAS,CACV,GAAG,QAAQ,EAAiB,CAAC;IAE9B,MAAM,CACJ,MAAM,EACN,SAAS,CACV,GAAG,QAAQ,EAAiB,CAAC;IAE9B,SAAS,CACP,GAAe,EAAE;QACf,SAAS,CACP,cAAc,EAAE,QAAQ,CACtB,MAAM,EACN,QAAQ,EACR,SAAS,CACV,CACF,CAAC;QAEF,SAAS,CACP,cAAc,EAAE,QAAQ,CACtB,MAAM,EACN,QAAQ,EACR,SAAS,CACV,CACF,CAAC;QAEF,OAAO,GAAS,EAAE;YAChB,cAAc,EAAE,UAAU,CACxB,MAAM,EACN,QAAQ,CACT,CAAC;YAEF,cAAc,EAAE,UAAU,CACxB,MAAM,EACN,QAAQ,CACT,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC,EACD,EAAE,CACH,CAAC;IAEF,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE;QACH,OAAO,MAAM,CAAC,CAAC;YACb;gBACE,GAAG,MAAM;gBACT,CAAC,EAAE,MAAM,CAAC,CAAC;gBACX,CAAC,EAAE,MAAM,CAAC,CAAC;aACZ,CAAC,CAAC;YACH,SAAS,CAAC;IACd,CAAC,EACD;QACE,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;KACV,CACF,CAAC;IAEF,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE;QACH,OAAO,MAAM,CAAC,CAAC;YACb;gBACE,GAAG,MAAM;gBACT,CAAC,EAAE,MAAM,CAAC,CAAC;gBACX,CAAC,EAAE,MAAM,CAAC,CAAC;aACZ,CAAC,CAAC;YACH,SAAS,CAAC;IACd,CAAC,EACD;QACE,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,CAAC;KACV,CACF,CAAC;IAEF,MAAM,UAAU,GAAG,OAAO,CACxB,GAAG,EAAE;QACH,OAAO,IAAI,CAAC,CAAC;YACX,IAAI,CACF,UAAU,EACV,UAAU,CACX,CAAC,CAAC;YACH,SAAS,CAAC;IACd,CAAC,EAED;QACE,IAAI;QACJ,UAAU;QACV,UAAU;KACX,CACF,CAAC;IAEF,IACE,MAAM;QACN,MAAM,EACN,CAAC;QACD,OAAO,UAAU;YACjB,KAAC,IAAI,IACH,MAAM,QACN,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,UAAU,EAClB,MAAM,EAAE,UAAU,GAClB,CAAC;IACL,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC,CAAC;AAEF,YAAY,CAAC,WAAW,GAAG,oBAAoB,CAAC;AAEhD,eAAe,YAAY,CAAC;AAE5B,OAAO,EACL,OAAO,IAAI,IAAI,EAChB,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,27 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useEdges } from '../../../shared';
3
+ import RegisterEdge from './Path';
4
+ import { useMemo } from 'react';
5
+ const Paths = () => {
6
+ const edges = useEdges();
7
+ const paths = useMemo(() => {
8
+ const edgesMap = Object.keys(edges).map((edgeId) => {
9
+ const { line, sourceId, targetId } = edges[edgeId] ?? {};
10
+ if (sourceId &&
11
+ targetId) {
12
+ return (_jsx(RegisterEdge, { id: edgeId, line: line, sourceId: sourceId, targetId: targetId }, edgeId));
13
+ }
14
+ else {
15
+ return null;
16
+ }
17
+ });
18
+ return edgesMap;
19
+ }, [
20
+ edges
21
+ ]);
22
+ return paths;
23
+ };
24
+ Paths.displayName = 'LinclePaths';
25
+ export default Paths;
26
+ export { Path } from './Path';
27
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/Edges/Paths/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EACL,QAAQ,EACT,MAAM,iBAAiB,CAAC;AACzB,OAAO,YAAY,MAAM,QAAQ,CAAC;AAClC,OAAO,EAEL,OAAO,EACR,MAAM,OAAO,CAAC;AAEf,MAAM,KAAK,GAAkC,GAAG,EAAE;IAChD,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IAEzB,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE;QACH,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CACrC,CAAC,MAAM,EAAE,EAAE;YACT,MAAM,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACT,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAExB,IACE,QAAQ;gBACR,QAAQ,EACR,CAAC;gBACD,OAAO,CACL,KAAC,YAAY,IACX,EAAE,EAAE,MAAM,EAEV,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,IAHb,MAAM,CAIX,CACH,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC,CACF,CAAC;QAEF,OAAO,QAAQ,CAAC;IAClB,CAAC,EACD;QACE,KAAK;KACN,CACF,CAAC;IAEF,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,KAAK,CAAC,WAAW,GAAG,aAAa,CAAC;AAIlC,eAAe,KAAK,CAAC;AAErB,OAAO,EACL,IAAI,EACL,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import Marker from './Marker';
3
+ import Paths from './Paths';
4
+ import { useMemo } from 'react';
5
+ import { StyleSheet, View } from 'react-native';
6
+ import Svg, { Defs, G } from 'react-native-svg';
7
+ const styles = StyleSheet.create({
8
+ bridges: {
9
+ bottom: 0,
10
+ left: 0,
11
+ overflow: 'visible',
12
+ pointerEvents: 'box-none',
13
+ position: 'absolute',
14
+ right: 0,
15
+ top: 0
16
+ },
17
+ edges: {
18
+ backfaceVisibility: 'hidden',
19
+ overflow: 'visible',
20
+ pointerEvents: 'box-none'
21
+ }
22
+ });
23
+ const Edges = ({ children, scale = 1, translate = {
24
+ x: 0,
25
+ y: 0
26
+ } }) => {
27
+ const { style, transform } = useMemo(() => {
28
+ const tx = translate.x;
29
+ const ty = translate.y;
30
+ const tz = scale;
31
+ return {
32
+ style: {
33
+ ...styles.bridges,
34
+ pointerEvents: 'box-none',
35
+ transform: `translateX(${tx}px) translateY(${ty}px) scale(${tz})`,
36
+ transformOrigin: 'top left'
37
+ },
38
+ transform: `translate(${tx}, ${ty}) scale(${tz})`
39
+ };
40
+ }, [
41
+ translate.x,
42
+ translate.y,
43
+ scale
44
+ ]);
45
+ return (_jsxs(_Fragment, { children: [_jsx(Svg, { style: styles.edges, children: _jsxs(G, { transform: transform, children: [_jsx(Defs, { children: _jsx(Marker, {}) }), _jsx(Paths, {})] }) }), _jsx(View, { style: style, children: children })] }));
46
+ };
47
+ Edges.displayName = 'LincleEdges';
48
+ export { Edges };
49
+ export { default as Marker } from './Marker';
50
+ export { Path } from './Paths';
51
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Edges/index.tsx"],"names":[],"mappings":";AAGA,OAAO,MAAM,MAAM,UAAU,CAAC;AAC9B,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,EAEL,OAAO,EACR,MAAM,OAAO,CAAC;AACf,OAAO,EACL,UAAU,EACV,IAAI,EACL,MAAM,cAAc,CAAC;AACtB,OAAO,GAAG,EAAE,EACV,IAAI,EACJ,CAAC,EACF,MAAM,kBAAkB,CAAC;AAE1B,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,OAAO,EAAE;QACP,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,CAAC;QACP,QAAQ,EAAE,SAAS;QACnB,aAAa,EAAE,UAAU;QACzB,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,CAAC;QACR,GAAG,EAAE,CAAC;KACP;IACD,KAAK,EAAE;QACL,kBAAkB,EAAE,QAAQ;QAE5B,QAAQ,EAAE,SAAS;QAEnB,aAAa,EAAE,UAAU;KAC1B;CACF,CAAC,CAAC;AAEH,MAAM,KAAK,GAAkC,CAAC,EAC5C,QAAQ,EACR,KAAK,GAAG,CAAC,EACT,SAAS,GAAG;IACV,CAAC,EAAE,CAAC;IACJ,CAAC,EAAE,CAAC;CACL,EACF,EAAE,EAAE;IACH,MAAM,EACJ,KAAK,EACL,SAAS,EACV,GAAG,OAAO,CACT,GAAG,EAAE;QACH,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC;QACvB,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC;QACvB,MAAM,EAAE,GAAG,KAAK,CAAC;QAEjB,OAAO;YACL,KAAK,EAAE;gBACL,GAAG,MAAM,CAAC,OAAO;gBACjB,aAAa,EAAE,UAAmB;gBAClC,SAAS,EAAE,cAAc,EAAE,kBAAkB,EAAE,aAAa,EAAE,GAAG;gBACjE,eAAe,EAAE,UAAU;aAC5B;YACD,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG;SAClD,CAAC;IACJ,CAAC,EACD;QACE,SAAS,CAAC,CAAC;QACX,SAAS,CAAC,CAAC;QACX,KAAK;KACN,CACF,CAAC;IAEF,OAAO,CACL,8BACE,KAAC,GAAG,IACF,KAAK,EAAE,MAAM,CAAC,KAAK,YAEnB,MAAC,CAAC,IACA,SAAS,EAAE,SAAS,aAEpB,KAAC,IAAI,cACH,KAAC,MAAM,KAAG,GACL,EACP,KAAC,KAAK,KAAG,IACP,GACA,EACN,KAAC,IAAI,IACH,KAAK,EAAE,KAAK,YAEX,QAAQ,GACJ,IACN,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,KAAK,CAAC,WAAW,GAAG,aAAa,CAAC;AAElC,OAAO,EACL,KAAK,EACN,CAAC;AAEF,OAAO,EACL,OAAO,IAAI,MAAM,EAClB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,IAAI,EACL,MAAM,SAAS,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useDiagramId, useGrid } from '../../../shared';
3
+ import { useMemo } from 'react';
4
+ import { StyleSheet } from 'react-native';
5
+ import Svg, { Circle as NativeCircle, Pattern, Rect } from 'react-native-svg';
6
+ const styles = StyleSheet.create({
7
+ grid: {
8
+ height: '100%',
9
+ pointerEvents: 'none',
10
+ position: 'absolute',
11
+ width: '100%'
12
+ }
13
+ });
14
+ const SIZE = 0.4;
15
+ const Circle = _jsx(NativeCircle, { cx: SIZE, cy: SIZE, fill: 'black', r: SIZE });
16
+ const Grid = ({ children, scale = 1, xOffset: givenXOffset = 0, yOffset: givenYOffset = 0 }) => {
17
+ const diagramId = useDiagramId();
18
+ const [givenGridX, givenGridY] = useGrid() || [
19
+ 1,
20
+ 1
21
+ ];
22
+ const id = `lincle-grid-${diagramId}`;
23
+ const gridX = useMemo(() => {
24
+ return givenGridX * scale;
25
+ }, [
26
+ givenGridX,
27
+ scale
28
+ ]);
29
+ const gridY = useMemo(() => {
30
+ return givenGridY * scale;
31
+ }, [
32
+ givenGridY,
33
+ scale
34
+ ]);
35
+ const xOffset = useMemo(() => {
36
+ return givenXOffset % gridX;
37
+ }, [
38
+ givenXOffset,
39
+ gridX
40
+ ]);
41
+ const yOffset = useMemo(() => {
42
+ return givenYOffset % gridY;
43
+ }, [
44
+ givenYOffset,
45
+ gridY
46
+ ]);
47
+ return (_jsxs(Svg, { style: styles.grid, children: [_jsx(Pattern, { height: gridY, id: id, patternUnits: 'userSpaceOnUse', width: gridX, x: xOffset, y: yOffset, children: children ?? Circle }), _jsx(Rect, { fill: `url(#${id})`, height: '100%', width: '100%', x: '0', y: '0' })] }));
48
+ };
49
+ Grid.displayName = 'LincleGrid';
50
+ export default Grid;
51
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/components/Graph/Grid/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAEL,YAAY,EACZ,OAAO,EACR,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAEL,OAAO,EACR,MAAM,OAAO,CAAC;AACf,OAAO,EACL,UAAU,EACX,MAAM,cAAc,CAAC;AACtB,OAAO,GAAG,EAAE,EACV,MAAM,IAAI,YAAY,EACtB,OAAO,EACP,IAAI,EACL,MAAM,kBAAkB,CAAC;AAE1B,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,IAAI,EAAE;QACJ,MAAM,EAAE,MAAM;QACd,aAAa,EAAE,MAAM;QACrB,QAAQ,EAAE,UAAU;QACpB,KAAK,EAAE,MAAM;KACd;CACF,CAAC,CAAC;AAEH,MAAM,IAAI,GAAG,GAAG,CAAC;AAEjB,MAAM,MAAM,GACV,KAAC,YAAY,IACX,EAAE,EAAE,IAAI,EACR,EAAE,EAAE,IAAI,EACR,IAAI,EAAC,OAAO,EACZ,CAAC,EAAE,IAAI,GACP,CAAC;AACL,MAAM,IAAI,GAAiC,CACzC,EACE,QAAQ,EACR,KAAK,GAAG,CAAC,EACT,OAAO,EAAE,YAAY,GAAG,CAAC,EACzB,OAAO,EAAE,YAAY,GAAG,CAAC,EACf,EACZ,EAAE;IACF,MAAM,SAAS,GAAG,YAAY,EAAE,CAAC;IACjC,MAAM,CACJ,UAAU,EACV,UAAU,CACX,GAAG,OAAO,EAAE,IAAI;QACf,CAAC;QACD,CAAC;KACF,CAAC;IAEF,MAAM,EAAE,GAAG,eAAe,SAAS,EAAE,CAAC;IAEtC,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE;QACH,OAAO,UAAU,GAAG,KAAK,CAAC;IAC5B,CAAC,EACD;QACE,UAAU;QACV,KAAK;KACN,CACF,CAAC;IAEF,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE;QACH,OAAO,UAAU,GAAG,KAAK,CAAC;IAC5B,CAAC,EACD;QACE,UAAU;QACV,KAAK;KACN,CACF,CAAC;IAEF,MAAM,OAAO,GAAG,OAAO,CACrB,GAAG,EAAE;QACH,OAAO,YAAY,GAAG,KAAK,CAAC;IAC9B,CAAC,EACD;QACE,YAAY;QACZ,KAAK;KACN,CACF,CAAC;IAEF,MAAM,OAAO,GAAG,OAAO,CACrB,GAAG,EAAE;QACH,OAAO,YAAY,GAAG,KAAK,CAAC;IAC9B,CAAC,EACD;QACE,YAAY;QACZ,KAAK;KACN,CACF,CAAC;IAEF,OAAO,CACL,MAAC,GAAG,IACF,KAAK,EAAE,MAAM,CAAC,IAAI,aAElB,KAAC,OAAO,IACN,MAAM,EAAE,KAAK,EACb,EAAE,EAAE,EAAE,EACN,YAAY,EAAC,gBAAgB,EAC7B,KAAK,EAAE,KAAK,EAEZ,CAAC,EAAE,OAAO,EAEV,CAAC,EAAE,OAAO,YAET,QAAQ,IAAI,MAAM,GACX,EACV,KAAC,IAAI,IACH,IAAI,EAAE,QAAQ,EAAE,GAAG,EACnB,MAAM,EAAC,MAAM,EACb,KAAK,EAAC,MAAM,EAEZ,CAAC,EAAC,GAAG,EAEL,CAAC,EAAC,GAAG,GACL,IACE,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC;AAEhC,eAAe,IAAI,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Providers } from '../../shared';
3
+ import Grid from './Grid';
4
+ const Graph = ({ children, edgeFrequency, grid, id, line, nodeFrequency, nodeHeight, nodeWidth, shape, showGrid }) => {
5
+ if (!id) {
6
+ console.error('No ID provided to @lincle/base Graph!');
7
+ return null;
8
+ }
9
+ const gird = showGrid === false ?
10
+ null :
11
+ _jsx(Grid, {});
12
+ return (_jsxs(Providers, { edgeFrequency: edgeFrequency, grid: grid, id: id, line: line, nodeFrequency: nodeFrequency, nodeHeight: nodeHeight, nodeWidth: nodeWidth, shape: shape, children: [gird, children] }));
13
+ };
14
+ Graph.displayName = 'LincleGraph';
15
+ export { Graph };
16
+ export { default as Grid } from './Grid';
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Graph/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAEL,SAAS,EACV,MAAM,cAAc,CAAC;AACtB,OAAO,IAAI,MAAM,QAAQ,CAAC;AAK1B,MAAM,KAAK,GAAkC,CAAC,EAC5C,QAAQ,EACR,aAAa,EACb,IAAI,EACJ,EAAE,EACF,IAAI,EACJ,aAAa,EACb,UAAU,EACV,SAAS,EACT,KAAK,EACL,QAAQ,EACT,EAAE,EAAE;IACH,IAAI,CAAC,EAAE,EAAE,CAAC;QAER,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAEvD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,KAAK,KAAK,CAAC,CAAC;QAC/B,IAAI,CAAC,CAAC;QACN,KAAC,IAAI,KAAG,CAAC;IAEX,OAAO,CACL,MAAC,SAAS,IACR,aAAa,EAAE,aAAa,EAC5B,IAAI,EAAE,IAAI,EACV,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,aAAa,EAC5B,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,aAEX,IAAI,EACJ,QAAQ,IACC,CACb,CAAC;AACJ,CAAC,CAAC;AAEF,KAAK,CAAC,WAAW,GAAG,aAAa,CAAC;AAElC,OAAO,EACL,KAAK,EACN,CAAC;AAEF,OAAO,EACL,OAAO,IAAI,IAAI,EAChB,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,118 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useDefaultNodeHeight, useDefaultNodeWidth, useDefaultShape, useEdgeSubscriber, useNodePositions } from '../../shared';
3
+ import { forwardRef, useEffect, useMemo } from 'react';
4
+ import { View } from 'react-native';
5
+ const Node = ({ children, height: givenHeight, id: nodeId, shape: givenShape, style: { node: nodeStyle } = {}, track = true, width: givenWidth, x: givenX = 0, y: givenY = 0, ...additionalProperties }, ref) => {
6
+ const defaultHeight = useDefaultNodeHeight();
7
+ const defaultShape = useDefaultShape();
8
+ const defaultWidth = useDefaultNodeWidth();
9
+ const edgeSubscriber = useEdgeSubscriber();
10
+ const nodePositions = useNodePositions();
11
+ const height = givenHeight ?? defaultHeight ?? 0;
12
+ const shape = givenShape ?? defaultShape ?? 'oval';
13
+ const width = givenWidth ?? defaultWidth ?? 0;
14
+ const { x, y } = useMemo(() => {
15
+ if (!(givenX || givenY)) {
16
+ const getNumber = /(-?\d+(\.\d+)?)/gu;
17
+ const transform = nodeStyle?.transform;
18
+ const [translateX, translateY] = transform ?
19
+ transform.match(getNumber) ?? [
20
+ undefined,
21
+ undefined
22
+ ] :
23
+ [
24
+ undefined,
25
+ undefined
26
+ ];
27
+ const left = nodeStyle?.left ?? undefined;
28
+ const top = nodeStyle?.top ?? undefined;
29
+ return {
30
+ x: Number(translateX) || Number(left) || 0,
31
+ y: Number(translateY) || Number(top) || 0
32
+ };
33
+ }
34
+ return {
35
+ x: givenX,
36
+ y: givenY
37
+ };
38
+ }, [
39
+ givenX,
40
+ givenY,
41
+ nodeStyle
42
+ ]);
43
+ useEffect(() => {
44
+ nodePositions?.register({
45
+ height,
46
+ id: nodeId,
47
+ shape,
48
+ width,
49
+ x,
50
+ y
51
+ });
52
+ return () => {
53
+ nodePositions?.unregister(nodeId);
54
+ };
55
+ }, []);
56
+ useEffect(() => {
57
+ nodePositions?.update({
58
+ height,
59
+ id: nodeId,
60
+ shape,
61
+ width,
62
+ x,
63
+ y
64
+ });
65
+ }, [
66
+ height,
67
+ nodeId,
68
+ nodePositions,
69
+ shape,
70
+ width,
71
+ x,
72
+ y
73
+ ]);
74
+ useEffect(() => {
75
+ edgeSubscriber?.update({
76
+ height,
77
+ id: nodeId,
78
+ shape,
79
+ width,
80
+ x,
81
+ y
82
+ });
83
+ }, [
84
+ edgeSubscriber,
85
+ height,
86
+ nodeId,
87
+ shape,
88
+ width,
89
+ x,
90
+ y
91
+ ]);
92
+ const adjustedStyle = useMemo(() => {
93
+ return {
94
+ ...nodeStyle,
95
+ height,
96
+ position: track ?
97
+ 'absolute' :
98
+ 'relative',
99
+ transform: track ?
100
+ (nodeStyle?.transform ?? `translate(${x}px, ${y}px)`) :
101
+ 'translate(0px, 0px)',
102
+ transformOrigin: '0 0',
103
+ width
104
+ };
105
+ }, [
106
+ height,
107
+ nodeStyle,
108
+ track,
109
+ width,
110
+ x,
111
+ y
112
+ ]);
113
+ return (_jsx(View, { "data-testid": `node-${nodeId}`, ref: ref, role: 'none', style: adjustedStyle, ...additionalProperties, children: children }));
114
+ };
115
+ Node.displayName = 'LincleNode';
116
+ const refNode = forwardRef(Node);
117
+ export { refNode as Node };
118
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Node/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAEL,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,UAAU,EAEV,SAAS,EACT,OAAO,EACR,MAAM,OAAO,CAAC;AACf,OAAO,EACL,IAAI,EAEL,MAAM,cAAc,CAAC;AAEtB,MAAM,IAAI,GAAwD,CAChE,EACE,QAAQ,EACR,MAAM,EAAE,WAAW,EACnB,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,EACL,IAAI,EAAE,SAAS,EAChB,GAAG,EAAE,EACN,KAAK,GAAG,IAAI,EACZ,KAAK,EAAE,UAAU,EACjB,CAAC,EAAE,MAAM,GAAG,CAAC,EACb,CAAC,EAAE,MAAM,GAAG,CAAC,EACb,GAAG,oBAAoB,EACxB,EACD,GAAG,EACH,EAAE;IACF,MAAM,aAAa,GAAG,oBAAoB,EAAE,CAAC;IAC7C,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,MAAM,YAAY,GAAG,mBAAmB,EAAE,CAAC;IAC3C,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAC3C,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IAEzC,MAAM,MAAM,GAAG,WAAW,IAAI,aAAa,IAAI,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,UAAU,IAAI,YAAY,IAAI,MAAM,CAAC;IACnD,MAAM,KAAK,GAAG,UAAU,IAAI,YAAY,IAAI,CAAC,CAAC;IAO9C,MAAM,EACJ,CAAC,EACD,CAAC,EACF,GAAG,OAAO,CACT,GAAG,EAAE;QACH,IAAI,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC,EAAE,CAAC;YAExB,MAAM,SAAS,GAAG,mBAAmB,CAAC;YACtC,MAAM,SAAS,GAAG,SAAS,EAAE,SAA+B,CAAC;YAC7D,MAAM,CACJ,UAAU,EACV,UAAU,CACX,GAAG,SAAS,CAAC,CAAC;gBACb,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI;oBAC5B,SAAS;oBACT,SAAS;iBACV,CAAC,CAAC;gBACH;oBACE,SAAS;oBACT,SAAS;iBACV,CAAC;YACJ,MAAM,IAAI,GAAG,SAAS,EAAE,IAAI,IAAI,SAAS,CAAC;YAC1C,MAAM,GAAG,GAAG,SAAS,EAAE,GAAG,IAAI,SAAS,CAAC;YAExC,OAAO;gBACL,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC1C,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC;aAC1C,CAAC;QACJ,CAAC;QAED,OAAO;YACL,CAAC,EAAE,MAAM;YACT,CAAC,EAAE,MAAM;SACV,CAAC;IACJ,CAAC,EACD;QACE,MAAM;QACN,MAAM;QACN,SAAS;KACV,CACF,CAAC;IAEF,SAAS,CACP,GAAG,EAAE;QACH,aAAa,EAAE,QAAQ,CAAC;YACtB,MAAM;YACN,EAAE,EAAE,MAAM;YACV,KAAK;YACL,KAAK;YACL,CAAC;YACD,CAAC;SACF,CAAC,CAAC;QAEH,OAAO,GAAS,EAAE;YAChB,aAAa,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;QACpC,CAAC,CAAC;IACJ,CAAC,EACD,EAAE,CACH,CAAC;IAEF,SAAS,CACP,GAAG,EAAE;QACH,aAAa,EAAE,MAAM,CAAC;YACpB,MAAM;YACN,EAAE,EAAE,MAAM;YACV,KAAK;YACL,KAAK;YACL,CAAC;YACD,CAAC;SACF,CAAC,CAAC;IACL,CAAC,EACD;QACE,MAAM;QACN,MAAM;QACN,aAAa;QACb,KAAK;QACL,KAAK;QACL,CAAC;QACD,CAAC;KACF,CACF,CAAC;IAEF,SAAS,CACP,GAAS,EAAE;QACT,cAAc,EAAE,MAAM,CAAC;YACrB,MAAM;YACN,EAAE,EAAE,MAAM;YACV,KAAK;YACL,KAAK;YACL,CAAC;YACD,CAAC;SACF,CAAC,CAAC;IACL,CAAC,EACD;QACE,cAAc;QACd,MAAM;QACN,MAAM;QACN,KAAK;QACL,KAAK;QACL,CAAC;QACD,CAAC;KACF,CACF,CAAC;IAEF,MAAM,aAAa,GAAG,OAAO,CAC3B,GAAG,EAAE;QACH,OAAO;YAEL,GAAG,SAAS;YACZ,MAAM;YACN,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACf,UAAU,CAAC,CAAC;gBACZ,UAAU;YACZ,SAAS,EAAE,KAAK,CAAC,CAAC;gBAEhB,CACE,SAAS,EAAE,SAAS,IAAI,aAAa,CAAC,OAAO,CAAC,KAAK,CACpD,CAAC,CAAC;gBACH,qBAAqB;YACvB,eAAe,EAAE,KAAK;YACtB,KAAK;SACN,CAAC;IACJ,CAAC,EACD;QACE,MAAM;QACN,SAAS;QACT,KAAK;QACL,KAAK;QACL,CAAC;QACD,CAAC;KACF,CACF,CAAC;IAEF,OAAO,CACL,KAAC,IAAI,mBACU,QAAQ,MAAM,EAAE,EAE7B,GAAG,EAAE,GAAU,EACf,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,aAAa,KAChB,oBAAoB,YAEvB,QAAQ,GACJ,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC;AAEhC,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;AAEjC,OAAO,EACL,OAAO,IAAI,IAAI,EAChB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
2
+ const Nodes = ({ children }) => {
3
+ return (_jsx(_Fragment, { children: children }));
4
+ };
5
+ Nodes.displayName = 'LincleNodes';
6
+ export { Nodes };
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/Nodes/index.tsx"],"names":[],"mappings":";AAOA,MAAM,KAAK,GAAkC,CAAC,EAC5C,QAAQ,EACT,EAAE,EAAE;IACH,OAAO,CACL,4BACG,QAAQ,GACR,CACJ,CAAC;AACJ,CAAC,CAAC;AAEF,KAAK,CAAC,WAAW,GAAG,aAAa,CAAC;AAElC,OAAO,EACL,KAAK,EACN,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from './Edge';
2
+ export * from './Edges';
3
+ export * from './Graph';
4
+ export * from './Node';
5
+ export * from './Nodes';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './components';
2
+ export * from './shared';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,UAAU,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { generateOrigins, Providers, useDefaultLine, useDefaultNodeHeight, useDefaultNodeWidth, useDefaultShape, useDiagramId, useEdge, useEdges, useEdgeSubscriber, useGrid, useNodePositions, useRemoveEdge, useUpdateEdge } from '@lincle/react-shared';
2
+ //# sourceMappingURL=shared.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/shared.ts"],"names":[],"mappings":"AA4BA,OAAO,EAEL,eAAe,EAKf,SAAS,EACT,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,iBAAiB,EACjB,OAAO,EACP,gBAAgB,EAChB,aAAa,EACb,aAAa,EACd,MAAM,sBAAsB,CAAC"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@lincle/react-native-base",
3
3
  "title": "lincle react native base",
4
4
  "license": "LGPL-3.0-or-later",
5
- "version": "0.4.0-next.17",
5
+ "version": "0.4.0-next.19",
6
6
  "private": false,
7
7
  "description": "A 'reactive' React node and edge generator",
8
8
  "author": "wallzero @wallzeroblog (http://wallzero.com)",
@@ -13,8 +13,9 @@
13
13
  "position": "Initial and Lead Developer"
14
14
  }
15
15
  ],
16
- "main": "dist/index.js",
17
- "types": "dist/index.d.ts",
16
+ "main": "dist/cjs/index.js",
17
+ "module": "dist/esm/index.js",
18
+ "types": "dist/esm/index.d.ts",
18
19
  "files": [
19
20
  "dist/",
20
21
  "COPYING.md",
@@ -30,7 +31,9 @@
30
31
  },
31
32
  "scripts": {
32
33
  "build": "run-s clean:dist build:prod",
33
- "build:prod": "tsc -p ./tsconfig.json",
34
+ "build:prod": "run-p build:cjs:prod build:esm:prod",
35
+ "build:cjs:prod": "tsc -p ./tsconfig.cjs.json",
36
+ "build:esm:prod": "tsc -p ./tsconfig.json",
34
37
  "build:watch": "run-s clean:dist build:prod build:watch:tsc",
35
38
  "build:watch:tsc": "tsc -p ./tsconfig.json --watch --pretty --preserveWatchOutput",
36
39
  "----------------------------------------------------------------": "",
@@ -43,36 +46,36 @@
43
46
  "clean:dist": "rimraf dist"
44
47
  },
45
48
  "devDependencies": {
46
- "@digest/eslint-config-jest": "^4.14.9",
47
- "@digest/eslint-config-react": "^4.14.9",
48
- "@digest/eslint-config-typescript": "^4.14.9",
49
- "@digest/jest-junit": "^4.14.9",
50
- "@digest/jest-react": "^4.14.9",
51
- "@digest/jest-typescript": "^4.14.9",
52
- "@digest/typescript": "^4.14.9",
49
+ "@digest/eslint-config-jest": "^4.14.16",
50
+ "@digest/eslint-config-react": "^4.14.16",
51
+ "@digest/eslint-config-typescript": "^4.14.16",
52
+ "@digest/jest-junit": "^4.14.16",
53
+ "@digest/jest-react": "^4.14.16",
54
+ "@digest/jest-typescript": "^4.14.16",
55
+ "@digest/typescript": "^4.14.16",
53
56
  "@types/jest": "^30.0.0",
54
- "@types/node": "^25.0.3",
55
- "@types/react": "^19.2.7",
57
+ "@types/node": "^25.5.0",
58
+ "@types/react": "^19.2.14",
56
59
  "@types/react-native": "^0.73.0",
57
60
  "@types/react-test-renderer": "^19.1.0",
58
61
  "cross-env": "^10.1.0",
59
- "jest-environment-jsdom": "^30.2.0",
62
+ "jest-environment-jsdom": "^30.3.0",
60
63
  "jest-environment-jsdom-global": "^4.0.0",
61
64
  "ncp": "^2.0.0",
62
65
  "npm-run-all": "^4.1.5",
63
- "react": "^19.2.3",
64
- "react-native": "^0.83.1",
65
- "react-native-reanimated": "^4.2.1",
66
- "react-native-svg": "^15.15.1",
67
- "react-test-renderer": "^19.2.3",
68
- "rimraf": "^6.1.2"
66
+ "react": "^19.2.4",
67
+ "react-native": "^0.84.1",
68
+ "react-native-reanimated": "^4.3.0",
69
+ "react-native-svg": "^15.15.4",
70
+ "react-test-renderer": "^19.2.4",
71
+ "rimraf": "^6.1.3"
69
72
  },
70
73
  "dependencies": {
71
- "@lincle/react-shared": "^0.4.0-next.17"
74
+ "@lincle/react-shared": "^0.4.0-next.19"
72
75
  },
73
76
  "peerDependencies": {
74
77
  "react": "^18.0.0 || ^19.0.0",
75
- "react-native": "^0.83.0",
78
+ "react-native": "^0.84.0",
76
79
  "react-native-reanimated": "^4.0.0",
77
80
  "react-native-svg": "^15.0.0"
78
81
  },
@@ -91,5 +94,5 @@
91
94
  "acyclical graph",
92
95
  "cyclical graph"
93
96
  ],
94
- "gitHead": "25bbe98ceef3b13ee0ee23ea3b261d8a115c0771"
97
+ "gitHead": "2fad97998449b857938e3788b8f265532a182b54"
95
98
  }
@@ -1,128 +0,0 @@
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.Node = void 0;
15
- const jsx_runtime_1 = require("react/jsx-runtime");
16
- const shared_1 = require("../../shared");
17
- const react_1 = require("react");
18
- const react_native_1 = require("react-native");
19
- const Node = (_a, ref) => {
20
- var _b, _c, _d;
21
- var { children, height: givenHeight, id: nodeId, shape: givenShape, style: { node: nodeStyle } = {}, track = true, width: givenWidth, x: givenX = 0, y: givenY = 0 } = _a, additionalProperties = __rest(_a, ["children", "height", "id", "shape", "style", "track", "width", "x", "y"]);
22
- const defaultHeight = (0, shared_1.useDefaultNodeHeight)();
23
- const defaultShape = (0, shared_1.useDefaultShape)();
24
- const defaultWidth = (0, shared_1.useDefaultNodeWidth)();
25
- const edgeSubscriber = (0, shared_1.useEdgeSubscriber)();
26
- const nodePositions = (0, shared_1.useNodePositions)();
27
- const height = (_b = givenHeight !== null && givenHeight !== void 0 ? givenHeight : defaultHeight) !== null && _b !== void 0 ? _b : 0;
28
- const shape = (_c = givenShape !== null && givenShape !== void 0 ? givenShape : defaultShape) !== null && _c !== void 0 ? _c : 'oval';
29
- const width = (_d = givenWidth !== null && givenWidth !== void 0 ? givenWidth : defaultWidth) !== null && _d !== void 0 ? _d : 0;
30
- const { x, y } = (0, react_1.useMemo)(() => {
31
- var _a, _b, _c;
32
- if (!(givenX || givenY)) {
33
- const getNumber = /(-?\d+(\.\d+)?)/gu;
34
- const transform = nodeStyle === null || nodeStyle === void 0 ? void 0 : nodeStyle.transform;
35
- const [translateX, translateY] = transform ?
36
- (_a = transform.match(getNumber)) !== null && _a !== void 0 ? _a : [
37
- undefined,
38
- undefined
39
- ] :
40
- [
41
- undefined,
42
- undefined
43
- ];
44
- const left = (_b = nodeStyle === null || nodeStyle === void 0 ? void 0 : nodeStyle.left) !== null && _b !== void 0 ? _b : undefined;
45
- const top = (_c = nodeStyle === null || nodeStyle === void 0 ? void 0 : nodeStyle.top) !== null && _c !== void 0 ? _c : undefined;
46
- return {
47
- x: Number(translateX) || Number(left) || 0,
48
- y: Number(translateY) || Number(top) || 0
49
- };
50
- }
51
- return {
52
- x: givenX,
53
- y: givenY
54
- };
55
- }, [
56
- givenX,
57
- givenY,
58
- nodeStyle
59
- ]);
60
- (0, react_1.useEffect)(() => {
61
- nodePositions === null || nodePositions === void 0 ? void 0 : nodePositions.register({
62
- height,
63
- id: nodeId,
64
- shape,
65
- width,
66
- x,
67
- y
68
- });
69
- return () => {
70
- nodePositions === null || nodePositions === void 0 ? void 0 : nodePositions.unregister(nodeId);
71
- };
72
- }, []);
73
- (0, react_1.useEffect)(() => {
74
- nodePositions === null || nodePositions === void 0 ? void 0 : nodePositions.update({
75
- height,
76
- id: nodeId,
77
- shape,
78
- width,
79
- x,
80
- y
81
- });
82
- }, [
83
- height,
84
- nodeId,
85
- nodePositions,
86
- shape,
87
- width,
88
- x,
89
- y
90
- ]);
91
- (0, react_1.useEffect)(() => {
92
- edgeSubscriber === null || edgeSubscriber === void 0 ? void 0 : edgeSubscriber.update({
93
- height,
94
- id: nodeId,
95
- shape,
96
- width,
97
- x,
98
- y
99
- });
100
- }, [
101
- edgeSubscriber,
102
- height,
103
- nodeId,
104
- shape,
105
- width,
106
- x,
107
- y
108
- ]);
109
- const adjustedStyle = (0, react_1.useMemo)(() => {
110
- var _a;
111
- return Object.assign(Object.assign({}, nodeStyle), { height, position: track ?
112
- 'absolute' :
113
- 'relative', transform: track ?
114
- ((_a = nodeStyle === null || nodeStyle === void 0 ? void 0 : nodeStyle.transform) !== null && _a !== void 0 ? _a : `translate(${x}px, ${y}px)`) :
115
- 'translate(0px, 0px)', transformOrigin: '0 0', width });
116
- }, [
117
- height,
118
- nodeStyle,
119
- track,
120
- width,
121
- x,
122
- y
123
- ]);
124
- return ((0, jsx_runtime_1.jsx)(react_native_1.View, Object.assign({ "data-testid": `node-${nodeId}`, ref: ref, role: 'none', style: adjustedStyle }, additionalProperties, { children: children })));
125
- };
126
- Node.displayName = 'LincleNode';
127
- const refNode = (0, react_1.forwardRef)(Node);
128
- exports.Node = refNode;