refactor(ui_kit): move exportable bloc from mixin to widget
Some checks failed
continuous-integration/drone/push Build is failing
Some checks failed
continuous-integration/drone/push Build is failing
This commit is contained in:
parent
8044d07413
commit
4c08a692d2
@ -14,12 +14,22 @@
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
import 'package:flutter/widgets.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
|
||||
mixin ExportBloc<T extends StateStreamableSource<Object?>> {
|
||||
T get bloc;
|
||||
Widget exportBloc({required Widget child}) => BlocProvider<T>.value(
|
||||
class ExportableBloc<T extends StateStreamableSource<Object?>>
|
||||
extends StatelessWidget {
|
||||
const ExportableBloc({
|
||||
required this.bloc,
|
||||
required this.child,
|
||||
super.key,
|
||||
});
|
||||
|
||||
final T bloc;
|
||||
final Widget child;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) => BlocProvider<T>.value(
|
||||
value: bloc,
|
||||
child: child,
|
||||
);
|
@ -18,15 +18,15 @@ import 'package:flutter/material.dart' hide ButtonStyle;
|
||||
import 'package:wyatt_component_copy_with_extension/component_copy_with_extension.dart';
|
||||
import 'package:wyatt_ui_components/wyatt_wyatt_ui_components.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/cubit/invalid_button_cubit.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/exportable_bloc.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/file_selection_button/file_selection_button_screen.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/file_selection_button/file_selection_button_theme_resolver.dart';
|
||||
import 'package:wyatt_ui_kit/src/core/mixin/export_bloc_mixin.dart';
|
||||
|
||||
part 'file_selection_button.g.dart';
|
||||
|
||||
@ComponentCopyWithExtension()
|
||||
class FileSelectionButton extends FileSelectionButtonComponent
|
||||
with $FileSelectionButtonCWMixin, ExportBloc<InvalidButtonCubit> {
|
||||
with $FileSelectionButtonCWMixin {
|
||||
FileSelectionButton({
|
||||
super.leading,
|
||||
super.title,
|
||||
@ -46,7 +46,6 @@ class FileSelectionButton extends FileSelectionButtonComponent
|
||||
|
||||
final InvalidButtonCubit _cubit = InvalidButtonCubit();
|
||||
|
||||
@override
|
||||
InvalidButtonCubit get bloc => _cubit;
|
||||
|
||||
@override
|
||||
@ -82,7 +81,8 @@ class FileSelectionButton extends FileSelectionButtonComponent
|
||||
super.themeResolver as FileSelectionButtonThemeResolver?;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) => exportBloc(
|
||||
Widget build(BuildContext context) => ExportableBloc(
|
||||
bloc: _cubit,
|
||||
child: FileSelectionButtonScreen(
|
||||
leading: leading,
|
||||
title: title,
|
||||
|
@ -18,15 +18,14 @@ import 'package:flutter/material.dart' hide ButtonStyle;
|
||||
import 'package:wyatt_component_copy_with_extension/component_copy_with_extension.dart';
|
||||
import 'package:wyatt_ui_components/wyatt_wyatt_ui_components.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/cubit/button_cubit.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/exportable_bloc.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/flat_button/flat_button_screen.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/flat_button/flat_button_theme_resolver.dart';
|
||||
import 'package:wyatt_ui_kit/src/core/mixin/export_bloc_mixin.dart';
|
||||
|
||||
part 'flat_button.g.dart';
|
||||
|
||||
@ComponentCopyWithExtension()
|
||||
class FlatButton extends FlatButtonComponent
|
||||
with $FlatButtonCWMixin, ExportBloc<ButtonCubit> {
|
||||
class FlatButton extends FlatButtonComponent with $FlatButtonCWMixin {
|
||||
FlatButton({
|
||||
super.prefix,
|
||||
super.suffix,
|
||||
@ -44,7 +43,6 @@ class FlatButton extends FlatButtonComponent
|
||||
|
||||
final ButtonCubit _cubit = ButtonCubit();
|
||||
|
||||
@override
|
||||
ButtonCubit get bloc => _cubit;
|
||||
|
||||
@override
|
||||
@ -67,7 +65,8 @@ class FlatButton extends FlatButtonComponent
|
||||
super.themeResolver as FlatButtonThemeResolver?;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) => exportBloc(
|
||||
Widget build(BuildContext context) => ExportableBloc(
|
||||
bloc: _cubit,
|
||||
child: FlatButtonScreen(
|
||||
prefix: prefix,
|
||||
suffix: suffix,
|
||||
|
@ -18,15 +18,15 @@ import 'package:flutter/material.dart' hide ButtonStyle;
|
||||
import 'package:wyatt_component_copy_with_extension/component_copy_with_extension.dart';
|
||||
import 'package:wyatt_ui_components/wyatt_wyatt_ui_components.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/cubit/button_cubit.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/exportable_bloc.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/simple_icon_button/simple_icon_button_theme_resolver.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/simple_icon_button/simple_icon_screen.dart';
|
||||
import 'package:wyatt_ui_kit/src/core/mixin/export_bloc_mixin.dart';
|
||||
|
||||
part 'simple_icon_button.g.dart';
|
||||
|
||||
@ComponentCopyWithExtension()
|
||||
class SimpleIconButton extends SimpleIconButtonComponent
|
||||
with $SimpleIconButtonCWMixin, ExportBloc<ButtonCubit> {
|
||||
with $SimpleIconButtonCWMixin {
|
||||
SimpleIconButton({
|
||||
super.icon,
|
||||
super.disabledStyle,
|
||||
@ -41,7 +41,6 @@ class SimpleIconButton extends SimpleIconButtonComponent
|
||||
|
||||
final ButtonCubit _cubit = ButtonCubit();
|
||||
|
||||
@override
|
||||
ButtonCubit get bloc => _cubit;
|
||||
|
||||
@override
|
||||
@ -69,7 +68,8 @@ class SimpleIconButton extends SimpleIconButtonComponent
|
||||
super.themeResolver as SimpleIconButtonThemeResolver?;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) => exportBloc(
|
||||
Widget build(BuildContext context) => ExportableBloc(
|
||||
bloc: _cubit,
|
||||
child: SimpleIconButtonScreen(
|
||||
icon: icon,
|
||||
disabledStyle: disabledStyle,
|
||||
|
@ -18,15 +18,15 @@ import 'package:flutter/material.dart' hide ButtonStyle;
|
||||
import 'package:wyatt_component_copy_with_extension/component_copy_with_extension.dart';
|
||||
import 'package:wyatt_ui_components/wyatt_wyatt_ui_components.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/cubit/selectable_button_cubit.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/exportable_bloc.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/symbol_button/symbol_button_screen.dart';
|
||||
import 'package:wyatt_ui_kit/src/components/buttons/symbol_button/symbol_button_theme_resolver.dart';
|
||||
import 'package:wyatt_ui_kit/src/core/mixin/export_bloc_mixin.dart';
|
||||
|
||||
part 'symbol_button.g.dart';
|
||||
|
||||
@ComponentCopyWithExtension()
|
||||
class SymbolButton extends SymbolButtonComponent
|
||||
with $SymbolButtonCWMixin, ExportBloc<SelectableButtonCubit> {
|
||||
with $SymbolButtonCWMixin{
|
||||
SymbolButton({
|
||||
super.icon,
|
||||
super.label,
|
||||
@ -44,7 +44,6 @@ class SymbolButton extends SymbolButtonComponent
|
||||
|
||||
final SelectableButtonCubit _cubit = SelectableButtonCubit();
|
||||
|
||||
@override
|
||||
SelectableButtonCubit get bloc => _cubit;
|
||||
|
||||
@override
|
||||
@ -74,7 +73,8 @@ class SymbolButton extends SymbolButtonComponent
|
||||
super.themeResolver as SymbolButtonThemeResolver?;
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) => exportBloc(
|
||||
Widget build(BuildContext context) => ExportableBloc(
|
||||
bloc: _cubit,
|
||||
child: SymbolButtonScreen(
|
||||
icon: icon,
|
||||
label: label,
|
||||
|
Loading…
x
Reference in New Issue
Block a user