configuration function

AngelConfigurer configuration(
  1. FileSystem fileSystem, {
  2. String directoryPath = './config',
  3. String? overrideEnvironmentName,
  4. String? envPath,
})

Dynamically loads application configuration from configuration files.

You can modify which directoryPath to search in, or explicitly load from a overrideEnvironmentName.

You can also specify a custom envPath to load system configuration from.

Implementation

AngelConfigurer configuration(FileSystem fileSystem,
    {String directoryPath = './config',
    String? overrideEnvironmentName,
    String? envPath}) {
  return (Angel app) async {
    var config = await loadStandaloneConfiguration(
      fileSystem,
      directoryPath: directoryPath,
      overrideEnvironmentName: overrideEnvironmentName,
      envPath: envPath,
      onWarning: app.logger == null
          ? null
          : (msg) => app.logger?.warning('WARNING: $msg'),
    );
    app.configuration.addAll(mergeMap(
      [
        app.configuration,
        config,
      ],
      acceptNull: true,
    ));
  };
}