Add providePrimeNG with a detected theme preset to the root NgModule

Proprietary

Wires the v18 styled mode into an NgModule-based app by adding providePrimeNG({ theme: { preset: <Preset> } }) to the root @NgModule's providers array (detected by the presence of a bootstrap: field). The preset is chosen by scanning angular.json for a primeng/resources/themes/<themeName>/theme.css entry: lara-* maps to Lara, md-*/mdc-* to Material, nora/nano to Nora, and any other v17 theme (mira, nova, saga, vela, soho, fluent, viva, rhea, tailwind, bootstrap4, arya, luna, ...) falls back to Aura. The matching imports for providePrimeNG and the chosen preset are added automatically. Also deletes the now-defunct primeng/resources style entries from angular.json so the build doesn't try to load missing files. Idempotent: skips files that already call providePrimeNG.

org.openrewrite.primeng.AddPrimengProvider
mod run . --recipe=org.openrewrite.primeng.AddPrimengProvider

Install it once, then run it on every repository under the current directory. New to the Moderne CLI? Set it up.

Recipe list

It runs these recipes, in this order.

  1. Remove primeng/resources style references from angular.json