Rules

no-node-imports

Node 組み込みの直接 import より Effect Platform サービスを優先します。

目的と動作

Node 組み込みの直接 import より Effect Platform サービスを優先します。

node: で始まる静的 import と再 export を検査します。許可リストは node: の後を完全一致で比較するため、fs は fs/promises を自動許可しません。裸の fs、動的 import、require は現在の対象外です。

オプション

未設定なら node: import は許可しません。文字列配列、{ allow: string[] }、{ allowed: string[] } を受け付けます。allow と allowed は結合します。例: ["error", { "allow": ["path", "fs/promises"] }]。

違反例

import { readFile } from 'node:fs/promises'

許可例

import { Effect } from 'effect'

修正と例外

診断のみを提供し、自動修正しません。意図を推測せず明示的に書き換えてください。

必要な境界例外には oxlint-disable-next-line rules/no-node-imports -- 理由 を使います。例はこのルール単体の構文を示し、import や宣言を省略する場合があります。

ソースとテスト

Effect プリセットで有効です。

no-node-imports.ts · Tests