makeStatefulWidget static method

dynamic makeStatefulWidget(
  1. String className,
  2. String value,
  3. {String folderPath = widgetsFolder,
  4. bool forceCreate = false,
  5. String? creationPath}
)

Creates a new Stateful Widget.

Implementation

static makeStatefulWidget(String className, String value,
    {String folderPath = widgetsFolder,
    bool forceCreate = false,
    String? creationPath}) async {
  String name = className.replaceAll(RegExp(r'(_?widget)'), "");

  // create missing directories in the project
  await _makeDirectory(folderPath);
  await createDirectoriesFromCreationPath(creationPath, folderPath);

  // create file path
  String filePath = createPathForDartFile(
      folderPath: folderPath,
      className: className,
      prefix: 'widget',
      creationPath: creationPath);

  await _checkIfFileExists(filePath, shouldForceCreate: forceCreate);
  await _createNewFile(filePath, value, onSuccess: () {
    MetroConsole.writeInGreen(
        '[Stateful Widget] ${name.snakeCase} created 🎉');
  });
}