diff --git a/lib/pages/spaces_management/all_spaces/bloc/space_management_bloc.dart b/lib/pages/spaces_management/all_spaces/bloc/space_management_bloc.dart index 47fa5508..40566d7f 100644 --- a/lib/pages/spaces_management/all_spaces/bloc/space_management_bloc.dart +++ b/lib/pages/spaces_management/all_spaces/bloc/space_management_bloc.dart @@ -52,14 +52,24 @@ class SpaceManagementBloc extends Bloc _updateSpaceModelCache( UpdateSpaceModelCache event, Emitter emit) async { - if (_cachedSpaceModels != null) { - _cachedSpaceModels = _cachedSpaceModels!.map((model) { - return model.uuid == event.updatedModel.uuid ? event.updatedModel : model; - }).toList(); - } else { - _cachedSpaceModels = await fetchSpaceModels(); + final projectUuid = await ProjectManager.getProjectUUID() ?? ''; + + List allSpaceModels = []; + + bool hasNext = true; + int page = 1; + + while (hasNext) { + final spaceModels = await _spaceModelApi.listSpaceModels(page: page, projectId: projectUuid); + if (spaceModels.isNotEmpty) { + allSpaceModels.addAll(spaceModels); + page++; + } else { + hasNext = false; + } } + _cachedSpaceModels = allSpaceModels; await fetchTags(); emit(SpaceModelLoaded(