Skip to content

Commit ab62f2f

Browse files
committed
fix(plugin-eslint): dynamic import for optional peer dep @nx/devkit
1 parent d6a6b2a commit ab62f2f

File tree

3 files changed

+6
-7
lines changed

3 files changed

+6
-7
lines changed

packages/plugin-eslint/src/lib/nx/find-all-projects.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { createProjectGraphAsync } from '@nx/devkit';
21
import type { ESLintPluginConfig } from '../config';
32
import { nxProjectsToConfig } from './projects-to-config';
43

@@ -24,6 +23,7 @@ import { nxProjectsToConfig } from './projects-to-config';
2423
* @returns ESLint config and patterns, intended to be passed to {@link eslintPlugin}
2524
*/
2625
export async function eslintConfigFromNxProjects(): Promise<ESLintPluginConfig> {
26+
const { createProjectGraphAsync } = await import('@nx/devkit');
2727
const projectGraph = await createProjectGraphAsync({ exitOnError: false });
2828
return nxProjectsToConfig(projectGraph);
2929
}

packages/plugin-eslint/src/lib/nx/find-project-with-deps.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { createProjectGraphAsync } from '@nx/devkit';
21
import type { ESLintPluginConfig } from '../config';
32
import { nxProjectsToConfig } from './projects-to-config';
43
import { findAllDependencies } from './traverse-graph';
@@ -30,6 +29,7 @@ import { findAllDependencies } from './traverse-graph';
3029
export async function eslintConfigFromNxProject(
3130
projectName: string,
3231
): Promise<ESLintPluginConfig> {
32+
const { createProjectGraphAsync } = await import('@nx/devkit');
3333
const projectGraph = await createProjectGraphAsync({ exitOnError: false });
3434

3535
const dependencies = findAllDependencies(projectName, projectGraph);

packages/plugin-eslint/src/lib/nx/projects-to-config.ts

+4-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,4 @@
1-
import {
2-
ProjectConfiguration,
3-
ProjectGraph,
4-
readProjectsConfigurationFromProjectGraph,
5-
} from '@nx/devkit';
1+
import type { ProjectConfiguration, ProjectGraph } from '@nx/devkit';
62
import type { ESLint } from 'eslint';
73
import type { ESLintPluginConfig } from '../config';
84
import {
@@ -16,6 +12,9 @@ export async function nxProjectsToConfig(
1612
predicate: (project: ProjectConfiguration) => boolean = () => true,
1713
): Promise<ESLintPluginConfig> {
1814
// find Nx projects with lint target
15+
const { readProjectsConfigurationFromProjectGraph } = await import(
16+
'@nx/devkit'
17+
);
1918
const projectsConfiguration =
2019
readProjectsConfigurationFromProjectGraph(projectGraph);
2120
const projects = Object.values(projectsConfiguration.projects)

0 commit comments

Comments
 (0)