build method

  1. @override
  2. @mustCallSuper
FutureOr<void> build([
  1. BuildStep? buildStep
])
override

Generate fileMap from files under importPath.

Loads .json and .yaml files and skips others.

Implementation

@override
@mustCallSuper
FutureOr<void> build([final BuildStep? buildStep]) async {
  await super.build(buildStep);
  if (assetsMap.isEmpty) {
  } else if (buildStep != null) {
    await buildStep.writeAsString(
      buildStep.allowedOutputs.single,
      buildStep.trackStage(
        'Generate $exportPath.',
        () => generate(assetsMap),
      ),
      encoding: exportEncoding,
    );
  } else {
    final File file = File(exportPath);
    await file.parent.create(recursive: true);
    await file.writeAsString(
      generate(assetsMap),
      encoding: exportEncoding,
      mode: FileMode.writeOnly,
      flush: true,
    );
  }
}