// ignore_for_file: always_use_package_imports

import 'package:flutter/material.dart';
import 'package:wyatt_bloc_helper/wyatt_bloc_helper.dart';

import '../blocs/{{#snakeCase}}{{feature_name}}{{/snakeCase}}_cubit/{{#snakeCase}}{{feature_name}}{{/snakeCase}}_cubit.dart';
import 'widgets/{{#snakeCase}}{{feature_name}}{{/snakeCase}}_consumer_widget.dart';

/// {@template {{#snakeCase}}{{feature_name}}{{/snakeCase}}_provider}
/// {{#pascalCase}}{{feature_name}}{{/pascalCase}}Provider provides bloc to his children.
/// {@endtemplate}
class {{#pascalCase}}{{feature_name}}{{/pascalCase}}Provider
    extends CubitProviderScreen<{{#pascalCase}}{{feature_name}}{{/pascalCase}}Cubit, {{#pascalCase}}{{feature_name}}{{/pascalCase}}State> {
  /// {@macro {{#snakeCase}}{{feature_name}}{{/snakeCase}}_provider}
  const {{#pascalCase}}{{feature_name}}{{/pascalCase}}Provider({super.key});

  @override
  {{#pascalCase}}{{feature_name}}{{/pascalCase}}Cubit create(BuildContext context) => {{#pascalCase}}{{feature_name}}{{/pascalCase}}Cubit();

  @override
  Widget builder(BuildContext context) => const {{#pascalCase}}{{feature_name}}{{/pascalCase}}ConsumerWidget();
}
