formatted all files.

This commit is contained in:
Faris Armoush
2025-06-12 15:33:32 +03:00
parent 29959f567e
commit 04250ebc98
474 changed files with 5425 additions and 4338 deletions

View File

@ -5,7 +5,6 @@ import 'package:syncrow_web/pages/spaces_management/space_model/bloc/create_spac
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/create_space_template_body_model.dart';
import 'package:syncrow_web/pages/spaces_management/space_model/models/space_template_model.dart';
import 'package:syncrow_web/pages/spaces_management/space_model/models/subspace_template_model.dart';
import 'package:syncrow_web/pages/spaces_management/space_model/models/tag_update_model.dart';
import 'package:syncrow_web/services/space_model_mang_api.dart';
import 'package:syncrow_web/utils/constants/action_enum.dart';
@ -21,7 +20,7 @@ class CreateSpaceModelBloc
try {
final projectUuid = await ProjectManager.getProjectUUID() ?? '';
late SpaceTemplateModel spaceTemplate = event.spaceTemplate;
late final spaceTemplate = event.spaceTemplate;
final tagBodyModels =
spaceTemplate.tags?.map((tag) => tag.toTagBodyModel()).toList() ??
@ -55,7 +54,7 @@ class CreateSpaceModelBloc
}
}
} catch (e) {
emit(CreateSpaceModelError('Error creating space model'));
emit(const CreateSpaceModelError('Error creating space model'));
}
});
@ -65,14 +64,14 @@ class CreateSpaceModelBloc
if (_space != null) {
emit(CreateSpaceModelLoaded(_space!));
} else {
emit(CreateSpaceModelError("No space template found"));
emit(const CreateSpaceModelError('No space template found'));
}
});
});
on<UpdateSpaceTemplate>((event, emit) {
_space = event.spaceTemplate;
final String? errorMessage = _checkDuplicateModelName(
final errorMessage = _checkDuplicateModelName(
event.allModels ?? [], event.spaceTemplate.modelName);
emit(CreateSpaceModelLoaded(_space!, errorMessage: errorMessage));
});
@ -94,9 +93,8 @@ class CreateSpaceModelBloc
orElse: () => subspace,
);
final updatedTags = [
...?subspace.tags?.map<Tag>((tag) {
...subspace.tags?.map<Tag>((tag) {
final matchingTag =
matchingEventSubspace.tags?.firstWhere(
(e) => e.internalId == tag.internalId,
@ -108,7 +106,7 @@ class CreateSpaceModelBloc
: tag;
}) ??
<Tag>[],
...?matchingEventSubspace.tags?.where(
...matchingEventSubspace.tags?.where(
(e) =>
subspace.tags
?.every((t) => t.internalId != e.internalId) ??
@ -127,9 +125,7 @@ class CreateSpaceModelBloc
event.subspaces
.where((e) =>
updatedSubspaces.every((s) => s.internalId != e.internalId))
.forEach((newSubspace) {
updatedSubspaces.add(newSubspace);
});
.forEach(updatedSubspaces.add);
final updatedSpace =
currentState.space.copyWith(subspaceModels: updatedSubspaces);
@ -137,7 +133,7 @@ class CreateSpaceModelBloc
emit(CreateSpaceModelLoaded(updatedSpace,
errorMessage: currentState.errorMessage));
} else {
emit(CreateSpaceModelError("Space template not initialized"));
emit(const CreateSpaceModelError('Space template not initialized'));
}
});
@ -163,14 +159,12 @@ class CreateSpaceModelBloc
event.tags
.where(
(e) => updatedTags.every((t) => t.internalId != e.internalId))
.forEach((e) {
updatedTags.add(e);
});
.forEach(updatedTags.add);
emit(CreateSpaceModelLoaded(
currentState.space.copyWith(tags: updatedTags)));
} else {
emit(CreateSpaceModelError("Space template not initialized"));
emit(const CreateSpaceModelError('Space template not initialized'));
}
});
@ -180,12 +174,12 @@ class CreateSpaceModelBloc
if (event.allModels.contains(event.name) == true) {
emit(CreateSpaceModelLoaded(
currentState.space,
errorMessage: "Duplicate Model name",
errorMessage: 'Duplicate Model name',
));
} else if (event.name.trim().isEmpty) {
emit(CreateSpaceModelLoaded(
currentState.space,
errorMessage: "Model name cannot be empty",
errorMessage: 'Model name cannot be empty',
));
} else {
final updatedSpaceModel =
@ -194,7 +188,7 @@ class CreateSpaceModelBloc
emit(CreateSpaceModelLoaded(updatedSpaceModel));
}
} else {
emit(CreateSpaceModelError("Space template not initialized"));
emit(const CreateSpaceModelError('Space template not initialized'));
}
});
@ -211,19 +205,17 @@ class CreateSpaceModelBloc
if (prevSpaceModel?.modelName != newSpaceModel.modelName) {
spaceModelName = newSpaceModel.modelName;
}
List<TagModelUpdate> tagUpdates = [];
final List<UpdateSubspaceTemplateModel> subspaceUpdates = [];
final List<SubspaceTemplateModel>? prevSubspaces =
prevSpaceModel?.subspaceModels;
final List<SubspaceTemplateModel>? newSubspaces =
newSpaceModel.subspaceModels;
var tagUpdates = <TagModelUpdate>[];
final subspaceUpdates = <UpdateSubspaceTemplateModel>[];
final prevSubspaces = prevSpaceModel?.subspaceModels;
final newSubspaces = newSpaceModel.subspaceModels;
tagUpdates =
processTagUpdates(prevSpaceModel?.tags, newSpaceModel.tags);
if (prevSubspaces != null || newSubspaces != null) {
if (prevSubspaces != null && newSubspaces != null) {
for (var prevSubspace in prevSubspaces) {
for (final prevSubspace in prevSubspaces) {
final existsInNew = newSubspaces
.any((subspace) => subspace.uuid == prevSubspace.uuid);
if (!existsInNew) {
@ -232,20 +224,20 @@ class CreateSpaceModelBloc
}
}
} else if (prevSubspaces != null && newSubspaces == null) {
for (var prevSubspace in prevSubspaces) {
for (final prevSubspace in prevSubspaces) {
subspaceUpdates.add(UpdateSubspaceTemplateModel(
action: Action.delete, uuid: prevSubspace.uuid));
}
}
if (newSubspaces != null) {
for (var newSubspace in newSubspaces) {
for (final newSubspace in newSubspaces) {
// Tag without UUID
if ((newSubspace.uuid == null || newSubspace.uuid!.isEmpty)) {
final List<TagModelUpdate> tagUpdates = [];
if (newSubspace.uuid == null || newSubspace.uuid!.isEmpty) {
final tagUpdates = <TagModelUpdate>[];
if (newSubspace.tags != null) {
for (var tag in newSubspace.tags!) {
for (final tag in newSubspace.tags!) {
tagUpdates.add(TagModelUpdate(
action: Action.add,
newTagUuid: tag.uuid == '' ? null : tag.uuid,
@ -263,14 +255,14 @@ class CreateSpaceModelBloc
if (prevSubspaces != null && newSubspaces != null) {
final newSubspaceMap = {
for (var subspace in newSubspaces) subspace.uuid: subspace
for (final subspace in newSubspaces) subspace.uuid: subspace
};
for (var prevSubspace in prevSubspaces) {
for (final prevSubspace in prevSubspaces) {
final newSubspace = newSubspaceMap[prevSubspace.uuid];
if (newSubspace != null) {
final List<TagModelUpdate> tagSubspaceUpdates =
final tagSubspaceUpdates =
processTagUpdates(prevSubspace.tags, newSubspace.tags);
subspaceUpdates.add(UpdateSubspaceTemplateModel(
action: Action.update,
@ -298,7 +290,7 @@ class CreateSpaceModelBloc
}
}
} catch (e) {
emit(CreateSpaceModelError('Error creating space model'));
emit(const CreateSpaceModelError('Error creating space model'));
}
});
}
@ -307,11 +299,11 @@ class CreateSpaceModelBloc
List<Tag>? prevTags,
List<Tag>? newTags,
) {
final List<TagModelUpdate> tagUpdates = [];
final tagUpdates = <TagModelUpdate>[];
final processedTags = <String?>{};
if (prevTags == null && newTags != null) {
for (var newTag in newTags) {
for (final newTag in newTags) {
tagUpdates.add(TagModelUpdate(
action: Action.add,
tag: newTag.tag,
@ -325,7 +317,7 @@ class CreateSpaceModelBloc
if (newTags != null || prevTags != null) {
// Case 1: Tags deleted
if (prevTags != null && newTags != null) {
for (var prevTag in prevTags) {
for (final prevTag in prevTags) {
final existsInNew =
newTags.any((newTag) => newTag.uuid == prevTag.uuid);
if (!existsInNew) {
@ -334,7 +326,7 @@ class CreateSpaceModelBloc
}
}
} else if (prevTags != null && newTags == null) {
for (var prevTag in prevTags) {
for (final prevTag in prevTags) {
tagUpdates
.add(TagModelUpdate(action: Action.delete, uuid: prevTag.uuid));
}
@ -344,7 +336,7 @@ class CreateSpaceModelBloc
if (newTags != null) {
final prevTagUuids = prevTags?.map((t) => t.uuid).toSet() ?? {};
for (var newTag in newTags) {
for (final newTag in newTags) {
// Tag without UUID
if ((newTag.uuid == null || !prevTagUuids.contains(newTag.uuid)) &&
!processedTags.contains(newTag.tag)) {
@ -360,9 +352,9 @@ class CreateSpaceModelBloc
// Case 3: Tags updated
if (prevTags != null && newTags != null) {
final newTagMap = {for (var tag in newTags) tag.uuid: tag};
final newTagMap = {for (final tag in newTags) tag.uuid: tag};
for (var prevTag in prevTags) {
for (final prevTag in prevTags) {
final newTag = newTagMap[prevTag.uuid];
if (newTag != null) {
tagUpdates.add(TagModelUpdate(
@ -381,7 +373,7 @@ class CreateSpaceModelBloc
String? _checkDuplicateModelName(List<String> allModels, String name) {
if (allModels.contains(name)) {
return "Duplicate Model name";
return 'Duplicate Model name';
}
return null;
}

View File

@ -16,7 +16,7 @@ class UpdateSpaceTemplate extends CreateSpaceModelEvent {
final SpaceTemplateModel spaceTemplate;
List<String>? allModels;
UpdateSpaceTemplate(this.spaceTemplate,this.allModels);
UpdateSpaceTemplate(this.spaceTemplate, this.allModels);
}
class CreateSpaceTemplate extends CreateSpaceModelEvent {
@ -36,7 +36,7 @@ class UpdateSpaceTemplateName extends CreateSpaceModelEvent {
final String name;
final List<String> allModels;
UpdateSpaceTemplateName({required this.name, required this.allModels});
const UpdateSpaceTemplateName({required this.name, required this.allModels});
@override
List<Object> get props => [name, allModels];
@ -45,19 +45,19 @@ class UpdateSpaceTemplateName extends CreateSpaceModelEvent {
class AddSubspacesToSpaceTemplate extends CreateSpaceModelEvent {
final List<SubspaceTemplateModel> subspaces;
AddSubspacesToSpaceTemplate(this.subspaces);
const AddSubspacesToSpaceTemplate(this.subspaces);
}
class AddTagsToSpaceTemplate extends CreateSpaceModelEvent {
final List<Tag> tags;
AddTagsToSpaceTemplate(this.tags);
const AddTagsToSpaceTemplate(this.tags);
}
class ValidateSpaceTemplateName extends CreateSpaceModelEvent {
final String name;
ValidateSpaceTemplateName({required this.name});
const ValidateSpaceTemplateName({required this.name});
}
class ModifySpaceTemplate extends CreateSpaceModelEvent {
@ -65,7 +65,7 @@ class ModifySpaceTemplate extends CreateSpaceModelEvent {
final SpaceTemplateModel updatedSpaceTemplate;
final Function(SpaceTemplateModel)? onUpdate;
ModifySpaceTemplate(
const ModifySpaceTemplate(
{required this.spaceTemplate,
required this.updatedSpaceTemplate,
this.onUpdate});

View File

@ -16,7 +16,7 @@ class CreateSpaceModelLoaded extends CreateSpaceModelState {
final SpaceTemplateModel space;
final String? errorMessage;
CreateSpaceModelLoaded(this.space, {this.errorMessage});
const CreateSpaceModelLoaded(this.space, {this.errorMessage});
@override
List<Object?> get props => [space, errorMessage];
@ -25,5 +25,5 @@ class CreateSpaceModelLoaded extends CreateSpaceModelState {
class CreateSpaceModelError extends CreateSpaceModelState {
final String message;
CreateSpaceModelError(this.message);
const CreateSpaceModelError(this.message);
}

View File

@ -21,18 +21,21 @@ class SpaceModelBloc extends Bloc<SpaceModelEvent, SpaceModelState> {
on<DeleteSpaceModel>(_onDeleteSpaceModel);
}
Future<void> _onCreateSpaceModel(CreateSpaceModel event, Emitter<SpaceModelState> emit) async {
Future<void> _onCreateSpaceModel(
CreateSpaceModel event, Emitter<SpaceModelState> emit) async {
final currentState = state;
if (currentState is SpaceModelLoaded) {
try {
final projectUuid = await ProjectManager.getProjectUUID() ?? '';
final newSpaceModel = await api.getSpaceModel(event.newSpaceModel.uuid ?? '', projectUuid);
final newSpaceModel = await api.getSpaceModel(
event.newSpaceModel.uuid ?? '', projectUuid);
if (newSpaceModel != null) {
final updatedSpaceModels = List<SpaceTemplateModel>.from(currentState.spaceModels)
..add(newSpaceModel);
final updatedSpaceModels =
List<SpaceTemplateModel>.from(currentState.spaceModels)
..add(newSpaceModel);
emit(SpaceModelLoaded(spaceModels: updatedSpaceModels));
}
} catch (e) {
@ -41,13 +44,15 @@ class SpaceModelBloc extends Bloc<SpaceModelEvent, SpaceModelState> {
}
}
Future<void> _onUpdateSpaceModel(UpdateSpaceModel event, Emitter<SpaceModelState> emit) async {
Future<void> _onUpdateSpaceModel(
UpdateSpaceModel event, Emitter<SpaceModelState> emit) async {
final currentState = state;
if (currentState is SpaceModelLoaded) {
try {
final projectUuid = await ProjectManager.getProjectUUID() ?? '';
final newSpaceModel = await api.getSpaceModel(event.spaceModelUuid, projectUuid);
final newSpaceModel =
await api.getSpaceModel(event.spaceModelUuid, projectUuid);
if (newSpaceModel != null) {
final updatedSpaceModels = currentState.spaceModels.map((model) {
return model.uuid == event.spaceModelUuid ? newSpaceModel : model;
@ -61,14 +66,16 @@ class SpaceModelBloc extends Bloc<SpaceModelEvent, SpaceModelState> {
}
}
Future<void> _onDeleteSpaceModel(DeleteSpaceModel event, Emitter<SpaceModelState> emit) async {
Future<void> _onDeleteSpaceModel(
DeleteSpaceModel event, Emitter<SpaceModelState> emit) async {
final currentState = state;
if (currentState is SpaceModelLoaded) {
try {
final projectUuid = await ProjectManager.getProjectUUID() ?? '';
final deletedSuccessfully = await api.deleteSpaceModel(event.spaceModelUuid, projectUuid);
final deletedSuccessfully =
await api.deleteSpaceModel(event.spaceModelUuid, projectUuid);
if (deletedSuccessfully) {
final updatedSpaceModels = currentState.spaceModels