registerPlugins static method

void registerPlugins(
  1. List<RiverpodCraftPlugin> extraPlugins
)

Register additional plugins (e.g., community plugins from config).

If an extra plugin has the same RiverpodCraftPlugin.id as a built-in, it replaces the built-in plugin instead of running alongside it. This lets developers extend a built-in plugin and swap it in.

Implementation

static void registerPlugins(List<RiverpodCraftPlugin> extraPlugins) {
  final extraIds = extraPlugins.map((p) => p.id).toSet();
  final kept = builtInPlugins.where((p) => !extraIds.contains(p.id)).toList();
  _pluginRunner = PluginRunner([...kept, ...extraPlugins]);
}