1+ import copy
12from typing import List
23
34import superannotate .lib .core as constances
@@ -36,6 +37,8 @@ def __init__(
3637
3738 @staticmethod
3839 def serialize_entity (entity : Entity , project : ProjectEntity ):
40+ if project .upload_state != constances .UploadState .EXTERNAL .value :
41+ entity .url = None
3942 if project .project_type in (
4043 constances .ProjectType .VECTOR .value ,
4144 constances .ProjectType .PIXEL .value ,
@@ -92,12 +95,6 @@ def validate_query(self):
9295 if self ._project .sync_status != constances .ProjectState .SYNCED .value :
9396 raise AppException ("Data is not synced." )
9497
95- @staticmethod
96- def _drop_paths (items : List [Entity ]):
97- for item in items :
98- item .path = None
99- return items
100-
10198 def execute (self ) -> Response :
10299 if self .is_valid ():
103100 service_response = self ._backend_client .saqul_query (
@@ -107,14 +104,7 @@ def execute(self) -> Response:
107104 folder_id = None if self ._folder .name == "root" else self ._folder .uuid ,
108105 )
109106 if service_response .ok :
110- if self ._project .project_type == constances .ProjectType .VECTOR .value :
111- data = self ._drop_paths (
112- parse_obj_as (List [TmpBaseEntity ], service_response .data )
113- )
114- else :
115- data = self ._drop_paths (
116- parse_obj_as (List [TmpBaseEntity ], service_response .data )
117- )
107+ data = parse_obj_as (List [TmpBaseEntity ], service_response .data )
118108 for i , item in enumerate (data ):
119109 data [i ] = GetItem .serialize_entity (item , self ._project )
120110 self ._response .data = data
@@ -143,7 +133,7 @@ def __init__(
143133 self ._recursive = recursive
144134
145135 def validate_recursive_case (self ):
146- if self ._folder .name != "root" and self ._recursive :
136+ if not self ._folder .is_root and self ._recursive :
147137 self ._recursive = False
148138
149139 def execute (self ) -> Response :
@@ -169,7 +159,7 @@ def execute(self) -> Response:
169159 folders .append (self ._folder )
170160 for folder in folders :
171161 tmp = self ._items .get_all (
172- self ._search_condition & Condition ("folder_id" , folder .uuid , EQ )
162+ copy . deepcopy ( self ._search_condition ) & Condition ("folder_id" , folder .uuid , EQ )
173163 )
174164 items .extend (
175165 [
0 commit comments