refactor(graphcontext): memoize context
This commit is contained in:
Vendored
+8
-8
@@ -30145,8 +30145,7 @@
|
|||||||
var GraphContext = React.createContext({});
|
var GraphContext = React.createContext({});
|
||||||
var Provider$1 = function Provider(props) {
|
var Provider$1 = function Provider(props) {
|
||||||
var elements = props.elements,
|
var elements = props.elements,
|
||||||
children = props.children,
|
children = props.children;
|
||||||
onConnect = props.onConnect;
|
|
||||||
|
|
||||||
var _useReducer = React.useReducer(reducer, initialState),
|
var _useReducer = React.useReducer(reducer, initialState),
|
||||||
_useReducer2 = _slicedToArray(_useReducer, 2),
|
_useReducer2 = _slicedToArray(_useReducer, 2),
|
||||||
@@ -30181,11 +30180,12 @@
|
|||||||
dispatch(setEdges(edges));
|
dispatch(setEdges(edges));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
var graphContext = {
|
var graphContext = React.useMemo(function () {
|
||||||
state: state,
|
return {
|
||||||
dispatch: dispatch,
|
state: state,
|
||||||
onConnect: onConnect
|
dispatch: dispatch
|
||||||
};
|
};
|
||||||
|
}, [state]);
|
||||||
return React__default.createElement(GraphContext.Provider, {
|
return React__default.createElement(GraphContext.Provider, {
|
||||||
value: graphContext
|
value: graphContext
|
||||||
}, children);
|
}, children);
|
||||||
@@ -33135,7 +33135,7 @@
|
|||||||
}, props));
|
}, props));
|
||||||
});
|
});
|
||||||
TargetHandle.displayName = 'TargetHandle';
|
TargetHandle.displayName = 'TargetHandle';
|
||||||
TargetHandle.whyDidYouRender = true;
|
TargetHandle.whyDidYouRender = false;
|
||||||
|
|
||||||
var SourceHandle = React.memo(function (props) {
|
var SourceHandle = React.memo(function (props) {
|
||||||
var nodeId = React.useContext(NodeIdContext);
|
var nodeId = React.useContext(NodeIdContext);
|
||||||
|
|||||||
@@ -38125,8 +38125,7 @@ exports.GraphContext = GraphContext;
|
|||||||
|
|
||||||
var Provider = function Provider(props) {
|
var Provider = function Provider(props) {
|
||||||
var elements = props.elements,
|
var elements = props.elements,
|
||||||
children = props.children,
|
children = props.children;
|
||||||
onConnect = props.onConnect;
|
|
||||||
|
|
||||||
var _useReducer = (0, _react.useReducer)(_state.reducer, _state.initialState),
|
var _useReducer = (0, _react.useReducer)(_state.reducer, _state.initialState),
|
||||||
_useReducer2 = _slicedToArray(_useReducer, 2),
|
_useReducer2 = _slicedToArray(_useReducer, 2),
|
||||||
@@ -38161,11 +38160,12 @@ var Provider = function Provider(props) {
|
|||||||
dispatch((0, _actions.setEdges)(edges));
|
dispatch((0, _actions.setEdges)(edges));
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
var graphContext = {
|
var graphContext = (0, _react.useMemo)(function () {
|
||||||
state: state,
|
return {
|
||||||
dispatch: dispatch,
|
state: state,
|
||||||
onConnect: onConnect
|
dispatch: dispatch
|
||||||
};
|
};
|
||||||
|
}, [state]);
|
||||||
return _react.default.createElement(GraphContext.Provider, {
|
return _react.default.createElement(GraphContext.Provider, {
|
||||||
value: graphContext
|
value: graphContext
|
||||||
}, children);
|
}, children);
|
||||||
@@ -41430,7 +41430,7 @@ var TargetHandle = (0, _react.memo)(function (props) {
|
|||||||
}, props));
|
}, props));
|
||||||
});
|
});
|
||||||
TargetHandle.displayName = 'TargetHandle';
|
TargetHandle.displayName = 'TargetHandle';
|
||||||
TargetHandle.whyDidYouRender = true;
|
TargetHandle.whyDidYouRender = false;
|
||||||
var _default = TargetHandle;
|
var _default = TargetHandle;
|
||||||
exports.default = _default;
|
exports.default = _default;
|
||||||
},{"react":"../node_modules/react/index.js","./BaseHandle":"../src/NodeRenderer/HandleTypes/BaseHandle.js","../../ConnectionContext":"../src/ConnectionContext/index.js","../NodeIdContext":"../src/NodeRenderer/NodeIdContext.js"}],"../src/NodeRenderer/HandleTypes/SourceHandle.js":[function(require,module,exports) {
|
},{"react":"../node_modules/react/index.js","./BaseHandle":"../src/NodeRenderer/HandleTypes/BaseHandle.js","../../ConnectionContext":"../src/ConnectionContext/index.js","../NodeIdContext":"../src/NodeRenderer/NodeIdContext.js"}],"../src/NodeRenderer/HandleTypes/SourceHandle.js":[function(require,module,exports) {
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -1,4 +1,4 @@
|
|||||||
import React, { useEffect, useState } from 'react';
|
import React, { useEffect, useState, memo } from 'react';
|
||||||
import cx from 'classnames';
|
import cx from 'classnames';
|
||||||
|
|
||||||
export default (props) => {
|
export default (props) => {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import React, { createContext, useEffect, useReducer } from 'react';
|
import React, { createContext, useEffect, useReducer, useMemo } from 'react';
|
||||||
import PropTypes from 'prop-types';
|
import PropTypes from 'prop-types';
|
||||||
import isEqual from 'lodash.isequal';
|
import isEqual from 'lodash.isequal';
|
||||||
|
|
||||||
@@ -12,7 +12,6 @@ export const Provider = (props) => {
|
|||||||
const {
|
const {
|
||||||
elements,
|
elements,
|
||||||
children,
|
children,
|
||||||
onConnect
|
|
||||||
} = props;
|
} = props;
|
||||||
|
|
||||||
const [state, dispatch] = useReducer(reducer, initialState);
|
const [state, dispatch] = useReducer(reducer, initialState);
|
||||||
@@ -49,11 +48,10 @@ export const Provider = (props) => {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
const graphContext = {
|
const graphContext = useMemo(() => ({
|
||||||
state,
|
state,
|
||||||
dispatch,
|
dispatch
|
||||||
onConnect,
|
}), [state]);
|
||||||
};
|
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<GraphContext.Provider
|
<GraphContext.Provider
|
||||||
|
|||||||
@@ -21,6 +21,6 @@ const TargetHandle = memo((props) => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
TargetHandle.displayName = 'TargetHandle';
|
TargetHandle.displayName = 'TargetHandle';
|
||||||
TargetHandle.whyDidYouRender = true;
|
TargetHandle.whyDidYouRender = false;
|
||||||
|
|
||||||
export default TargetHandle;
|
export default TargetHandle;
|
||||||
|
|||||||
Reference in New Issue
Block a user