refactor(deps): remove react-sizeme

This commit is contained in:
moklick
2019-08-19 15:28:51 +02:00
parent aac214ad5b
commit f80c1b01c2
8 changed files with 34094 additions and 39095 deletions
+33960 -36319
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -34
View File
@@ -1735,11 +1735,6 @@
"integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==",
"dev": true "dev": true
}, },
"batch-processor": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/batch-processor/-/batch-processor-1.0.0.tgz",
"integrity": "sha1-dclcMrdI4IUNEMKxaPa9vpiRrOg="
},
"bcrypt-pbkdf": { "bcrypt-pbkdf": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
@@ -3088,14 +3083,6 @@
"integrity": "sha512-jasjtY5RUy/TOyiUYM2fb4BDaPZfm6CXRFeJDMfFsXYADGxUN49RBqtgB7EL2RmJXeIRUk9lM1U6A5yk2YJMPQ==", "integrity": "sha512-jasjtY5RUy/TOyiUYM2fb4BDaPZfm6CXRFeJDMfFsXYADGxUN49RBqtgB7EL2RmJXeIRUk9lM1U6A5yk2YJMPQ==",
"dev": true "dev": true
}, },
"element-resize-detector": {
"version": "1.1.15",
"resolved": "https://registry.npmjs.org/element-resize-detector/-/element-resize-detector-1.1.15.tgz",
"integrity": "sha512-16/5avDegXlUxytGgaumhjyQoM6hpp5j3+L79sYq5hlXfTNRy5WMMuTVWkZU3egp/CokCmTmvf18P3KeB57Iog==",
"requires": {
"batch-processor": "^1.0.0"
}
},
"elliptic": { "elliptic": {
"version": "6.5.0", "version": "6.5.0",
"resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.0.tgz", "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.0.tgz",
@@ -4589,6 +4576,7 @@
"version": "2.2.4", "version": "2.2.4",
"resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
"integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
"dev": true,
"requires": { "requires": {
"loose-envify": "^1.0.0" "loose-envify": "^1.0.0"
} }
@@ -7048,17 +7036,6 @@
"resolved": "https://registry.npmjs.org/react-is/-/react-is-16.8.6.tgz", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.8.6.tgz",
"integrity": "sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA==" "integrity": "sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA=="
}, },
"react-sizeme": {
"version": "2.6.7",
"resolved": "https://registry.npmjs.org/react-sizeme/-/react-sizeme-2.6.7.tgz",
"integrity": "sha512-xCjPoBP5jmeW58TxIkcviMZqabZis7tTvDFWf0/Wa5XCgVWQTIe74NQBes2N1Kmp64GRLkpm60BaP0kk+v8aCQ==",
"requires": {
"element-resize-detector": "^1.1.15",
"invariant": "^2.2.4",
"shallowequal": "^1.1.0",
"throttle-debounce": "^2.1.0"
}
},
"read-pkg": { "read-pkg": {
"version": "5.2.0", "version": "5.2.0",
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz",
@@ -7721,11 +7698,6 @@
"integrity": "sha1-QV9CcC1z2BAzApLMXuhurhoRoXA=", "integrity": "sha1-QV9CcC1z2BAzApLMXuhurhoRoXA=",
"dev": true "dev": true
}, },
"shallowequal": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz",
"integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ=="
},
"shebang-command": { "shebang-command": {
"version": "1.2.0", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
@@ -8230,11 +8202,6 @@
} }
} }
}, },
"throttle-debounce": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-2.1.0.tgz",
"integrity": "sha512-AOvyNahXQuU7NN+VVvOOX+uW6FPaWdAOdRP5HfwYxAfCzXTFKRMoIMk+n+po318+ktcChx+F1Dd91G3YHeMKyg=="
},
"through2": { "through2": {
"version": "2.0.5", "version": "2.0.5",
"resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
-1
View File
@@ -14,7 +14,6 @@
"react": "^16.9.0", "react": "^16.9.0",
"react-dom": "^16.9.0", "react-dom": "^16.9.0",
"react-draggable": "^3.3.0", "react-draggable": "^3.3.0",
"react-sizeme": "^2.6.7",
"scheduler": "^0.15.0" "scheduler": "^0.15.0"
}, },
"devDependencies": { "devDependencies": {
+20 -9
View File
@@ -1,5 +1,4 @@
import React, { useEffect, useContext, useRef, memo } from 'react'; import React, { useEffect, useContext, useRef, memo } from 'react';
import ReactSizeMe from 'react-sizeme';
import { Provider } from '../ConnectionContext'; import { Provider } from '../ConnectionContext';
import { GraphContext } from '../GraphContext'; import { GraphContext } from '../GraphContext';
@@ -11,19 +10,29 @@ import { setNodesSelection } from '../state/actions';
import { updateSize, fitView, zoomIn, zoomOut } from '../state/view-actions'; import { updateSize, fitView, zoomIn, zoomOut } from '../state/view-actions';
import useKeyPress from '../hooks/useKeyPress'; import useKeyPress from '../hooks/useKeyPress';
import useD3Zoom from '../hooks/useD3Zoom'; import useD3Zoom from '../hooks/useD3Zoom';
import { getDimensions } from '../utils';
const GraphView = memo((props) => { const GraphView = memo((props) => {
const zoomPane = useRef(null); const zoomPane = useRef();
const rendererNode = useRef();
const { state, dispatch } = useContext(GraphContext); const { state, dispatch } = useContext(GraphContext);
const shiftPressed = useKeyPress('Shift'); const shiftPressed = useKeyPress('Shift');
const updateDimensions = () => {
const size = getDimensions(rendererNode.current);
dispatch(updateSize(size));
};
useEffect(() => {
updateDimensions();
window.onresize = updateDimensions;
return () => {
window.onresize = null;
};
}, []);
useD3Zoom(zoomPane, props.onMove, shiftPressed); useD3Zoom(zoomPane, props.onMove, shiftPressed);
useEffect(
() => dispatch(updateSize(props.size)),
[props.size.width, props.size.height]
);
useEffect(() => { useEffect(() => {
if (state.d3Initialised) { if (state.d3Initialised) {
props.onLoad({ props.onLoad({
@@ -37,7 +46,7 @@ const GraphView = memo((props) => {
}, [state.d3Initialised]); }, [state.d3Initialised]);
return ( return (
<div className="react-graph__renderer"> <div className="react-graph__renderer" ref={rendererNode}>
<Provider onConnect={props.onConnect}> <Provider onConnect={props.onConnect}>
<NodeRenderer <NodeRenderer
nodeTypes={props.nodeTypes} nodeTypes={props.nodeTypes}
@@ -64,4 +73,6 @@ const GraphView = memo((props) => {
); );
}); });
export default ReactSizeMe.withSize({ monitorHeight: true })(GraphView); GraphView.displayName = 'GraphView';
export default GraphView;
+6 -8
View File
@@ -1,4 +1,4 @@
import React, { useMemo, memo } from 'react'; import React, { useMemo } from 'react';
if (process.env.NODE_ENV !== 'production') { if (process.env.NODE_ENV !== 'production') {
const whyDidYouRender = require('@welldone-software/why-did-you-render'); const whyDidYouRender = require('@welldone-software/why-did-you-render');
@@ -21,16 +21,14 @@ import { createEdgeTypes } from '../EdgeRenderer/utils';
import '../style.css'; import '../style.css';
const ReactGraph = (props) => { const ReactGraph = ({
style, onElementClick, elements, children,
onLoad, onMove, onElementsRemove, onConnect,
onNodeDragStop, connectionLineType, connectionLineStyle
}) => {
const nodeTypes = useMemo(() => createNodeTypes(props.nodeTypes), []); const nodeTypes = useMemo(() => createNodeTypes(props.nodeTypes), []);
const edgeTypes = useMemo(() => createEdgeTypes(props.edgeTypes), []); const edgeTypes = useMemo(() => createEdgeTypes(props.edgeTypes), []);
const {
style, onElementClick, elements, children,
onLoad, onMove, onElementsRemove, onConnect,
onNodeDragStop, connectionLineType, connectionLineStyle
} = props;
return ( return (
<div style={style} className="react-graph"> <div style={style} className="react-graph">
<Provider elements={elements}> <Provider elements={elements}>
+7
View File
@@ -1 +1,8 @@
export const isFunction = obj => !!(obj && obj.constructor && obj.call && obj.apply); export const isFunction = obj => !!(obj && obj.constructor && obj.call && obj.apply);
export const getDimensions = (node) => {
return {
width: node.offsetWidth,
height: node.offsetHeight
};
};