routie dev init since i didn't adhere to any proper guidance up until now
This commit is contained in:
Generated
Vendored
+51
@@ -0,0 +1,51 @@
|
||||
import { SortingNodeWithDependencies } from './sort-nodes-by-dependencies.js'
|
||||
/**
|
||||
* Checks if one node has a dependency on another node.
|
||||
*
|
||||
* Determines whether sortingNode1 depends on sortingNode2 by checking if any of
|
||||
* sortingNode1's dependency names match any of sortingNode2's dependencies.
|
||||
* This is used in dependency-aware sorting to ensure that dependent nodes are
|
||||
* placed after their dependencies.
|
||||
*
|
||||
* Returns false for self-dependency (when both nodes are the same) to prevent
|
||||
* circular dependency issues.
|
||||
*
|
||||
* @example
|
||||
*
|
||||
* ```ts
|
||||
* const nodeA = {
|
||||
* name: 'userService',
|
||||
* dependencies: ['userService'],
|
||||
* dependencyNames: ['logger', 'database'],
|
||||
* }
|
||||
*
|
||||
* const nodeB = {
|
||||
* name: 'logger',
|
||||
* dependencies: ['logger'],
|
||||
* dependencyNames: [],
|
||||
* }
|
||||
*
|
||||
* isNodeDependentOnOtherNode(nodeA, nodeB)
|
||||
* // Returns: true (userService depends on logger)
|
||||
*
|
||||
* isNodeDependentOnOtherNode(nodeB, nodeA)
|
||||
* // Returns: false (logger doesn't depend on userService)
|
||||
*
|
||||
* isNodeDependentOnOtherNode(nodeA, nodeA)
|
||||
* // Returns: false (self-dependency check)
|
||||
* ```
|
||||
*
|
||||
* @param sortingNode1 - The node to check for dependencies.
|
||||
* @param sortingNode2 - The potential dependency node.
|
||||
* @returns True if sortingNode1 depends on sortingNode2, false otherwise.
|
||||
*/
|
||||
export declare function isNodeDependentOnOtherNode(
|
||||
sortingNode1: Pick<
|
||||
SortingNodeWithDependencies,
|
||||
'dependencyNames' | 'dependencies'
|
||||
>,
|
||||
sortingNode2: Pick<
|
||||
SortingNodeWithDependencies,
|
||||
'dependencyNames' | 'dependencies'
|
||||
>,
|
||||
): boolean
|
||||
Reference in New Issue
Block a user