added bloc to widget

This commit is contained in:
hannathkadher
2025-01-05 13:08:53 +04:00
parent 819670867d
commit 691beb2e86
2 changed files with 98 additions and 89 deletions

View File

@ -38,10 +38,7 @@ class SpaceModelPage extends StatelessWidget {
showDialog(
context: context,
builder: (BuildContext context) {
return BlocProvider<CreateSpaceModelBloc>(
create: (_) => CreateSpaceModelBloc(),
child: CreateSpaceModelDialog(products: products),
);
return CreateSpaceModelDialog(products: products);
},
);
},

View File

@ -6,6 +6,7 @@ import 'package:syncrow_web/pages/spaces_management/all_spaces/model/product_mod
import 'package:syncrow_web/pages/spaces_management/all_spaces/widgets/add_device_type_widget.dart';
import 'package:syncrow_web/pages/spaces_management/space_model/bloc/create_space_model_bloc.dart';
import 'package:syncrow_web/pages/spaces_management/space_model/bloc/create_space_model_event.dart';
import 'package:syncrow_web/pages/spaces_management/space_model/bloc/create_space_model_state.dart';
import 'package:syncrow_web/pages/spaces_management/space_model/models/space_template_model.dart';
import 'package:syncrow_web/pages/spaces_management/space_model/widgets/button_content_widget.dart';
import 'package:syncrow_web/pages/spaces_management/space_model/widgets/dialog/create_subspace_model_dialog.dart';
@ -26,7 +27,14 @@ class CreateSpaceModelDialog extends StatelessWidget {
backgroundColor: ColorsManager.whiteColors,
content: SizedBox(
width: screenWidth * 0.3,
child: Column(
child: BlocProvider(
create: (_) {
final bloc = CreateSpaceModelBloc();
return bloc;
},
child: BlocBuilder<CreateSpaceModelBloc, CreateSpaceModelState>(
builder: (context, state) {
return Column(
mainAxisSize: MainAxisSize.min,
children: [
Text(
@ -45,8 +53,8 @@ class CreateSpaceModelDialog extends StatelessWidget {
filled: true,
fillColor: ColorsManager.textFieldGreyColor,
hintText: 'Please enter the name',
hintStyle:
const TextStyle(color: ColorsManager.lightGrayColor),
hintStyle: const TextStyle(
color: ColorsManager.lightGrayColor),
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(10),
borderSide: BorderSide.none,
@ -111,8 +119,10 @@ class CreateSpaceModelDialog extends StatelessWidget {
),
),
],
);
},
),
),
)),
);
}
@ -131,7 +141,9 @@ class CreateSpaceModelDialog extends StatelessWidget {
builder: (BuildContext context) {
return CreateSubSpaceModelDialog(
isEdit: true,
dialogTitle: subspaces.isEmpty? 'Create Sub-space': 'Edit Sub-space',
dialogTitle: subspaces.isEmpty
? 'Create Sub-space'
: 'Edit Sub-space',
existingSubSpaces: subspaces,
);
},