Merge pull request #5032 from dimaMachina/no-unnecessary-type-assertion
lint: remove unnecessary type assertion
This commit is contained in:
5
.changeset/warm-pandas-retire.md
Normal file
5
.changeset/warm-pandas-retire.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
'@xyflow/react': patch
|
||||
---
|
||||
|
||||
lint: remove unnecessary type assertions
|
||||
@@ -35,7 +35,7 @@ export function BatchProvider<NodeType extends Node = Node, EdgeType extends Edg
|
||||
* this queue is a relatively hot path so we'd like to avoid the overhead of
|
||||
* array methods where we can.
|
||||
*/
|
||||
let next = nodes as NodeType[];
|
||||
let next = nodes;
|
||||
for (const payload of queueItems) {
|
||||
next = typeof payload === 'function' ? payload(next) : payload;
|
||||
}
|
||||
@@ -56,7 +56,7 @@ export function BatchProvider<NodeType extends Node = Node, EdgeType extends Edg
|
||||
const edgeQueueHandler = useCallback((queueItems: QueueItem<EdgeType>[]) => {
|
||||
const { edges = [], setEdges, hasDefaultEdges, onEdgesChange, edgeLookup } = store.getState();
|
||||
|
||||
let next = edges as EdgeType[];
|
||||
let next = edges;
|
||||
for (const payload of queueItems) {
|
||||
next = typeof payload === 'function' ? payload(next) : payload;
|
||||
}
|
||||
|
||||
@@ -95,7 +95,7 @@ export function ZoomPane({
|
||||
},
|
||||
});
|
||||
|
||||
const { x, y, zoom } = panZoom.current!.getViewport();
|
||||
const { x, y, zoom } = panZoom.current.getViewport();
|
||||
|
||||
store.setState({
|
||||
panZoom: panZoom.current,
|
||||
|
||||
@@ -95,7 +95,7 @@ export function useReactFlow<NodeType extends Node = Node, EdgeType extends Edge
|
||||
setNodes((prevNodes) =>
|
||||
prevNodes.map((node) => {
|
||||
if (node.id === id) {
|
||||
const nextNode = typeof nodeUpdate === 'function' ? nodeUpdate(node as NodeType) : nodeUpdate;
|
||||
const nextNode = typeof nodeUpdate === 'function' ? nodeUpdate(node) : nodeUpdate;
|
||||
return options.replace && isNode(nextNode) ? (nextNode as NodeType) : { ...node, ...nextNode };
|
||||
}
|
||||
|
||||
@@ -112,7 +112,7 @@ export function useReactFlow<NodeType extends Node = Node, EdgeType extends Edge
|
||||
setEdges((prevEdges) =>
|
||||
prevEdges.map((edge) => {
|
||||
if (edge.id === id) {
|
||||
const nextEdge = typeof edgeUpdate === 'function' ? edgeUpdate(edge as EdgeType) : edgeUpdate;
|
||||
const nextEdge = typeof edgeUpdate === 'function' ? edgeUpdate(edge) : edgeUpdate;
|
||||
return options.replace && isEdge(nextEdge) ? (nextEdge as EdgeType) : { ...edge, ...nextEdge };
|
||||
}
|
||||
|
||||
@@ -207,7 +207,7 @@ export function useReactFlow<NodeType extends Node = Node, EdgeType extends Edge
|
||||
return (nodes || store.getState().nodes).filter((n) => {
|
||||
const internalNode = store.getState().nodeLookup.get(n.id);
|
||||
|
||||
if (internalNode && !isRect && (n.id === nodeOrRect!.id || !internalNode.internals.positionAbsolute)) {
|
||||
if (internalNode && !isRect && (n.id === nodeOrRect.id || !internalNode.internals.positionAbsolute)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ export function useResizeHandler(domNode: MutableRefObject<HTMLDivElement | null
|
||||
if (!domNode.current) {
|
||||
return false;
|
||||
}
|
||||
const size = getDimensions(domNode.current!);
|
||||
const size = getDimensions(domNode.current);
|
||||
|
||||
if (size.height === 0 || size.width === 0) {
|
||||
store.getState().onError?.('004', errorMessages['error004']());
|
||||
|
||||
@@ -228,7 +228,7 @@ const createStore = ({
|
||||
|
||||
if (multiSelectionActive) {
|
||||
const nodeChanges = selectedNodeIds.map((nodeId) => createSelectionChange(nodeId, true));
|
||||
triggerNodeChanges(nodeChanges as NodeSelectionChange[]);
|
||||
triggerNodeChanges(nodeChanges);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -240,7 +240,7 @@ const createStore = ({
|
||||
|
||||
if (multiSelectionActive) {
|
||||
const changedEdges = selectedEdgeIds.map((edgeId) => createSelectionChange(edgeId, true));
|
||||
triggerEdgeChanges(changedEdges as EdgeSelectionChange[]);
|
||||
triggerEdgeChanges(changedEdges);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -265,8 +265,8 @@ const createStore = ({
|
||||
});
|
||||
const edgeChanges = edgesToUnselect.map((edge) => createSelectionChange(edge.id, false));
|
||||
|
||||
triggerNodeChanges(nodeChanges as NodeSelectionChange[]);
|
||||
triggerEdgeChanges(edgeChanges as EdgeSelectionChange[]);
|
||||
triggerNodeChanges(nodeChanges);
|
||||
triggerEdgeChanges(edgeChanges);
|
||||
},
|
||||
setMinZoom: (minZoom) => {
|
||||
const { panZoom, maxZoom } = get();
|
||||
@@ -292,11 +292,11 @@ const createStore = ({
|
||||
const { edges, nodes, triggerNodeChanges, triggerEdgeChanges } = get();
|
||||
|
||||
const nodeChanges = nodes.reduce<NodeSelectionChange[]>(
|
||||
(res, node) => (node.selected ? [...res, createSelectionChange(node.id, false) as NodeSelectionChange] : res),
|
||||
(res, node) => (node.selected ? [...res, createSelectionChange(node.id, false)] : res),
|
||||
[]
|
||||
);
|
||||
const edgeChanges = edges.reduce<EdgeSelectionChange[]>(
|
||||
(res, edge) => (edge.selected ? [...res, createSelectionChange(edge.id, false) as EdgeSelectionChange] : res),
|
||||
(res, edge) => (edge.selected ? [...res, createSelectionChange(edge.id, false)] : res),
|
||||
[]
|
||||
);
|
||||
|
||||
|
||||
@@ -29,4 +29,15 @@ module.exports = {
|
||||
rules: {
|
||||
'@typescript-eslint/no-non-null-assertion': 'off',
|
||||
},
|
||||
overrides: [
|
||||
{
|
||||
files: ['**/*.{ts,tsx,cts,mts}'],
|
||||
parserOptions: {
|
||||
projectService: true,
|
||||
},
|
||||
rules: {
|
||||
'@typescript-eslint/no-unnecessary-type-assertion': 'error',
|
||||
},
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user