本文へ移動
rdlabo.devdocs

ルール一覧

パッケージは22個のルールを公開します。「推奨」のYesはIonic・Angular向け rdlabo.configs.recommended、Wは汎用TypeScriptの workers/recommended、TZは汎用TypeScriptの workers-timezone/recommended で有効になるルールです。

ルール 目的 Fix 推奨
component-property-use-readonly Angular Componentの不変プロパティに readonly を要求する。 Yes Yes
deny-constructor-di constructor DIを禁止する。inject()を推奨する非推奨ルール。 No No
deny-element インラインIonic Overlayなど、設定したHTML要素を禁止する。 No Yes
deny-overlay-create Modal・Popover Controllerの直接 .create() を禁止する。 No Yes
deny-soft-private-modifier TypeScriptの private をハードプライベート # へ置換する。 Yes Yes
implements-ionic-lifecycle Angular・Ionic lifecycle methodに対応するinterfaceを要求する。 Yes Yes
initialize-timezone-at-module-scope workers-timezoneの初期化を明確なモジュール直下の1箇所に限定する。 No TZ
ionic-attr-type-check 文字列以外のIonic属性へproperty bindingを要求する。 Yes Yes
no-component-method-except-lifecycle lifecycle以外の任意methodをComponentへ置かない。 No Yes
no-component-writable-signal Signal Forms modelの例外を除き、書き込み可能状態をViewModelへ置く。 No No
no-implicit-timezone Date・Intl APIのhost timezoneへの暗黙依存を防ぐ。 No TZ
no-reactive-forms Reactive Formsを禁止し、Angular Signal Formsへ移行する。 No No
no-template-driven-forms 許可した相互運用要素を除きtemplate-driven formsを禁止する。 No No
prefer-disable-handler 非同期操作の二重実行を防ぐwrapperを要求する。 No Yes
prefer-ionic-standalone Ionic 9 standalone importを優先し、IonicModule を禁止する。 Yes Yes
prefer-modal-launcher presentModal 呼び出しを launch* 関数に限定する。 No Yes
require-ion-error-text Signal FormsのIonic検証コントロールにerrorTextの供給元を要求する。 No Yes
require-ion-item-group iOS 26・MD3向けにIonic list itemのgroup化を要求する。 Yes Yes
require-viewmodel Component所有と ViewModelStore 境界を検査する。 No Yes
restrict-try-block try を短く保ち、Promise・RxJS・Signal contextをポリシーで制限する。 No Yes, W
signal-use-as-signal-template テンプレートでSignalを読むときに () を要求する。 No Yes
signal-use-as-signal TypeScriptで正しいSignalの読み書きを要求する。 Yes Yes

ルール別ドキュメント

各ルールページに詳細・オプション・正誤例があります。

型情報を使うルール

TypeScript型を調べるルールでは parserOptions.projectService を有効にします。no-implicit-timezone は、Dateと同名のmethodを持つ無関係なobjectを誤検出しないためtyped lintingが必須です。typed lintingがない場合も restrict-try-block の構文検査は動作しますが、Promise・RxJSの型依存検査はスキップされます。

initialize-timezone-at-module-scope は構文だけを調べ、型情報は不要です。