runInteractive method

  1. @override
Future<void> runInteractive()
override

Entry point for interactive CLI execution.

Implementation

@override
Future<void> runInteractive() async {
  final name = Input(
    prompt: 'Enter page name (snake_case):',
    validator: (input) => input.isEmpty ? throw ValidationError('Name is required') : true,
  ).interact();

  final typeIndex = Select(
    prompt: 'Select page type:',
    options: ['async', 'sync', 'static'],
  ).interact();

  final types = ['async', 'sync', 'static'];
  await _execute(name, types[typeIndex]);
}