generateFromStub static method

Future<void> generateFromStub(
  1. String fileName,
  2. String stubPath, {
  3. bool force = false,
  4. Map<String, String>? params,
})

Implementation

static Future<void> generateFromStub(
  String fileName,
  String stubPath, {
  bool force = false,
  Map<String, String>? params,
}) async {
  if (File(fileName).existsSync() && !force) {
    return;
  }

  String stubFolderPath = (await Isolate.resolvePackageUri(
    Uri.parse('package:kappa/cli/stubs'),
  ))!
      .path;
  var stubContent = File(p.join(stubFolderPath, stubPath)).readAsStringSync();
  if (params != null) {
    params.forEach((key, value) {
      stubContent = stubContent.replaceAll('{{$key}}', value.toString());
    });
  }

  return await generate(
    fileName,
    stubContent,
    force: force,
  );
}