criarEstrutura function

void criarEstrutura(
  1. dynamic nomeClasse
)

Implementation

void criarEstrutura(nomeClasse) {
  String pathFactoriesPages = 'lib/application/factories/pages';
  String pathFactoriesUsecases = 'lib/application/factories/usecases';
  String nomeDaPasta = tratamentoNomeDePastas(nomeClasse);
  Map caminhoEstrutura = {
    'factory.pages': {
      'path':
          pathFactoriesPages + '/$nomeDaPasta/${nomeDaPasta}_page_factory.dart',
      'modelo': modeloFactoryPage(nomeClasse),
    },
    'factory.presenter': {
      'path': pathFactoriesPages +
          '/$nomeDaPasta/${nomeDaPasta}_presenter_factory.dart',
      'modelo': modeloFactoryPresenter(nomeClasse),
    },
    'factory.validation': {
      'path': pathFactoriesPages +
          '/$nomeDaPasta/${nomeDaPasta}_validation_factory.dart',
      'modelo': modeloFactoryValidation(nomeClasse),
    },
    'factory.export': {
      'path': pathFactoriesPages + '/$nomeDaPasta/$nomeDaPasta' + '.dart',
      'modelo': modeloFactoryExport(nomeDaPasta),
    },
    'factory.usecases': {
      'path':
          pathFactoriesUsecases + '/$nomeDaPasta/api_search_$nomeDaPasta.dart',
      'modelo': modeloFactoryUsecase(nomeClasse),
    },
    'factory.export.usecases': {
      'path': pathFactoriesUsecases + '/$nomeDaPasta/$nomeDaPasta' + '.dart',
      'modelo': modeloFactoryUsecaseExport(nomeDaPasta),
    },
  };

  caminhoEstrutura.forEach(
    (etapa, caminhos) {
      var path = caminhos['path'];
      var modelos = caminhos['modelo'];

      criarFactory(path, modelos);
    },
  );
}