From 6f3172bc33ba90cb785d2e85ce498ad7e04338f7 Mon Sep 17 00:00:00 2001 From: Gabriel Luiz Freitas Almeida Date: Fri, 27 Oct 2023 13:07:09 -0300 Subject: [PATCH] =?UTF-8?q?=F0=9F=94=A7=20refactor(store.py):=20remove=20d?= =?UTF-8?q?uplicate=20fields=20list=20and=20use=20default=5Ffields=20from?= =?UTF-8?q?=20StoreService=20class=20=F0=9F=94=A7=20refactor(service.py):?= =?UTF-8?q?=20move=20default=5Ffields=20list=20to=20StoreService=20class?= =?UTF-8?q?=20and=20use=20it=20in=20query=5Fcomponents=20method?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/backend/langflow/api/v1/store.py | 19 ++--------- .../langflow/services/store/service.py | 32 ++++++++----------- 2 files changed, 17 insertions(+), 34 deletions(-) diff --git a/src/backend/langflow/api/v1/store.py b/src/backend/langflow/api/v1/store.py index 9e8f99164..0c99f83f6 100644 --- a/src/backend/langflow/api/v1/store.py +++ b/src/backend/langflow/api/v1/store.py @@ -92,23 +92,10 @@ def list_components( store_api_Key: str = Depends(get_optional_user_store_api_key), ): try: - fields = [ - "id", - "name", - "description", - "user_created.first_name", - "is_component", - "tags.tags_id.name", - "tags.tags_id.id", - "count(liked_by)", - "count(downloads)", - "metadata", - ] result = store_service.query_components( - store_api_Key, - page, - limit, - fields=fields, + api_key=store_api_Key, + page=page, + limit=limit, filter_by_user=filter_by_user, ) diff --git a/src/backend/langflow/services/store/service.py b/src/backend/langflow/services/store/service.py index 3015a2729..eb4803584 100644 --- a/src/backend/langflow/services/store/service.py +++ b/src/backend/langflow/services/store/service.py @@ -30,6 +30,18 @@ class StoreService(Service): self.download_webhook_url = self.settings_service.settings.DOWNLOAD_WEBHOOK_URL self.like_webhook_url = self.settings_service.settings.LIKE_WEBHOOK_URL self.components_url = f"{self.base_url}/items/components" + self.default_fields = [ + "id", + "name", + "description", + "user_created.first_name", + "is_component", + "tags.tags_id.name", + "tags.tags_id.id", + "count(liked_by)", + "count(downloads)", + "metadata", + ] def _get( self, url: str, api_key: str, params: Dict[str, Any] = None @@ -149,24 +161,8 @@ class StoreService(Service): ) -> Union[List[ListComponentResponse], List[Dict[str, int]]]: params = {"page": page, "limit": limit} # ?aggregate[count]=likes - params["fields"] = ( - ",".join(fields) - if fields - else ",".join( - [ - "id", - "name", - "description", - "user_created.first_name", - "is_component", - "tags.tags_id.name", - "tags.tags_id.id", - "count(liked_by)", - "count(downloads)", - "metadata", - ] - ) - ) + params["fields"] = ",".join(fields) if fields else ",".join(self.default_fields) + # Only public components or the ones created by the user # check for "public" or "Public"