fixes unique id for card drag

This commit is contained in:
ashrafzarkanisala
2024-11-24 01:10:31 +03:00
parent 590a41ff83
commit 5e94de5d78
17 changed files with 905 additions and 712 deletions

View File

@ -5,6 +5,7 @@ import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:syncrow_web/pages/routiens/bloc/routine_bloc/routine_bloc.dart';
import 'package:syncrow_web/pages/routiens/helper/dialog_helper/device_dialog_helper.dart';
import 'package:syncrow_web/pages/routiens/widgets/dragable_card.dart';
import 'package:uuid/uuid.dart';
class ThenContainer extends StatelessWidget {
const ThenContainer({super.key});
@ -15,34 +16,38 @@ class ThenContainer extends StatelessWidget {
builder: (context, state) {
return DragTarget<Map<String, dynamic>>(
builder: (context, candidateData, rejectedData) {
return Container(
padding: const EdgeInsets.all(16),
width: double.infinity,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text('THEN',
style:
TextStyle(fontSize: 18, fontWeight: FontWeight.bold)),
const SizedBox(height: 16),
Wrap(
spacing: 8,
runSpacing: 8,
children: state.thenItems
.map((item) => DraggableCard(
// key: Key(item['key']!),
imagePath: item['imagePath']!,
title: item['title']!,
deviceData: item,
))
.toList(),
),
],
return SingleChildScrollView(
child: Container(
padding: const EdgeInsets.all(16),
width: double.infinity,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Text('THEN',
style: TextStyle(
fontSize: 18, fontWeight: FontWeight.bold)),
const SizedBox(height: 16),
Wrap(
spacing: 8,
runSpacing: 8,
children: state.thenItems
.map((item) => DraggableCard(
// key: Key(item['key']!),
imagePath: item['imagePath']!,
title: item['title']!,
deviceData: item,
))
.toList(),
),
],
),
),
);
},
onWillAccept: (data) => data != null,
onAccept: (data) async {
final uniqueCustomId = const Uuid().v4();
data['uniqueCustomId'] = uniqueCustomId;
final result =
await DeviceDialogHelper.showDeviceDialog(context, data);
// if (result != null) {